- Dec 24, 2018
-
-
Ben Gamari authored
This is due to the failures documented in #16087. The condition here could be improved as it matches on `BUILD_FLAVOUR` instead of looking at the compiler flags. However, it's better than nothing and I hope we will be able to fix these issues before long.
-
- Dec 23, 2018
-
-
Ben Gamari authored
They aren't finishing correctly anyways.
-
Ben Gamari authored
This reverts commit e59439af. This is causing unexpected failures in some test ways. Further proof that no change is too trivial for CI.
-
Ben Gamari authored
The lack of types made the previous failure silent, sadly. Improves situation of #16043.
-
- Dec 22, 2018
-
-
Ben Gamari authored
As documented in #15382, this is known to fail in prof_hc_hb on i386. Concerningly, I have also seen this test non-deterministically fail in prof_hc_hb on amd64. We should really investigate this.
-
Ben Gamari authored
-
Ben Gamari authored
As noted in #15662, these used to be broken on Darwin due to a Clang toolchain bug. However, this bug appears to be fixed in the Clang shipped with macOS Mojave. Unfortunately, we don't really have any way to only mark it as broken on certain operation system releases so I am just removing the expect_broken entirely.
-
Ben Gamari authored
This is currently spuriously failing. Moreover, we have the Mac Mini builder running again so this is much less necessary now.
-
Ömer Sinan Ağacan authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
Previously the toolchain directory was wiped away by git clean.
-
Ben Gamari authored
-
Ben Gamari authored
-
- Dec 21, 2018
-
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
Previously the linters were tagged with x86_64-linux, meaning that linting jobs would often get stuck behind builds in the queue. Given that linting jobs are fairly low-cost they hold up later build stages it is important that we reduce this latency.
-
Ben Gamari authored
-
Ben Gamari authored
Our CircleCI builds will fail anyways without large instances.
-
Test Plan: Observe CircleCI Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, carter Differential Revision: https://phabricator.haskell.org/D5464
-
Ben Gamari authored
Due to #16073.
-
Gabor Greif authored
-
Ben Gamari authored
It turns out that the submodules hack is useful to ensure that CI works in forks. This reverts commit 90ceafa8.
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
Trac #16038 exposed the fact that TcRnDriver.checkHiBootIface was creating a binding, in the module being compiled, for $fxBlah = $fBlah but $fxBlah was a /GlobalId/. But all bindings should be for /LocalIds/ else dependency analysis goes down the tubes. * I added a CoreLint check that an occurrence of a GlobalId is not bound by an binding of a LocalId. (There is already a binding-site check that no binding binds a GlobalId.) * I refactored (and actually signficantly simplified) the tricky code for dfuns in checkHiBootIface to ensure that we get LocalIds for those boot-dfuns. Alas, I then got "duplicate instance" messages when compiling HsExpr. It turns out that this is a long-standing, but extremely delicate, bug: even before this patch, if you compile HsExpr with -ddump-tc-trace, you get "duplicate instance". Without -ddump-tc-trace, it's OK. What a mess! The reason for the duplicate-instance is now explained in Note [Loading your own hi-boot file] in LoadIface. I fixed it by a Gross Hack in LoadIface.loadInterface. This is at least no worse than before. But there should be a better way. I have opened #16081 for this.
-
Simon Peyton Jones authored
In tcExtendRecEnv, there is no need to us setGlobalTypeEnv (which side-effects the tcg_type_env_var). tcExtendRecEnv is used only when kind-checking a group of type/class decls and no knot-tying via tcg_type_env_var is needed. There is no change in functionality.
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
candidateQTyVars was failing to return fully-zonked tyvars, and that made things fall over chaotically when we try to sort them into a well-scoped telescope. Result: Trac #15795 So I made candidateQTvs guarantee to have fully-zonked tyvars (i.e. with zonked kinds). That's a bit annoying but not really difficult.
-
Ryan Scott authored
Summary: The validity check which rejected things like: ```lang=haskell type family B x where A x = x ``` Used to live in the typechecker. But it turns out that this validity check was //only// being run on closed type families without CUSKs! This meant that GHC would silently accept something like this: ```lang=haskell type family B (x :: *) :: * where A x = x ``` This patch fixes the issue by moving this validity check to the renamer, where we can be sure that the check will //always// be run. Test Plan: make test TEST=T16002 Reviewers: simonpj, bgamari Reviewed By: simonpj Subscribers: goldfire, rwbarton, carter GHC Trac Issues: #16002 Differential Revision: https://phabricator.haskell.org/D5420
-
- Dec 20, 2018
-
-
Simon Peyton Jones authored
When we pretty-print types, we suppress RuntimeRep variables, but we were being too aggressive in doing so, resulting in Trac #16074. This patch makes the suppression a bit less aggressive. See Note [Defaulting RuntimeRep variables]
-
Simon Peyton Jones authored
This call plain missing, and as a result the casts messed up deep-skolemisation in tcSubType Fixes Trac #16033
-
Ömer Sinan Ağacan authored
-
- Dec 19, 2018
-
-
Summary: GHCi's `:info` command was pretty-printined GADT constructors suboptimally in the following ways: 1. Sometimes, fields were parenthesized when they did not need it, e.g., ```lang=haskell data Foo a where MkFoo :: (Maybe a) -> Foo a ``` I fixed this by refactoring some code in `pprIfaceConDecl` to be a little smarter with respect to GADT syntax. See `pprFieldArgTy` and `pprArgTy`. 2. With `-fprint-explicit-kinds` enabled, there would be times when specified arguments would be printed without a leading `@` in GADT return types, e.g., ```lang=haskell data Bar @k (a :: k) where MkBar :: Bar k a ``` It turns out that `ppr_tc_app`, the function which pretty-prints these return types, was not using the proper machinery to print out the arguments, which caused the visibilities to be forgotten entirely. I refactored `ppr_tc_app` to do this correctly. Test Plan: make test TEST=T16030 Reviewers: goldfire, bgamari, simonpj Reviewed By: simonpj Subscribers: simonpj, rwbarton, carter GHC Trac Issues: #16030 Differential Revision: https://phabricator.haskell.org/D5440
-
Krzysztof Gogolewski authored
Summary: See #8959, this is one more place where we can pretty-print Unicode syntax. Test Plan: validate Reviewers: nomeata, bgamari Reviewed By: bgamari Subscribers: rwbarton, carter GHC Trac Issues: #8959 Differential Revision: https://phabricator.haskell.org/D5439
-
Summary: Rank2Types is deprecated. Don't suggest to users to use it. Reviewers: bgamari, RyanGlScott, simonpj Reviewed By: RyanGlScott, simonpj Subscribers: RyanGlScott, rwbarton, carter GHC Trac Issues: #16000 Differential Revision: https://phabricator.haskell.org/D5447
-
Ben Gamari authored
Currently we are having quite some trouble keeping up with our build volume due to the number of configurations we have. I've split the pipeline into two halves: * build, which builds just vanilla deb9-linux with make and hadrian * full-build, which builds everything else This will trade-off some latency to more efficient use of our builders.
-