| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
Python 3 does not like it
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This replaces the entities in Data.List conflicting with Data.Foldable
with re-exports of the generalised version from Data.Foldable.
As of this commit, the following compiles w/o error
module XPrelude (module X) where
import Control.Monad as X
import Data.Foldable as X
import Data.List as X
import Prelude as X
Reviewed By: austin, dfeuer, ekmett
Differential Revision: https://phabricator.haskell.org/D229
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This renames the Data.List module to Data.OldList, and puts a new
Data.List module into its place re-exporting all list functions.
The plan is to leave the monomorphic versions of the list functions in
Data.OldList to help smooth the transition.
The new Data.List module then will simply re-export entities from
Data.OldList and Data.Foldable.
This refactoring has been placed in a separate commit to be able to
better isolate any regressions caused by the actual list function
generalisations when implementing #9586
This also updates the haskell2010, haskell98, and array submodules
Reviewed By: austin, ekmett
Differential Revision: https://phabricator.haskell.org/D228
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this change, the linker status logging output such as
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
is suppressed unless verbosity level is `-v2` or higher. This is done
to reduce the compiler message noise when TH is involved, which can
reduce the visibiliy of compile warnings.
Reviewed By: ekmett, austin
Differential Revision: https://phabricator.haskell.org/D232
|
|
|
|
|
|
|
|
|
| |
T4801 is deactived for now because it's currently too volatile
and causes too much noise in Phabricator's CI
Reviewed By: austin
Differential Revision: https://phabricator.haskell.org/D230
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch fixes Trac #9580, in which the Coercible machinery succeeded
even though the relevant data constructor was not in scope.
As usual I got dragged into a raft of refactoring changes,
all for the better.
* Delete TcEvidence.coercionToTcCoercion (now unused)
* Move instNewTyConTF_maybe, instNewTyCon_maybe to FamInst,
and rename them to tcInstNewTyConTF_maybe, tcInstNewTyCon
(They both return TcCoercions.)
* tcInstNewTyConTF_maybe also gets more convenient type,
which improves TcInteract.getCoercibleInst
* Define FamInst.tcLookupDataFamInst, and use it in TcDeriv,
(as well as in tcInstNewTyConTF_maybe)
* Improve error report for Coercible errors, when data familes
are involved Another use of tcLookupDataFamInst
* In TcExpr.tcTagToEnum, use tcLookupDataFamInst to replace
local hacky code
* Fix Coercion.instNewTyCon_maybe and Type.newTyConInstRhs to deal
with eta-reduced newtypes, using
(new) Type.unwrapNewTyConEtad_maybe and (new) Type.applyTysX
Some small refactoring of TcSMonad.matchFam.
|
|
|
|
| |
This addresses Trac #5395
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In `base`, the instances
instance Show ()
instance Show Bool
instance Show Ordering
instance Show a => Show (Maybe a)
where defined manually, even though we can leverage GHC's auto-deriver
which is perfectly capable by standalone derivation to avoid boiler-plate
code such as this.
Reviewed By: austin
Differential Revision: https://phabricator.haskell.org/D219
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This warning (enabled by default) reports places where a context
implicitly binds a type variable, for example
type T a = {-forall m.-} Monad m => a -> m a
Also update Haddock submodule.
Test Plan: validate
Reviewers: hvr, goldfire, simonpj, austin
Reviewed By: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D211
GHC Trac Issues: #4426
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This finally takes the gloves off, and performs the first actual
generalization in order to implement #9586. This re-exports the
respective definitions for the 4 combinators defined in Data.Foldable.
This way, importing Data.Foldable and Control.Monad unqualified won't bring
conflicting definitions of those 4 entities into scope anymore.
This change seems to have some minor effect on rule-firing, which
causes some wibble in the test-case T4007
Reviewed By: ekmett, austin
Differential Revision: https://phabricator.haskell.org/D226
|
|
|
|
|
|
|
|
|
|
|
| |
This is necessary in order to invert the import-dependency between
Data.Foldable and Control.Monad (for addressing #9586)
This also updates the `binary` submodule to qualify a GHC.Base import
Reviewed By: austin
Differential Revision: https://phabricator.haskell.org/D223
|
|
|
|
|
|
|
| |
This is preparatory work for reintroducing SPECIALISEs that were lost
in d94de87252d0fe2ae97341d186b03a2fbe136b04
Differential Revision: https://phabricator.haskell.org/D214
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The dynamic linking code was already there but it was not called
on flag changes in ghci.
Test Plan: validate
Reviewers: hvr, simonmar, austin
Reviewed By: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D194
GHC Trac Issues: #1407
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
exprIsConApp_maybe now detects string literals and correctly
splits them. This means case-statemnts on string literals can
now push the literal into the cases.
fix trac issue #9400
Test Plan: validate
Reviewers: austin, simonpj
Reviewed By: austin, simonpj
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D199
GHC Trac Issues: #9400
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Cppcheck found a few defects in win32 IOManager and a typo in rts
testsuite. This commit fixes them.
Cppcheck 1.54 founds three possible null pointer dereferences of ioMan
pointer. It is dereferenced and checked for NULL after that.
testheapalloced.c contains typo in printf statement, which should print
percent sign but treated as parameter placement by compiler. To properly
print percent sign one need to use "%%" string.
FYI: Cppcheck 1.66 cannot find possible null pointer dereferences in
mentioned places, mistakenly thinking that some memory leaking instead.
I probably fill a regression bug to Cppcheck.
Test Plan:
Build project, run 'make fulltest'. It finished with 28 unexpected
failures. I don't know if they are related to my fix.
Unexpected results from:
TEST="T3500b T7891 tc124 T7653 T5321FD T5030 T4801 T6048 T5631 T5837 T5642 T9020 T3064 parsing001 T1969 T5321Fun T783 T3294"
OVERALL SUMMARY for test run started at Tue Sep 9 16:46:27 2014 NOVT
4:23:24 spent to go through
4101 total tests, which gave rise to
16075 test cases, of which
3430 were skipped
315 had missing libraries
12154 expected passes
145 expected failures
3 caused framework failures
0 unexpected passes
28 unexpected failures
Unexpected failures:
../../libraries/base/tests T7653 [bad exit code] (ghci,threaded1,threaded2)
perf/compiler T1969 [stat not good enough] (normal)
perf/compiler T3064 [stat not good enough] (normal)
perf/compiler T3294 [stat not good enough] (normal)
perf/compiler T4801 [stat not good enough] (normal)
perf/compiler T5030 [stat not good enough] (normal)
perf/compiler T5321FD [stat not good enough] (normal)
perf/compiler T5321Fun [stat not good enough] (normal)
perf/compiler T5631 [stat not good enough] (normal)
perf/compiler T5642 [stat not good enough] (normal)
perf/compiler T5837 [stat not good enough] (normal)
perf/compiler T6048 [stat not good enough] (optasm)
perf/compiler T783 [stat not good enough] (normal)
perf/compiler T9020 [stat not good enough] (optasm)
perf/compiler parsing001 [stat not good enough] (normal)
typecheck/should_compile T7891 [exit code non-0] (hpc,optasm,optllvm)
typecheck/should_compile tc124 [exit code non-0] (hpc,optasm,optllvm)
typecheck/should_run T3500b [exit code non-0] (hpc,optasm,threaded2,dyn,optllvm)
Reviewers: austin
Reviewed By: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D203
|
|
|
|
| |
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
|
|
|
|
|
|
|
| |
It was annoying to test GHCi directly, so I added a ghc-api unit test
of the function instead.
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This exposes *only* the type-classes w/o any of their methods.
This is the very first step for implementing BPP (see #9586), which
already requires breaking up several import-cycles leading back to `Prelude`.
Ideally, importing `Prelude` should be avoided in most `base` modules,
as `Prelude` does not define any entities, but rather re-exports
existing ones.
Test Plan: validate passes
Reviewers: ekmett, austin
Reviewed By: ekmett, austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D209
GHC Trac Issues: #9586
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now, Phab's buildbot complains about
Unexpected failures:
perf/compiler T1969 [stat too good] (normal)
perf/compiler T4801 [stat not good enough] (normal)
However, on my workstation, those tests don't fail (c.f. P14).
So this commit tries to blindly tweak those numbers and see if
if Phabricator succeeds to build this code-revision...
Test Plan: Let Harbormaster build it
Reviewers: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D210
|
| |
|
| |
|
| |
|
|
|
|
| |
(I obviously copy’n’pasted the wrong number.)
|
|
|
|
|
|
|
| |
including some that are not failing yet, but did show a significant
change, and some that Austing changed post-AMP, but where both
harbormaster and ghcspeed reported something else. Numbers taken from
the ghcspeed machine.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit updates several submodules in order to bump
the upper bounds on `base` of most boot packages
Moreover, this updates some of the test-suite cases which have
version numbers hardcoded within.
However, I'm not sure if this commit didn't introduce the following
two test-failures
ghc-api T8628 [bad stdout] (normal)
ghc-api T8639_api [bad stdout] (normal)
This needs investigation
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
no individual cause indentified, but small improvements happened in
1719c42, 9d6fbcc, 949ad67 (or it is noise...)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This is a first step toward allowing generic traversals of the AST without 'landmines', by removing the `panic`s located throughout `placeHolderType`, `placeHolderKind` & co.
See more on the discussion at https://www.mail-archive.com/ghc-devs@haskell.org/msg05564.html
(This also makes a corresponding update to the `haddock` submodule.)
Test Plan: `sh validate` and new tests pass.
Reviewers: austin, simonpj, goldfire
Reviewed By: austin, simonpj, goldfire
Subscribers: edsko, Fuuzetsu, thomasw, holzensp, goldfire, simonmar, relrod, ezyang, carter
Projects: #ghc
Differential Revision: https://phabricator.haskell.org/D157
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: as they are unreliable and hard to re-run.
Test Plan: Run the testsuite
Reviewers: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D200
GHC Trac Issues: #9556
|
|
|
|
|
|
| |
This reverts commit 498d7dd2dc731a92eda2210e4ab0a04366511627. Again
sorry for the noise. This is the last reverstion. I will fix this for
good at around 12:13 CEST tomorrow :-)
|
| |
|
|
|
|
| |
Came up on GHC users list
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: as these are unreliable, and it is hard to re-run haddock with other RTS flags.
Test Plan: run validate
Reviewers: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D196
GHC Trac Issues: #9551
|
|
|
|
|
|
|
| |
This reverts commit 8c427ebe9c34b9bcecd41fb0584d24989c00ffe6.
Sorry for the noise, but I need to practice my HIW talk, which will
involve some live development...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
as these are not very reliable, and the advice to make them reliable
is hard to apply to them.
(This is just my practicing phab...)
Test Plan: validate
Reviewers: austin
Reviewed By: austin
Subscribers: carter, ezyang, simonmar
Differential Revision: https://phabricator.haskell.org/D188
GHC Trac Issues: #9535
|
|
|
|
|
| |
This reverts commit 9711f78f790d10d914e08851544c6fc96f9a030a, as it's
causing build phailures in phabricator.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
* Adjusts performance tests
* Change ghcpkg05.stderr-mingw32 to match ghcpkg05.stderr
Test Plan: Ran 'sh validate' and observed fewer test failures afterwards
Reviewers: austin
Reviewed By: austin
Differential Revision: https://phabricator.haskell.org/D191
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Just skipping over a BOM, but leaving it in the Stringbuffer, is not
sufficient. The Lexer calls prevChar when a regular expression starts
with '^' (which is a shorthand for '\n^'). It would never match on the
first line, since instead of '\n', prevChar would still return '\xfeff'.
Test Plan: validate
Reviewers: austin, ezyang
Reviewed By: austin, ezyang
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D176
GHC Trac Issues: #6016
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes testsuite failure.
Summary: Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Test Plan: validate --slow
Reviewers: simonpj, austin
Reviewed By: austin
Subscribers: simonmar, ezyang, carter
Differential Revision: https://phabricator.haskell.org/D184
|
|
|
|
| |
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a result of one of these, or a combination
002b7a2b * Give the worker for an INLINABLE function a suitably-phased Activation
ca666b8b * When finding loop breakers, distinguish INLINE from INLINEABLE
a98c9c5e * Fix a bug in CSE, for INLINE/INLNEABLE things
Some changes are quite big: for bytes_allocated we have
T6048: 13% below expected
T5837: 15% below expected
T3064: 5% below expected
Of course, these might have already been close to their lower
threshold, so perhaps not all the improvement is from here.
But it is good news all the same.
|