| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both gcc and clang tell which warning flag a reported warning can be
controlled with, this patch makes ghc do the same. More generally, this
allows for annotated compiler output, where an optional annotation is
displayed in brackets after the severity.
Display which group enables a warning.
Add flag to show which group a warning belongs to
``-f(no-)show-warning-groups``, used to show/hide the group an emitted
warning belongs to. On by default.
Fix compilation error in ghc-api test
Reviewers: goldfire, hvr, quchen, austin, bgamari
Reviewed By: quchen, bgamari
Subscribers: goldfire, thomie
Differential Revision: https://phabricator.haskell.org/D1943
GHC Trac Issues: #10752
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The suggestion only makes sense when we try
to use an as pattern in an expression context.
It is misleading in the case of a lazy pattern and
view pattern.
Reviewers: austin, bgamari
Reviewed By: bgamari
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1948
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes #10398 in a different way, thereby also fixing #11579.
I inverted the logic of the Bool argument to "worker", to hopefully make
it more self-explanatory.
Reviewers: austin, hvr, bgamari
Reviewed By: bgamari
Differential Revision: https://phabricator.haskell.org/D1935
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Issue a separate warning per redundant (or inaccessible) clause.
This way each warning can have more precice location information
(the location of the clause under consideration and not the whole
match).
I thought that this could be too much but actually the number of
such warnings is bound by the number of cases matched against (in
contrast to the non-exhaustive warnings which may be exponentially
more).
Test Plan: validate
Reviewers: simonpj, austin, bgamari
Reviewed By: bgamari
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1920
GHC Trac Issues: #8710
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This comparison is only necessary when the types being compared contain
casts. Otherwise the structural equality of the types implies that their
kinds are equal.
Test Plan: Validate
Reviewers: goldfire, austin, simonpj
Reviewed By: simonpj
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1944
GHC Trac Issues: #11597
|
|
|
|
| |
I believe this is probably due to the recent RuntimeRep change.
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: austin, rdragon, bgamari
Reviewed By: bgamari
Subscribers: rdragon, thomie
Differential Revision: https://phabricator.haskell.org/D1949
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Replace "Sigs" with "Signatures" in WarningFlag data constructors.
- Replace "PatSyn" with "PatternSynonym" in WarningFlag data
constructors.
- Deprecate "missing-local-sigs" in favor of "missing-local-signatures".
- Deprecate "missing-exported-sigs" in favor of
"missing-exported-signatures".
- Deprecate "missing-pat-syn-signatures" in favor of
"missing-pattern-synonym-signatures".
- Replace "ddump-strsigs" with "ddump-str-signatures"
These complete the tasks that were explicitly mentioned in #11583
Test Plan:
Executed `ghc --show-options` and verified that the flags were changed
as expected.
Reviewers: svenpanne, austin, bgamari
Reviewed By: austin, bgamari
Subscribers: mpickering, thomie
Differential Revision: https://phabricator.haskell.org/D1939
GHC Trac Issues: #11583
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GHC.Generics provides several representation data types that have
obvious instances of various type classes in base, along with various
other types of meta-data (such as associativity and fixity).
Specifically, instances have been added for the following type classes
(where possible):
- Applicative
- Data
- Functor
- Monad
- MonadFix
- MonadPlus
- MonadZip
- Foldable
- Traversable
- Enum
- Bounded
- Ix
- Generic1
Thanks to ocharles for starting this!
Test Plan: Validate
Reviewers: ekmett, austin, hvr, bgamari
Reviewed By: bgamari
Subscribers: RyanGlScott, thomie
Differential Revision: https://phabricator.haskell.org/D1937
GHC Trac Issues: #9043
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: bgamari, austin
Reviewed By: austin
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1936
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ApplicativeDo handled terminal `return` statements properly, but not
`pure`.
Test Plan: Validate with included testcase
Reviewers: austin, simonmar
Reviewed By: austin, simonmar
Subscribers: simonpj, thomie
Differential Revision: https://phabricator.haskell.org/D1931
GHC Trac Issues: #11607
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use `-- |` comments throughout.
Note that numByteUsageSamples is also the number of major GCs
Note that numGcs counts GCs for all generations
Note that 'current' really means 'at the end of the last major GC'
Reviewers: ezyang, hvr, simonmar, austin, bgamari
Reviewed By: ezyang, simonmar, bgamari
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1929
GHC Trac Issues: #11603
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following tests fail on powerpc64 and have a ticket.
Mark those tests as expect_broken.
Here are the details:
The PowerPC native code generator does not support DWARF debug
information. This is tracked in ticket #11261. Mark the respective
tests broken on powerpc64.
testsuite: mark print022 broken on powerpc64
Ticket #11262 tracks difference in stdout for print022.
testsuite: mark recomp015 broken on powerpc64
testsuite: mark recomp011 broken on powerpc64
This is tracked as ticket #11323 and #11260.
testsuite: mark linker tests broken on powerpc64
Ticket #11259 tracks tests failing because there is no RTS
linker on powerpc64.
Test Plan: validate
Reviewers: erikd, austin, bgamari
Reviewed By: bgamari
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1928
GHC Trac Issues: #11259, #11260, #11261, #11262, #11323
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Static pointers are rarely used naked: most often they are defined at
the base of a Closure, as defined in e.g. the distributed-closure and
distributed-static packages. So a typical usage pattern is:
distributeMap (closure (static (\x -> x * 2)))
which is more verbose than it needs to be. Ideally we'd just have to
write
distributeMap (static (\x -> x * 2))
and let the static pointer be lifted to a Closure implicitly. i.e.
what we want is to overload static literals, just like we already
overload list literals and string literals.
This is achieved by introducing the IsStatic type class and changing
the typing rule for static forms slightly:
static (e :: t) :: IsStatic p => p t
Test Plan: ./validate
Reviewers: austin, hvr, bgamari
Reviewed By: bgamari
Subscribers: simonpj, mboes, thomie
Differential Revision: https://phabricator.haskell.org/D1923
GHC Trac Issues: #11585
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: austin, bgamari, simonpj
Reviewed By: simonpj
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D1933
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
See Note [TYPE] in TysPrim. There are still some outstanding
pieces in #11471 though, so this doesn't actually nail the bug.
This commit also contains a few performance improvements:
* Short-cut equality checking of nullary type syns
* Compare types before kinds in eqType
* INLINE coreViewOneStarKind
* Store tycon binders separately from kinds.
This resulted in a ~10% performance improvement in compiling
the Cabal package. No change in functionality other than
performance. (This affects the interface file format, though.)
This commit updates the haddock submodule.
|
|
|
|
| |
...forgot to stage/add this alpha renaming to the previous commit
|
|
|
|
|
|
|
|
|
|
|
| |
The original implementation for #11429 covers only `-W*` flags. However,
old packages will continue to use `-f(no-)warn-*` flags, so it seems
desirable to have `-Wunrecognised-warning-flag` apply to those legacy aliases
as well.
Reviewed By: bgamari
Differential Revision: https://phabricator.haskell.org/D1942
|
|
|
|
|
|
| |
Call `+$(PYTHON) ...` to fix #11569 instead.
See Note [Communicating options and variables to a submake].
|
|
|
|
|
|
| |
Reviewed by: austin, rwbarton
Differential Revision: https://phabricator.haskell.org/D1938
|
|
|
|
| |
These tests fail not only for WAY=prof, but also for WAY=profllvm.
|
| |
|
|
|
|
|
| |
Refactoring only. I compared before and after with 'make slow', and it
still runs each test with the same 'ways' as before.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This fixes #9917.
|
| |
|
|
|
|
| |
This allows building ghc in '/ghc'.
|
|
|
|
| |
This seems necessary after 9634e24 (#11569).
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ticket #11535 dealt with derived Read instances of infix Unicode
value constructors. GHC 7.10.3 used to derive (Read/Show)
instances so that `read . show` for values of such types had no
parse.
The issue has been fixed by other compiler update. This patch
adds only tests, so that derived instance of Read/Show for infix
Unicode value constructors has correct parse, satisfying Haskell
2010 Specification.
Resolves: #11535
Test Plan: `make test TEST=T11535`
Reviewers: austin, rwbarton, thomie, bgamari
Reviewed By: rwbarton, thomie, bgamari
Subscribers: rwbarton, thomie
Projects: #ghc
Differential Revision: https://phabricator.haskell.org/D1884
GHC Trac Issues: #11535
|
|
|
|
|
|
|
|
| |
The previous test failed for me because I had
GhcRTSWays += thr_debug_p
in my validate.mk, which doesn't enable profiling by itself.
|
|
|
|
|
|
|
| |
Originally I planned to make this reference manually managed, but it
looks like at some point I gave it a finalizer on the GHC side, but
forgot to remove the manual free here. The result is that ghc-iserv
could crash in getStablePtr sometimes when using TH.
|
|
|
|
|
| |
In some cases ApplicativeDo would miss some opportunities, due to a
wrong calculation of free variables in RnExpr.segments.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
should_compile_flag_nohaddock and should_compile_noflag_nohaddock
contain the exact same tests. By passing `-haddock` to the tests in
should_compile_**flag**_nohaddock, at least they're now testing
different things.
Add documentation.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactoring only. Cleanup some loose ends from #10196.
Initially the idea was to only allow modifier letters at the end of
identifiers. Since we later decided to allow modifier letters also in
the middle of identifiers (because not doing so would not fix the
regression completely), the names `suffix` and `okIdSuffixChar` don't
seem appropriate anymore.
Remove TODO. Move test from should_fail to should_compile.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A long time ago, you could use `"-- # <haddock options>"` to mean that
`<haddock options.` should be passed to `haddock`. Since 2007
(03d8585e0940e28e024548654fe3505685aca94f), using `OPTIONS_HADDOCK` is
the preferred way to do this.
Why is ok to remove support for "-- # .."?
* It is not mentioned in the Haddock user's guide, nor are there any
tests that use it.
* Ever since 2011 (b3e30449aa6d6eaa978eb3c7447ca85985d9d251), it doesn't
actually work anymore. The function `getOptionsFromFile` uses
`gopt_unset dflags Opt_Haddock` for other reasons, so even when
running ghc with `--haddock`, the following rule always fires when the
lexer sees "-- # ..", and it gets treated as a normal comment:
```
-- Next, match Haddock comments if no -haddock flag
"-- " [$docsym \#] .* / { ifExtension (not . haddockEnabled) } { lineCommentToken }
```
Reviewed by: bgamari
Differential Revision: https://phabricator.haskell.org/D1932
|
| |
|