[Git][ghc/ghc][wip/sjakobi/T27102-NonLocal] 22 commits: Add Invariant (NoTypeShadowing) to Core
Simon Jakobi pushed to branch wip/sjakobi/T27102-NonLocal at Glasgow Haskell Compiler / GHC Commits: 92a97015 by Simon Peyton Jones at 2026-04-05T00:58:57+01:00 Add Invariant (NoTypeShadowing) to Core This commit addresses #26868, by adding a new invariant (NoTypeShadowing) to Core. See Note [No type-shadowing in Core] in GHC.Core - - - - - 8b5a5020 by Simon Peyton Jones at 2026-04-05T00:58:57+01:00 Major refactor of free-variable functions For some time we have had two free-variable mechanims for types: * The "FV" mechanism, embodied in GHC.Utils.FV, which worked OK, but was fragile where eta-expansion was concerned. * The TyCoFolder mechanism, using a one-shot EndoOS accumulator I finally got tired of this and refactored the whole thing, thereby addressing #27080. Now we have * `GHC.Types.Var.FV`, which has a composable free-variable result type, very much in the spirit of the old `FV`, but much more robust. (It uses the "one shot trick".) * GHC.Core.TyCo.FVs now has just one technology for free variables. All this led to a lot of renaming. There are couple of error-message changes. The change in T18451 makes an already-poor error message even more mysterious. But it really needs a separate look. We also now traverse the AST in a different order leading to a different but still deterministic order for FVs and test output has been adjusted accordingly. - - - - - 4bf040c6 by sheaf at 2026-04-05T14:56:29-04:00 Add utility pprTrace_ function This function is useful for quick debugging, as it can be added to a where clause to pretty-print debugging information: fooBar x y | cond = body1 | otherwise = body2 where !_ = pprTrace_ "fooBar" $ vcat [ text "x:" <+> ppr x , text "y:" <+> ppr y , text "cond:" <+> ppr cond ] - - - - - 502e6ffe by Andrew Lelechenko at 2026-04-07T04:47:21-04:00 base: improve error message for Data.Char.chr As per https://github.com/haskell/core-libraries-committee/issues/384 - - - - - b21bd52e by Simon Peyton Jones at 2026-04-07T04:48:07-04:00 Refactor FunResCtxt a bit Fixes #27154 - - - - - 7fe84ea5 by Zubin Duggal at 2026-04-07T19:11:52+05:30 compiler: Warn when -finfo-table-map is used with -fllvm These are currently not supported together. Fixes #26435 - - - - - 4a45a7da by Matthew Pickering at 2026-04-08T04:37:29-04:00 packaging: correctly propagate build/host/target to bindist configure script At the moment the host and target which we will produce a compiler for is fixed at the initial configure time. Therefore we need to persist the choice made at this time into the installation bindist as well so we look for the right tools, with the right prefixes at install time. In the future, we want to provide a bit more control about what kind of bindist we produce so the logic about what the host/target will have to be written by hadrian rather than persisted by the configure script. In particular with cross compilers we want to either build a normal stage 2 cross bindist or a stage 3 bindist, which creates a bindist which has a native compiler for the target platform. Fixes #21970 Co-authored-by: Sven Tennie <sven.tennie@gmail.com> - - - - - b0950df6 by Sven Tennie at 2026-04-08T04:37:29-04:00 Cross --host and --target no longer required for cross (#21970) We set sane defaults in the configure script. Thus, these paramenters aren't required any longer. - - - - - fef35216 by Sven Tennie at 2026-04-08T04:37:30-04:00 ci: Define USER_CONF_CC_OPTS_STAGE2 for aarch64/mingw ghc-toolchain doesn't see $CONF_CC_OPTS_STAGE2 when the bindist gets configured. So, the hack to override the compiler gets lost. - - - - - 8dd6f453 by Cheng Shao at 2026-04-08T04:38:11-04:00 ghci: use ShortByteString for LookupSymbol/LookupSymbolInDLL/LookupClosure messages This patch refactors ghci to use `ShortByteString` for `LookupSymbol`/`LookupSymbolInDLL`/`LookupClosure` messages as the first part of #27147. Co-authored-by: Codex <codex@openai.com> - - - - - 371ef200 by Cheng Shao at 2026-04-08T04:38:11-04:00 ghci: use ShortByteString for MkCostCentres message This patch refactors ghci to use `ShortByteString` for `MkCostCentres` messages as a first part of #27147. This also considerably lowers the memory overhead of breakpoints when cost center profiling is enabled. ------------------------- Metric Decrease: interpreter_steplocal ------------------------- Co-authored-by: Codex <codex@openai.com> - - - - - 4a122bb6 by Phil Hazelden at 2026-04-08T20:49:42-04:00 Implement modifiers syntax. The `%m` syntax of linear types is now accepted in more places, to allow use by future extensions, though so far linear types is still the only consumer. This may break existing code where it * Uses -XLinearTypes. * Has code of the form `a %m -> b`, where `m` can't be inferred to be kind Multiplicity. The code can be fixed either by adding a kind annotation, or by setting `-XLinearTypes -XNoModifiers`. Proposal: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0370-mo... - - - - - 07267f79 by Zubin Duggal at 2026-04-08T20:50:25-04:00 hadrian: Don't include the package hash in the haddock directory Since GHC 9.8 and hash_unit_ids, haddock urls have looked like`ghc-9.10.3/doc/html/libraries/base-4.20.2.0-39f9/**/*.html` The inclusion of the hash makes it hard for downstream non-boot packages to properly link to these files, as the hash is not part of a standard cabal substitution. Since we only build one version of each package, we don't need the hash to disambiguate anything, we can just remove it. Fixes #26635 - - - - - 0a83b95b by ARATA Mizuki at 2026-04-08T20:51:18-04:00 testsuite: Allow multiple ways to be run by setting multiple command-line options This patch allows multiple `--test-way`s to take effect, like: $ hadrian/build test --test-way=normal --test-way=llvm Previously, only one way was run if the test speed was 'normal' or 'fast'. Closes #26926 Co-authored-by: sheaf <sam.derbyshire@gmail.com> - - - - - e841931c by Teo Camarasu at 2026-04-08T20:52:00-04:00 doc: improve eventlog-flush-interval flag documentation We mention the performance cost and how this flag can be turned off. Resolves #27056 - - - - - e332db25 by Teo Camarasu at 2026-04-08T20:52:01-04:00 docs/user_guide: fix typo - - - - - 5b82080a by Simon Jakobi at 2026-04-08T20:52:44-04:00 Fix -dsuppress-uniques for free variables in demand signatures Before: Str=b{sXyZ->S} With this patch: Str=b{S} T13143.stderr is updated accordingly. Fixes #27106. - - - - - b7a084cc by Simon Jakobi at 2026-04-08T20:53:27-04:00 Documentation fixes for demand signature notation Fixes #27115. - - - - - 59391132 by Simon Jakobi at 2026-04-08T20:54:08-04:00 Use upsert for non-deleting map updates Some compiler functions were using `alter`, despite never removing any entries: they only update an existing entry or insert a new one. These functions are converted to using `upsert`: alter :: (Maybe a -> Maybe a) -> Key -> Map a -> Map a upsert :: (Maybe a -> a) -> Key -> Map a -> Map a `upsert` variants are also added to APIs of the various Word64Map wrapper types. The precedent for this `upsert` operation is in the containers library: see https://github.com/haskell/containers/pull/1145 Metrics: compile_time/bytes allocated ------------------------------------- geo. mean: -0.1% minimum: -0.5% maximum: +0.0% Resolves #27140. - - - - - da7e82f4 by Cheng Shao at 2026-04-08T20:54:49-04:00 testsuite: fix testsuite run for +ipe again This patch makes the +ipe flavour transformer pass the entire testsuite again by dropping stdout/stderr checks of certain tests that are sensitive to stack layout changes with `+ipe`. Related: #26799. - - - - - 4d1c3cb6 by Simon Jakobi at 2026-04-09T16:20:13+02:00 Eliminate dictionary-passing of NonLocal dicts Fixes #27102. - - - - - 876f01a4 by Simon Jakobi at 2026-04-09T16:20:13+02:00 WIP: Monomorphize instead of specialize These functions were polymorphized in cc2bf8e for the benefit of Asterius / WASM. Since the polymorphism doesn't appear to be needed anymore, it seems easiest and most efficient to monomorphize them again in order to get rid of the dictionary-passing. - - - - - 316 changed files: - .gitlab/ci.sh - .gitlab/generate-ci/gen_ci.hs - .gitlab/jobs.yaml - compiler/GHC/ByteCode/Breakpoints.hs - compiler/GHC/Cmm/CommonBlockElim.hs - compiler/GHC/Cmm/Dataflow.hs - compiler/GHC/Cmm/Dataflow/Graph.hs - compiler/GHC/Cmm/Dataflow/Label.hs - compiler/GHC/Cmm/Dominators.hs - compiler/GHC/CmmToAsm/CFG.hs - compiler/GHC/Core.hs - compiler/GHC/Core/Coercion.hs - compiler/GHC/Core/FVs.hs - compiler/GHC/Core/Lint.hs - compiler/GHC/Core/Multiplicity.hs - compiler/GHC/Core/Opt/DmdAnal.hs - compiler/GHC/Core/Opt/SetLevels.hs - compiler/GHC/Core/Opt/Simplify/Iteration.hs - compiler/GHC/Core/Opt/Specialise.hs - compiler/GHC/Core/RoughMap.hs - compiler/GHC/Core/Rules.hs - compiler/GHC/Core/Subst.hs - compiler/GHC/Core/TyCo/FVs.hs - compiler/GHC/Core/TyCo/Ppr.hs - compiler/GHC/Core/TyCo/Rep.hs - compiler/GHC/Core/TyCo/Subst.hs - compiler/GHC/Core/TyCon/Env.hs - compiler/GHC/Core/Type.hs - compiler/GHC/Core/Unify.hs - compiler/GHC/Data/FastString/Env.hs - compiler/GHC/Data/Word64Map/Internal.hs - compiler/GHC/Data/Word64Map/Lazy.hs - compiler/GHC/Data/Word64Map/Strict.hs - compiler/GHC/Data/Word64Map/Strict/Internal.hs - compiler/GHC/Driver/Flags.hs - compiler/GHC/Driver/Plugins.hs - compiler/GHC/Driver/Session.hs - compiler/GHC/Hs/Binds.hs - compiler/GHC/Hs/Decls.hs - compiler/GHC/Hs/Expr.hs - compiler/GHC/Hs/Instances.hs - compiler/GHC/Hs/Pat.hs - compiler/GHC/Hs/Syn/Type.hs - compiler/GHC/Hs/Type.hs - compiler/GHC/Hs/Utils.hs - compiler/GHC/HsToCore/Binds.hs - compiler/GHC/HsToCore/Breakpoints.hs - compiler/GHC/HsToCore/Docs.hs - compiler/GHC/HsToCore/Errors/Ppr.hs - compiler/GHC/HsToCore/Errors/Types.hs - compiler/GHC/HsToCore/Expr.hs - compiler/GHC/HsToCore/Match.hs - compiler/GHC/HsToCore/Pmc/Desugar.hs - compiler/GHC/HsToCore/Quote.hs - compiler/GHC/HsToCore/Ticks.hs - compiler/GHC/Iface/Ext/Ast.hs - compiler/GHC/Iface/Syntax.hs - compiler/GHC/Iface/Type.hs - compiler/GHC/Linker/Loader.hs - compiler/GHC/Parser.y - compiler/GHC/Parser/Errors/Ppr.hs - compiler/GHC/Parser/Errors/Types.hs - compiler/GHC/Parser/Lexer.x - compiler/GHC/Parser/PostProcess.hs - compiler/GHC/Parser/PostProcess/Haddock.hs - compiler/GHC/Parser/Types.hs - compiler/GHC/Rename/Bind.hs - compiler/GHC/Rename/Env.hs - compiler/GHC/Rename/Expr.hs - compiler/GHC/Rename/Expr.hs-boot - compiler/GHC/Rename/HsType.hs - compiler/GHC/Rename/Lit.hs - compiler/GHC/Rename/Module.hs - compiler/GHC/Rename/Names.hs - compiler/GHC/Rename/Pat.hs - compiler/GHC/Rename/Splice.hs - compiler/GHC/Rename/Splice.hs-boot - compiler/GHC/Rename/Utils.hs - compiler/GHC/Runtime/Interpreter.hs - compiler/GHC/Tc/Deriv.hs - compiler/GHC/Tc/Deriv/Generate.hs - compiler/GHC/Tc/Errors.hs - compiler/GHC/Tc/Errors/Hole.hs - compiler/GHC/Tc/Errors/Ppr.hs - compiler/GHC/Tc/Errors/Types.hs - compiler/GHC/Tc/Gen/App.hs - compiler/GHC/Tc/Gen/Bind.hs - compiler/GHC/Tc/Gen/Default.hs - compiler/GHC/Tc/Gen/Foreign.hs - compiler/GHC/Tc/Gen/Head.hs - compiler/GHC/Tc/Gen/HsType.hs - compiler/GHC/Tc/Gen/Pat.hs - compiler/GHC/Tc/Gen/Sig.hs - compiler/GHC/Tc/Instance/Family.hs - compiler/GHC/Tc/Instance/FunDeps.hs - compiler/GHC/Tc/Module.hs - compiler/GHC/Tc/Solver/Solve.hs - compiler/GHC/Tc/Solver/Types.hs - compiler/GHC/Tc/TyCl.hs - compiler/GHC/Tc/TyCl/PatSyn.hs - compiler/GHC/Tc/TyCl/Utils.hs - compiler/GHC/Tc/Types/Constraint.hs - compiler/GHC/Tc/Types/ErrCtxt.hs - compiler/GHC/Tc/Types/Evidence.hs - compiler/GHC/Tc/Utils/Env.hs - compiler/GHC/Tc/Utils/TcMType.hs - compiler/GHC/Tc/Utils/TcType.hs - compiler/GHC/Tc/Utils/Unify.hs - compiler/GHC/Tc/Validity.hs - compiler/GHC/Tc/Zonk/TcType.hs - compiler/GHC/Tc/Zonk/Type.hs - compiler/GHC/ThToHs.hs - compiler/GHC/Types/Demand.hs - compiler/GHC/Types/Error/Codes.hs - compiler/GHC/Types/Hint.hs - compiler/GHC/Types/Hint/Ppr.hs - compiler/GHC/Types/Name/Env.hs - compiler/GHC/Types/Name/Occurrence.hs - compiler/GHC/Types/Name/Set.hs - compiler/GHC/Types/Unique/DFM.hs - compiler/GHC/Types/Unique/FM.hs - compiler/GHC/Types/Var/Env.hs - + compiler/GHC/Types/Var/FV.hs - compiler/GHC/Types/Var/Set.hs - compiler/GHC/Utils/EndoOS.hs - − compiler/GHC/Utils/FV.hs - compiler/GHC/Utils/Trace.hs - compiler/GHC/Wasm/ControlFlow/FromCmm.hs - compiler/Language/Haskell/Syntax/Binds.hs - compiler/Language/Haskell/Syntax/Decls.hs - compiler/Language/Haskell/Syntax/Decls/Foreign.hs - compiler/Language/Haskell/Syntax/Expr.hs - compiler/Language/Haskell/Syntax/Extension.hs - compiler/Language/Haskell/Syntax/Pat.hs - compiler/Language/Haskell/Syntax/Type.hs - compiler/ghc.cabal.in - configure.ac - distrib/configure.ac.in - docs/users_guide/9.16.1-notes.rst - docs/users_guide/debug-info.rst - docs/users_guide/exts/linear_types.rst - + docs/users_guide/exts/modifiers.rst - docs/users_guide/exts/syntax.rst - docs/users_guide/runtime_control.rst - docs/users_guide/using-optimisation.rst - docs/users_guide/using-warnings.rst - hadrian/bindist/Makefile - hadrian/cfg/system.config.in - hadrian/src/CommandLine.hs - hadrian/src/Context.hs - hadrian/src/Oracles/Setting.hs - hadrian/src/Rules/Generate.hs - hadrian/src/Settings/Builders/Cabal.hs - hadrian/src/Settings/Default.hs - libraries/base/changelog.md - libraries/base/tests/enum01.stdout - libraries/base/tests/enum01.stdout-alpha-dec-osf3 - libraries/base/tests/enum01.stdout-ws-64 - libraries/ghc-experimental/tests/backtraces/all.T - libraries/ghc-internal/src/GHC/Internal/Char.hs - libraries/ghc-internal/src/GHC/Internal/LanguageExtensions.hs - libraries/ghc-internal/tests/stack-annotation/all.T - libraries/ghci/GHCi/Message.hs - libraries/ghci/GHCi/ObjLink.hs - libraries/ghci/GHCi/Run.hs - m4/fptools_set_platform_vars.m4 - m4/ghc_toolchain.m4 - testsuite/driver/testlib.py - − testsuite/tests/cmm/should_compile/T20725.hs - testsuite/tests/cmm/should_compile/all.T - testsuite/tests/count-deps/CountDepsAst.stdout - testsuite/tests/count-deps/CountDepsParser.stdout - testsuite/tests/cpranal/should_compile/T18401.stderr - testsuite/tests/deriving/should_fail/deriving-via-fail4.stderr - testsuite/tests/dmdanal/should_compile/T13143.stderr - + testsuite/tests/dmdanal/should_compile/T27106.hs - + testsuite/tests/dmdanal/should_compile/T27106.stderr - testsuite/tests/dmdanal/should_compile/all.T - + testsuite/tests/driver/T26435.ghc.stderr - + testsuite/tests/driver/T26435.hs - + testsuite/tests/driver/T26435.stdout - testsuite/tests/driver/T4437.hs - testsuite/tests/driver/all.T - testsuite/tests/driver/linkwhole/Main.hs - testsuite/tests/ghc-api/T25121_status.stdout - testsuite/tests/ghc-api/exactprint/Test20239.stderr - testsuite/tests/ghci/should_run/T18064.script - testsuite/tests/haddock/should_compile_flag_haddock/T17544.stderr - testsuite/tests/haddock/should_compile_flag_haddock/T17544_kw.stderr - testsuite/tests/haddock/should_compile_flag_haddock/T24221.stderr - testsuite/tests/haddock/should_compile_flag_haddock/haddockLinear.hs - testsuite/tests/haddock/should_compile_flag_haddock/haddockLinear.stderr - testsuite/tests/indexed-types/should_fail/T2693.stderr - testsuite/tests/interface-stability/base-exports.stdout - testsuite/tests/interface-stability/base-exports.stdout-javascript-unknown-ghcjs - testsuite/tests/interface-stability/base-exports.stdout-mingw32 - testsuite/tests/interface-stability/base-exports.stdout-ws-32 - testsuite/tests/interface-stability/template-haskell-exports.stdout - testsuite/tests/linear/should_compile/Linear1Rule.hs - testsuite/tests/linear/should_compile/MultConstructor.hs - testsuite/tests/linear/should_compile/NonLinearRecord.hs - testsuite/tests/linear/should_compile/OldList.hs - testsuite/tests/linear/should_compile/T19400.hs - testsuite/tests/linear/should_compile/T22546.hs - testsuite/tests/linear/should_compile/T23025.hs - testsuite/tests/linear/should_compile/T26332.hs - testsuite/tests/linear/should_fail/LinearErrOrigin.hs - testsuite/tests/linear/should_fail/LinearErrOrigin.stderr - testsuite/tests/linear/should_fail/LinearLet10.hs - testsuite/tests/linear/should_fail/LinearLet10.stderr - testsuite/tests/linear/should_fail/LinearPartialSig.hs - testsuite/tests/linear/should_fail/LinearPartialSig.stderr - testsuite/tests/linear/should_fail/LinearRole.hs - + testsuite/tests/linear/should_fail/LinearUnknownModifierKind.hs - + testsuite/tests/linear/should_fail/LinearUnknownModifierKind.stderr - testsuite/tests/linear/should_fail/LinearVar.hs - testsuite/tests/linear/should_fail/LinearVar.stderr - testsuite/tests/linear/should_fail/T18888_datakinds.hs - testsuite/tests/linear/should_fail/T18888_datakinds.stderr - testsuite/tests/linear/should_fail/T19361.hs - testsuite/tests/linear/should_fail/T19361.stderr - testsuite/tests/linear/should_fail/T20083.hs - testsuite/tests/linear/should_fail/T20083.stderr - testsuite/tests/linear/should_fail/T21278.hs - testsuite/tests/linear/should_fail/T21278.stderr - + testsuite/tests/linear/should_fail/TooManyMultiplicities.hs - + testsuite/tests/linear/should_fail/TooManyMultiplicities.stderr - + testsuite/tests/linear/should_fail/TooManyMultiplicitiesU.hs - + testsuite/tests/linear/should_fail/TooManyMultiplicitiesU.stderr - testsuite/tests/linear/should_fail/all.T - + testsuite/tests/modifiers/Makefile - + testsuite/tests/modifiers/should_compile/LinearNoModifiers.hs - + testsuite/tests/modifiers/should_compile/Makefile - + testsuite/tests/modifiers/should_compile/Modifier1Linear.hs - + testsuite/tests/modifiers/should_compile/Modifier1Linear.stderr - + testsuite/tests/modifiers/should_compile/Modifiers.hs - + testsuite/tests/modifiers/should_compile/Modifiers.stderr - + testsuite/tests/modifiers/should_compile/ModifiersSuggestLinear.hs - + testsuite/tests/modifiers/should_compile/ModifiersSuggestLinear.stderr - + testsuite/tests/modifiers/should_compile/all.T - + testsuite/tests/modifiers/should_fail/Makefile - + testsuite/tests/modifiers/should_fail/ModifiersExprUnexpectedInQuote.hs - + testsuite/tests/modifiers/should_fail/ModifiersExprUnexpectedInQuote.stderr - + testsuite/tests/modifiers/should_fail/ModifiersForbiddenHere.hs - + testsuite/tests/modifiers/should_fail/ModifiersForbiddenHere.stderr - + testsuite/tests/modifiers/should_fail/ModifiersNoExt.hs - + testsuite/tests/modifiers/should_fail/ModifiersNoExt.stderr - + testsuite/tests/modifiers/should_fail/ModifiersUnexpectedInQuote.hs - + testsuite/tests/modifiers/should_fail/ModifiersUnexpectedInQuote.stderr - + testsuite/tests/modifiers/should_fail/ModifiersUnknownKind.hs - + testsuite/tests/modifiers/should_fail/ModifiersUnknownKind.stderr - + testsuite/tests/modifiers/should_fail/all.T - testsuite/tests/parser/should_compile/DumpParsedAst.stderr - testsuite/tests/parser/should_compile/DumpRenamedAst.stderr - testsuite/tests/parser/should_compile/DumpSemis.stderr - testsuite/tests/parser/should_compile/KindSigs.stderr - testsuite/tests/parser/should_compile/T14189.stderr - testsuite/tests/parser/should_compile/T15323.stderr - testsuite/tests/parser/should_compile/T18834a.stderr - testsuite/tests/parser/should_compile/T20452.stderr - testsuite/tests/parser/should_compile/T23315/T23315.stderr - testsuite/tests/parser/should_fail/T19928.stderr - testsuite/tests/partial-sigs/should_compile/T10403.stderr - testsuite/tests/partial-sigs/should_compile/T12844.stderr - testsuite/tests/partial-sigs/should_compile/T15039a.stderr - testsuite/tests/partial-sigs/should_compile/T15039b.stderr - testsuite/tests/partial-sigs/should_compile/T15039c.stderr - testsuite/tests/partial-sigs/should_compile/T15039d.stderr - testsuite/tests/partial-sigs/should_fail/T10999.stderr - testsuite/tests/partial-sigs/should_fail/T12634.stderr - testsuite/tests/polykinds/T15789.stderr - testsuite/tests/polykinds/T18451.stderr - testsuite/tests/polykinds/T7328.stderr - testsuite/tests/printer/Makefile - + testsuite/tests/printer/PprModifiers.hs - testsuite/tests/printer/T18791.stderr - testsuite/tests/printer/Test20315.hs - testsuite/tests/printer/Test20315.stderr - testsuite/tests/printer/Test24533.stdout - testsuite/tests/printer/all.T - testsuite/tests/rename/should_compile/T22478a.hs - testsuite/tests/rts/KeepCafsMain.hs - testsuite/tests/simplCore/should_compile/DsSpecPragmas.stderr - testsuite/tests/simplCore/should_compile/T24229a.stderr - testsuite/tests/simplCore/should_compile/T24229b.stderr - testsuite/tests/simplCore/should_compile/T24359a.stderr - testsuite/tests/simplCore/should_compile/T26116.stderr - testsuite/tests/simplCore/should_compile/T4908.stderr - testsuite/tests/simplCore/should_compile/spec-inline.stderr - testsuite/tests/typecheck/no_skolem_info/T20063.stderr - testsuite/tests/typecheck/no_skolem_info/T20232.hs - testsuite/tests/typecheck/no_skolem_info/T20232.stderr - testsuite/tests/typecheck/should_compile/T25180.stderr - testsuite/tests/typecheck/should_compile/free_monad_hole_fits.stderr - testsuite/tests/typecheck/should_fail/T10971d.stderr - testsuite/tests/typecheck/should_fail/T12589.stderr - testsuite/tests/typecheck/should_fail/T13311.stderr - testsuite/tests/typecheck/should_fail/T17773.stderr - testsuite/tests/typecheck/should_fail/T2846b.stderr - testsuite/tests/typecheck/should_fail/T7851.stderr - testsuite/tests/typecheck/should_fail/T8603.stderr - utils/check-exact/ExactPrint.hs - utils/check-exact/Main.hs - utils/check-exact/Transform.hs - utils/haddock/haddock-api/src/Haddock/Backends/Hoogle.hs - utils/haddock/haddock-api/src/Haddock/Backends/LaTeX.hs - utils/haddock/haddock-api/src/Haddock/Backends/Xhtml/Decl.hs - utils/haddock/haddock-api/src/Haddock/Convert.hs - utils/haddock/haddock-api/src/Haddock/GhcUtils.hs - utils/haddock/haddock-api/src/Haddock/Interface/Create.hs - utils/haddock/haddock-api/src/Haddock/Interface/Rename.hs - utils/haddock/haddock-api/src/Haddock/Interface/RenameType.hs - utils/haddock/haddock-api/src/Haddock/Types.hs - utils/haddock/html-test/src/LinearTypes.hs - utils/haddock/latex-test/src/LinearTypes/LinearTypes.hs - utils/jsffi/dyld.mjs The diff was not included because it is too large. View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/3b0e5db11fea382934d70ee5241946f... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/3b0e5db11fea382934d70ee5241946f... You're receiving this email because of your account on gitlab.haskell.org.
participants (1)
-
Simon Jakobi (@sjakobi2)