- 22 Jun, 2016 1 commit
-
-
niteria authored
The warning for reference: ``` rts/RaiseAsync.c: In function ‘throwToMsg’: rts/SMPClosureOps.h:65:0: error: error: inlining failed in call to ‘lockClosure’: call is unlikely and code size would grow rts/RaiseAsync.c:305:0: error: error: called from here rts/SMPClosureOps.h:65:0: error: error: inlining failed in call to ‘lockClosure’: call is unlikely and code size would grow ``` This warning triggers on `gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-16)` and it doesn't trigger with new GCCs. Test Plan: build ghc/rts Reviewers: bgamari, simonmar, austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2353
-
- 24 May, 2016 1 commit
-
-
thomie authored
-
- 22 Apr, 2016 1 commit
-
-
Simon Peyton Jones authored
Provoked by Trac #11948, this patch adds a new warning to GHC -Wsimplifiable-class-constraints It warns if you write a class constraint in a type signature that can be simplified by an existing instance declaration. Almost always this means you should simplify it right now; type inference is very fragile without it, as #11948 shows. I've put the warning as on-by-default, but I suppose that if there are howls of protest we can move it out (as happened for -Wredundant-constraints. It actually found an example of an over-complicated context in CmmNode. Quite a few tests use these weird contexts to trigger something else, so I had to suppress the warning in those. The 'haskeline' library has a few occurrences of the warning (which I think should be fixed), so I switched it off for that library in warnings.mk. The warning itself is done in TcValidity.check_class_pred. HOWEVER, when type inference fails we get a type error; and the error suppresses the (informative) warning. So as things stand, the warning only happens when it doesn't cause a problem. Not sure what to do about this, but this patch takes us forward, I think.
-
- 17 Apr, 2016 1 commit
-
-
Herbert Valerio Riedel authored
-
- 26 Feb, 2016 1 commit
-
-
Herbert Valerio Riedel authored
Most notably, this update pulls in documentation improvements and several INLINE pragmas for significant performance gains[1]. [1]: https://groups.google.com/d/msg/haskell-cafe/SUKtkDI84EE/fXMBd-jNDQAJ
-
- 27 Jan, 2016 1 commit
-
-
Tamar Christina authored
Makes the needed changes to make RemoteGHCi work on Windows. The approach passes OS Handles areound instead of the Posix Fd as on Linux. The reason is that I could not find any real documentation about the behaviour of Windows w.r.t inheritance and Posix FDs. The implementation with Fd did not seem to be able to find the Fd in the child process. Instead I'm using the much better documented approach of passing inheriting handles. This requires a small modification to the `process` library. https://github.com/haskell/process/pull/52 Test Plan: ./validate On Windows x86_64 Reviewers: thomie, erikd, bgamari, simonmar, austin, hvr Reviewed By: simonmar Subscribers: #ghc_windows_task_force Differential Revision: https://phabricator.haskell.org/D1836 GHC Trac Issues: #11100
-
- 07 Jan, 2016 1 commit
-
-
Gabor Greif authored
-
- 20 Dec, 2015 2 commits
-
-
Herbert Valerio Riedel authored
Also, `binary` now is almost warning free (except for inlinePerformIO deprecation warnings) /cc @kolmodin
-
Herbert Valerio Riedel authored
This is the designated release to go with GHC 8.0.1 /cc @AshleyYakeley
-
- 18 Dec, 2015 1 commit
-
-
Herbert Valerio Riedel authored
So far only `time` (fixed upstream already though) and `xhtml` still require `-Wno-tabs`, so let's apply that warning suppression flag only there. This also updates the haskeline submodule to pull in a tab-fix
-
- 17 Dec, 2015 3 commits
-
-
Herbert Valerio Riedel authored
This is the designated release to go with GHC 8.0.1 This release doesn't need any warning-suppression flags anymore, so remove those from mk/warnings.mk /cc @foxik
-
thomie authored
And fix a redundant constraint warning in a test that requires primitive.
-
Herbert Valerio Riedel authored
Cabal is currently warning free. So let's drop the `-w`-flags. /cc @dcoutts
-
- 16 Dec, 2015 1 commit
-
-
Herbert Valerio Riedel authored
This replaces some occurences of `-f(no-)warn` with the new `-W`-aliases introduced via 2206fa8c / #11218, in cases which are guaranteed to be invoked with recent enough GHC (i.e. the stage1+ GHC). After this commit, mostly the compiler and the testsuite remain using `-f(wo-)warn...` because the compiler needs to be bootstrappable with older GHCs, while for the testsuite it's convenient to be able to quickly compare the behavior to older GHCs (which may not support the new flags yet). The compiler-part can be updated to use the new flags once GHC 8.3 development starts. Reviewed By: quchen Differential Revision: https://phabricator.haskell.org/D1637
-
- 05 Dec, 2015 1 commit
-
-
Herbert Valerio Riedel authored
This makes use of the new facility introduced via 14d0f7f1 which allows to have certain flags passed only to the non-bootstrapping GHC. This is needed because sometimes we can't assume the existence of a certain flag in the bootstrapping compiler which was only added recently to GHC HEAD. This also updates the haddock submodule to fix a few remaining noncanonical instance definitions. Differential Revision: https://phabricator.haskell.org/D1571
-
- 01 Dec, 2015 1 commit
-
-
thomie authored
* Add stage specific versions of SRC_HC_OPTS. These are currently only used for -Werror. The previous combination of GhcStage2HcOpts and GhcLibHcOpts didn't apply to utils/*. * Add stage specific versions of SRC_HC_WARNING_OPTS. These will later be used for new warning supression flags that should not be passed to the bootstrap compiler. * Move -Wall (and -Werror) related code back to mk/warnings.mk, where it was before 987d5427. Now all warning related code is nicely together. Include mk/warnings.mk after mk/custom-settings.mk to make this work. Reviewed By: bgamari, hvr Differential Revision: https://phabricator.haskell.org/D1536
-
- 03 Nov, 2015 1 commit
-
-
thomie authored
Problem: 'SRC_HC_OPTS += -Wall' in 'mk/warnings.mk' was getting overwritten by 'SRC_HC_OPTS = ...' in 'mk/flavours/*.mk'. It didn't affect the compiler or most other libraries, because most .cabal files define 'ghc-options: -Wall'. Bug introduced in commit 2c24fd70, when moving validate settings from 'mk/validate-settings.mk' to 'mk/flavours/validate.mk'. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D1425
-
- 03 Aug, 2015 1 commit
-
-
Simon Marlow authored
Test Plan: using remote validate Reviewers: austin, hvr, simonpj, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D1117
-
- 30 Jul, 2015 1 commit
-
-
Simon Peyton Jones authored
This patch suppresses them until they are fixed libraries/parallel/Control/Parallel/Strategies.hs:513:2: warning: Rule "parList/rseq" may never fire because ‘rseq’ might inline first Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘rseq’ libraries/parallel/Control/Parallel/Strategies.hs:582:1: warning: Rule "evalBuffer/rseq" may never fire because ‘rseq’ might inline first Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘rseq’ libraries/parallel/Control/Parallel/Strategies.hs:583:1: warning: Rule "parBuffer/rseq" may never fire because ‘rseq’ might inline first Probable fix: add an INLINE[n] or NOINLINE[n] pragma for ‘rseq’
-
- 28 Jul, 2015 1 commit
-
-
Simon Peyton Jones authored
GHC now warns if rules compete, so that it's not predicatable which will work and which will not. E.g. {-# RULES f (g x) = ... g True = ... #-} If we had (f (g True)) it's not clear which rule would fire. This showed up fraility in the libraries. * Suppress warnigns in Control.Arrow, Control.Category for class methods. At the moment we simply don't have a good way to write a RULE with a class method in the LHS. See Trac #1595. Arrow and Category attempt to do so; I have silenced the complaints with -fno-warn-inline-rule-shadowing, but it's not a great solution. * Adjust the NOINLINE pragma on 'GHC.Base.map' to account for the map/coerce rule * Adjust the rewrite rules in Enum, especially for the "literal 1" case. See Note [Enum Integer rules for literal 1]. * Suppress warnings for 'bytestring' e.g. libraries/bytestring/Data/ByteString.hs:895:1: warning: Rule "ByteString specialise break (x==)" may never fire because rule "Class op ==" for ‘==’ might fire first Probable fix: add phase [n] or [~n] to the competing rule
-
- 12 May, 2015 1 commit
-
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate on 7.6 Reviewers: austin, goldfire Subscribers: bgamari, thomie Differential Revision: https://phabricator.haskell.org/D885
-
- 11 May, 2015 1 commit
-
-
Edward Z. Yang authored
Summary: This commit adds stage 1 support for Template Haskell quoting, e.g. [| ... expr ... |], which is useful for authors of quasiquoter libraries that do not actually need splices. The TemplateHaskell extension now does not unconditionally fail; it only fails if the renamer encounters a splice that it can't run. In order to make sure the referenced data structures are consistent, template-haskell is now a boot library. There are some minor BC changes to template-haskell to make it boot on GHC 7.8. Note for reviewer: big diff changes are simply code being moved out of an ifdef; there was no other substantive change to that code. Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate Reviewers: simonpj, austin, goldfire Subscribers: bgamari, thomie Differential Revision: https://phabricator.haskell.org/D876 GHC Trac Issues: #10382
-
- 09 May, 2015 2 commits
-
-
Edward Z. Yang authored
Revert "Quick fix: drop base bound on template-haskell." This reverts commit 3c70ae03. Revert "Always do polymorphic typed quote check, c.f. #10384" This reverts commit 9a43b2c1. Revert "RnSplice's staging test should be applied for quotes in stage1." This reverts commit eb0ed403. Revert "Split off quotes/ from th/ for tests that can be done on stage1 compiler." This reverts commit 21c72e7d. Revert "Support stage 1 Template Haskell (non-quasi) quotes, fixes #10382." This reverts commit 28257cae.
-
Edward Z. Yang authored
Summary: This commit adds stage 1 support for Template Haskell quoting, e.g. [| ... expr ... |], which is useful for authors of quasiquoter libraries that do not actually need splices. The TemplateHaskell extension now does not unconditionally fail; it only fails if the renamer encounters a splice that it can't run. In order to make sure the referenced data structures are consistent, template-haskell is now a boot library. In the following patches, there are: - A few extra safety checks which should be enabled in stage1 - Separation of the th/ testsuite into quotes/ which can be run on stage1 Note for reviewer: big diff changes are simply code being moved out of an ifdef; there was no other substantive change to that code. Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate Reviewers: simonpj, austin, goldfire Subscribers: bgamari, thomie Differential Revision: https://phabricator.haskell.org/D876 GHC Trac Issues: #10382
-
- 02 Apr, 2015 1 commit
-
-
thomie authored
The default validate settings currently disable some warnings in the libraries. This patch moves those settings to a new file called `mk/warnings.mk`, and applies them also to normal builds. Through uncommenting a line in build.mk, developers can now build with -Werror. -Werror is not the default, because: * We can not guarantee that the build is warning free on platforms we don't run regularly run validate (as part of continuous integration systems), and we still want the build to go through on those platforms. * quoting rwbarton on irc > "I think -Werror by default has come up in the past and the argument was that it is too annoying when you are doing nontrivial development" Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D785
-
- 06 Jan, 2015 1 commit
-
-
Simon Peyton Jones authored
This patch affects libraries, and requires a submodule update. Some other libraries, maintained by others, have redundant constraints, namely: containers haskeline transformers binary I have suppressed the redundant-constraint warnings by settings in validate-settings.mk (in this commit)
-
- 28 Dec, 2014 1 commit
-
-
Herbert Valerio Riedel authored
This drops a couple of `-fno-warn-*` which seem to have become obsolete by now. Moreover, with the cleaned up settings `./validate` passes with GHC 7.10.1 as bootstrap compiler.
-
- 27 Dec, 2014 1 commit
-
-
Herbert Valerio Riedel authored
-
- 09 Dec, 2014 1 commit
-
-
David Terei authored
-
- 24 Nov, 2014 1 commit
-
-
David Terei authored
This redoes part of 475dd93e which was reversed in 452d6aa9 after breaking validate on windows.
-
- 17 Nov, 2014 1 commit
-
-
David Terei authored
updated to handle `-fwarn-trustworthy-safe`.
-
- 15 Nov, 2014 1 commit
-
-
Herbert Valerio Riedel authored
This pulls in the new `Generic`-based `-XDefaultSignature`-based default implementation for `rnf`[1], and will be interesting to use in combination with the soon to be merged `-XDeriveAnyClass` extension. This requires updating several other submodules as well in order to relax the upper bound on `deepseq` and/or in a few cases to avoid relying on the default method implementation of `rnf`: - `Cabal` - `bytestring` - `containers` - `parallel` - `process` - `time` [1]: http://permalink.gmane.org/gmane.comp.lang.haskell.libraries/23031
-
- 13 Nov, 2014 1 commit
-
-
David Terei authored
Update submodule haskell2010, haskell98, hoop, hpc and stm to fix new warnings.
-
- 30 Oct, 2014 1 commit
-
-
gintas authored
Summary: The option is not needed (it was only intended to override Debian's default) and causes an error if the host ghc's mingw is too old (which the script does not detect). Fixes T9727 Reviewers: austin Reviewed By: austin Subscribers: thomie, carter, simonmar Differential Revision: https://phabricator.haskell.org/D373 GHC Trac Issues: #9727
-
- 21 Oct, 2014 1 commit
-
-
mlen authored
Summary: This revision enables -fwarn-tabs by default and add a suppression flag, so that GHC compilation won't fail when some files contain tab characters. Test Plan: Additional test case, T9230, was added to cover that change. Reviewers: austin Reviewed By: austin Subscribers: simonmar, ezyang, carter, thomie, mlen Differential Revision: https://phabricator.haskell.org/D255 GHC Trac Issues: #9230 Conflicts: testsuite/driver/testlib.py
-
- 21 Sep, 2014 1 commit
-
-
Herbert Valerio Riedel authored
This finally exposes also the methods of these 3 classes in the Prelude in order to allow to define basic class instances w/o needing imports. This almost completes the primary goal of #9586 NOTE: `fold`, `foldl'`, `foldr'`, and `toList` are not exposed yet, as they require upstream fixes for at least `containers` and `bytestring`, and are not required for defining basic instances. Reviewed By: ekmett, austin Differential Revision: https://phabricator.haskell.org/D236
-
- 09 Sep, 2014 1 commit
-
-
Austin Seipp authored
Summary: This includes pretty much all the changes needed to make `Applicative` a superclass of `Monad` finally. There's mostly reshuffling in the interests of avoid orphans and boot files, but luckily we can resolve all of them, pretty much. The only catch was that Alternative/MonadPlus also had to go into Prelude to avoid this. As a result, we must update the hsc2hs and haddock submodules. Signed-off-by:
Austin Seipp <austin@well-typed.com> Test Plan: Build things, they might not explode horribly. Reviewers: hvr, simonmar Subscribers: simonmar Differential Revision: https://phabricator.haskell.org/D13
-
- 31 Aug, 2014 1 commit
-
-
Herbert Valerio Riedel authored
The original proposal text can be found at http://www.haskell.org/pipermail/libraries/2014-August/023491.html The proposal passed with a clear majority, and was additionally confirmed by the core libraries committee. *Compatibility Note* Only code that imports `Data.Word` for the sole purpose of using `Word` *and* requires to be `-Werror`-clean (due to `-fwarn-unused-imports`) is affected by this change. In order to write warning-free forward/backward compatible against `base`, a variant of the following CPP-based snippet can be used: -- Starting with base>4.7.0 or GHC>7.8 Prelude re-exports 'Word' -- The following is needed, if 'Word' is the *only* entity needed from Data.Word #ifdef MIN_VERSION_base # if !MIN_VERSION_base(4,7,1) import Data.Word (Word) # endif -- no cabal_macros.h -- fallback to __GLASGOW_HASKELL__ #elif __GLASGOW_HASKELL__ < 709 import Data.Word (Word) #endif This also updates the haddock submodule in order to avoid a compile warning
-
- 29 Aug, 2014 1 commit
-
-
Edward Z. Yang authored
This was missed when we added binary to the list of boot packages. But note: the warnings binary are *legitimate* and really should be fixed! Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
- 20 Apr, 2014 1 commit
-
-
Austin Seipp authored
GHC should now fully compliant with respect to the Applicative Monad proposal (including all upstream libraries), and does not need to suppress this warning anymore. Signed-off-by:
Austin Seipp <austin@well-typed.com>
-