Commits on Source (10)
-
Skips `executeFile001` test in `threaded2` way. Fixes #16814.
96d04191 -
Now since this is generated by the build system we should ensure that it is properly cleaned. [skip ci]
14d7209f -
This disables optimisation when building Cabal for Hadrian and stage0 `ghc-cabal`. Cabal is performance critical in neither case nor will any performance difference here be visible to the end-user. See #16817.
4eebf556 -
fb17584f
-
Previously we just tested for the threaded2 when determining whether to skip tests which are fragile under concurrent execution. However, this isn't the only way which is concurrent.
c84cf5cb -
As noted in #16819, this operation is racy under concurrent execution.
55f13ca6 -
8b1b3224
-
Previously there were a few cases where operations like `omit_ways` were incorrectly passed a single way (e.g. `omit_ways('threaded2')`). This won't work as the author expected.
9c200075 -
Issue #15862 demonstrated examples of type constructors on which `TcTypeable.tyConIsTypeable` would return `False`, but the `Typeable` constraint solver in `ClsInst` (in particular, `doTyConApp`) would try to generate `Typeable` evidence for anyway, resulting in disaster. This incongruity was caused by the fact that `doTyConApp` was using a weaker validity check than `tyConIsTypeable` to determine if a type constructor warrants `Typeable` evidence or not. The solution, perhaps unsurprisingly, is to use `tyConIsTypeable` in `doTyConApp` instead. To avoid import cycles between `ClsInst` and `TcTypeable`, I factored out `tyConIsTypeable` into its own module, `TcTypeableValidity`. Fixes #15862.
9fabc85b -
e31206d3
Showing
- compiler/deSugar/Check.hs 1 addition, 1 deletioncompiler/deSugar/Check.hs
- compiler/ghc.cabal.in 1 addition, 0 deletionscompiler/ghc.cabal.in
- compiler/rename/RnSplice.hs 3 additions, 6 deletionscompiler/rename/RnSplice.hs
- compiler/simplCore/CoreMonad.hs 0 additions, 1 deletioncompiler/simplCore/CoreMonad.hs
- compiler/typecheck/ClsInst.hs 2 additions, 1 deletioncompiler/typecheck/ClsInst.hs
- compiler/typecheck/TcEvidence.hs 1 addition, 16 deletionscompiler/typecheck/TcEvidence.hs
- compiler/typecheck/TcRnMonad.hs 0 additions, 12 deletionscompiler/typecheck/TcRnMonad.hs
- compiler/typecheck/TcTypeable.hs 2 additions, 34 deletionscompiler/typecheck/TcTypeable.hs
- compiler/typecheck/TcTypeableValidity.hs 46 additions, 0 deletionscompiler/typecheck/TcTypeableValidity.hs
- compiler/utils/MonadUtils.hs 0 additions, 23 deletionscompiler/utils/MonadUtils.hs
- ghc.mk 1 addition, 0 deletionsghc.mk
- hadrian/cabal.project 6 additions, 0 deletionshadrian/cabal.project
- hadrian/src/Settings/Flavours/Development.hs 5 additions, 1 deletionhadrian/src/Settings/Flavours/Development.hs
- libraries/base/tests/IO/all.T 2 additions, 1 deletionlibraries/base/tests/IO/all.T
- libraries/base/tests/Numeric/all.T 1 addition, 1 deletionlibraries/base/tests/Numeric/all.T
- libraries/base/tests/all.T 1 addition, 1 deletionlibraries/base/tests/all.T
- libraries/unix 1 addition, 1 deletionlibraries/unix
- mk/flavours/devel1.mk 4 additions, 0 deletionsmk/flavours/devel1.mk
- mk/flavours/devel2.mk 4 additions, 0 deletionsmk/flavours/devel2.mk
- mk/flavours/validate.mk 5 additions, 0 deletionsmk/flavours/validate.mk
compiler/typecheck/TcTypeableValidity.hs
0 → 100644