Commits on Source (12)
-
16475bb8
-
a2f60da5
-
This allows users to create their own Control.Exception.assert-like functionality that does something other than raising an `AssertFailed` exception. Fixes #24967
de4395cd -
0e9c4dee
-
This MR fixes the bug exposed by #24676. The problem was that quickLookArg was trying to avoid calling tcInstFun unnecessarily; but it was in fact necessary. But that in turn forced me into a significant refactoring, putting more fields into EValArgQL. Highlights: see Note [Quick Look overview] in GHC.Tc.Gen.App * Instantiation variables are now distinguishable from ordinary unification variables, by level number = QLInstVar. This is treated like "level infinity". See Note [The QLInstVar TcLevel] in GHC.Tc.Utils.TcType. * In `tcApp`, we don't track the instantiation variables in a set Delta any more; instead, we just tell them apart by their level number. * EValArgQL now much more clearly captures the "half-done" state of typechecking an argument, ready for later resumption. See Note [Quick Look at value arguments] in GHC.Tc.Gen.App * Elminated a bogus (never used) fast-path in GHC.Tc.Utils.Instantiate.instCallConstraints See Note [Possible fast path for equality constraints] Many other small refactorings.
c1315b20 -
44717c8e
-
The main payload of this patch is * Prioritise nominal equalities in the constraint solver. This ameliorates the incompleteness of solving for representational constraints over newtypes: see #24887. See (EX2) in Note [Decomposing newtype equalities] in GHC.Tc.Solver.Equality In doing this patch I tripped over some other things that I refactored: * Move `isCoVarType` from `GHC.Core.Type` to `GHC.Core.Predicate` where it seems more at home. * Clarify the "rewrite role" of a constraint. I was very puzzled about what the role of, say `(Eq a)` might be, but see the new Note [The rewrite-role of a constraint]. In doing so I made predTypeEqRel crash when given a non-equality. Usually it expects an equality; but it was being mis-used for the above rewrite-role stuff.
51b4ac8a -
Extends the missing-deriving-strategies warning with a suggested fix that includes which deriving strategies were assumed. For info about the warning, see comments for `TcRnNoDerivStratSpecified`, `TcRnNoDerivingClauseStrategySpecified`, & `TcRnNoStandaloneDerivingStrategySpecified`. For info about the suggested fix, see `SuggestExplicitDerivingClauseStrategies` & `SuggestExplicitStandalanoDerivingStrategy`. docs: Rewords missing-deriving-strategies to mention the suggested fix. Resolves #24955
09afa98a -
This patch changes mblock size to page size on wasm. It allows us to simplify our wasi-libc fork, makes it much easier to test third party libc allocators like emmalloc/mimalloc, as well as experimenting with threaded RTS in wasm.
3e19b803
Showing
- compiler/GHC/Core.hs 1 addition, 1 deletioncompiler/GHC/Core.hs
- compiler/GHC/Core/DataCon.hs 2 additions, 2 deletionscompiler/GHC/Core/DataCon.hs
- compiler/GHC/Core/Lint.hs 2 additions, 1 deletioncompiler/GHC/Core/Lint.hs
- compiler/GHC/Core/Make.hs 4 additions, 3 deletionscompiler/GHC/Core/Make.hs
- compiler/GHC/Core/Predicate.hs 48 additions, 16 deletionscompiler/GHC/Core/Predicate.hs
- compiler/GHC/Core/Rules.hs 1 addition, 1 deletioncompiler/GHC/Core/Rules.hs
- compiler/GHC/Core/SimpleOpt.hs 11 additions, 6 deletionscompiler/GHC/Core/SimpleOpt.hs
- compiler/GHC/Core/TyCo/FVs.hs 20 additions, 4 deletionscompiler/GHC/Core/TyCo/FVs.hs
- compiler/GHC/Core/Type.hs 1 addition, 13 deletionscompiler/GHC/Core/Type.hs
- compiler/GHC/Core/Utils.hs 1 addition, 0 deletionscompiler/GHC/Core/Utils.hs
- compiler/GHC/Driver/Config/Core/Lint.hs 1 addition, 1 deletioncompiler/GHC/Driver/Config/Core/Lint.hs
- compiler/GHC/Rename/Module.hs 0 additions, 15 deletionscompiler/GHC/Rename/Module.hs
- compiler/GHC/SysTools/Cpp.hs 4 additions, 0 deletionscompiler/GHC/SysTools/Cpp.hs
- compiler/GHC/Tc/Deriv.hs 101 additions, 13 deletionscompiler/GHC/Tc/Deriv.hs
- compiler/GHC/Tc/Errors/Ppr.hs 17 additions, 6 deletionscompiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.hs 60 additions, 11 deletionscompiler/GHC/Tc/Errors/Types.hs
- compiler/GHC/Tc/Gen/App.hs 974 additions, 567 deletionscompiler/GHC/Tc/Gen/App.hs
- compiler/GHC/Tc/Gen/Expr.hs 4 additions, 1 deletioncompiler/GHC/Tc/Gen/Expr.hs
- compiler/GHC/Tc/Gen/Head.hs 110 additions, 430 deletionscompiler/GHC/Tc/Gen/Head.hs
- compiler/GHC/Tc/Gen/Match.hs 6 additions, 4 deletionscompiler/GHC/Tc/Gen/Match.hs
This diff is collapsed.