[Git][ghc/ghc][wip/sjakobi/T27804-findsplice-order] 4 commits: Rename: Take the group first in findSplice's add
Simon Jakobi pushed to branch wip/sjakobi/T27804-findsplice-order at Glasgow Haskell Compiler / GHC Commits: 5df9ac56 by Simon Jakobi at 2026-10-08T23:51:51+02:00 Rename: Take the group first in findSplice's add With the group as the first argument, the fold in findSplice no longer needs flip, and each clause of add keeps the shape it had before the previous commit. Assisted-by: Claude Fable 5.1 - - - - - 2903418f by Simon Jakobi at 2026-10-09T12:19:49+02:00 hadrian: Silence -Wsimplifiable-class-constraints in parsec Whether the instance context `Semigroup (ParsecT s u m a)` of parsec's Monoid instance triggers the warning depends on the order in which GHC typechecks the module's instances (#27913). With the instance order of the preceding commits the warning fires, and the -Werror builds in CI fail. The constraint has been redundant since parsec started requiring base >= 4.12. Once the submodule carries the upstream fix (https://github.com/haskell/parsec/pull/202), the flag can go again. Assisted-by: Claude Fable 5.1 - - - - - 3e46b599 by sheaf at 2026-10-09T12:22:35+02:00 Take into account ifKind in freeNamesIfDecl Commit 3c2f4bb4 added the 'ifKind' field to various constructors of 'IfaceDecl', which preserves the original kind (before type synonym expansion) for better error messages. However, that commit forgot to update 'freeNamesIfDecl' correspondingly. This could result in a "urk! lookup local fingerpring" crash when e.g. a type's kind uses a type synonym defined later, as we failed to add a dependency on the type synonym during dependency analysis. Fixes #27916 (cherry picked from commit 60fce2dac3f17a56d0191cfae5fe15f126ec314d) - - - - - c0a7e8af by Simon Jakobi at 2026-10-09T12:38:13+02:00 testsuite: Accept output changes from the findSplice reordering With every HsGroup list in source order, 48 tests print the same information in a different order or anchor an error at a different one of several equally valid declarations: annotation, type family instance and derived-instance dumps, `:info` listings, the renamed and typechecked AST dumps, bytecode dumps, and the instance listing in the base-exports stability files (all three platform variants, patched with the CI diff since the test needs the dump-decls tool). annrun01's getAnnotations now returns annotations in source order. The non-order failures of the first CI run of !16781 are dealt with separately: the "urk! lookup local fingerprint" panics by the cherry-picked fix for #27916, parsec's warning by the hadrian flag. Assisted-by: Claude Fable 5.1 - - - - - 53 changed files: - compiler/GHC/Iface/Syntax.hs - compiler/GHC/Rename/Module.hs - hadrian/src/Settings/Warnings.hs - testsuite/tests/annotations/should_fail/annfail04.stderr - testsuite/tests/annotations/should_fail/annfail05.stderr - testsuite/tests/annotations/should_fail/annfail06.stderr - testsuite/tests/annotations/should_fail/annfail07.stderr - testsuite/tests/annotations/should_fail/annfail08.stderr - testsuite/tests/annotations/should_fail/annfail10.stderr - testsuite/tests/annotations/should_run/annrun01.stdout - testsuite/tests/backpack/should_fail/bkpfail29.stderr - testsuite/tests/default/default-fail03.stderr - testsuite/tests/dependent/should_compile/T15743e.stderr - testsuite/tests/deriving/should_compile/T17240.stderr - testsuite/tests/deriving/should_compile/T17339.stderr - testsuite/tests/deriving/should_compile/T20496.stderr - testsuite/tests/deriving/should_compile/drv-empty-data.stderr - testsuite/tests/dmdanal/should_compile/T16029.stdout - testsuite/tests/ffi/should_compile/T26852.stderr - testsuite/tests/generics/GenDerivOutput1_1.stderr - testsuite/tests/generics/T10604/T10604_deriving.stderr - testsuite/tests/ghci/prog-mhu001/prog-mhu001c.stdout - testsuite/tests/ghci/scripts/T12550.stdout - testsuite/tests/ghci/scripts/T4175.stdout - testsuite/tests/ghci/scripts/T8674.stdout - testsuite/tests/ghci/scripts/ghci064.stdout - testsuite/tests/indexed-types/should_fail/OverDirectThisMod.stderr - testsuite/tests/indexed-types/should_fail/OverIndirectThisMod.stderr - testsuite/tests/indexed-types/should_fail/T20466.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/parser/should_compile/DumpRenamedAst.stderr - testsuite/tests/parser/should_compile/DumpTypecheckedAst.stderr - testsuite/tests/parser/should_fail/OpaqueParseFail4.stderr - testsuite/tests/partial-sigs/should_compile/Meltdown.stderr - testsuite/tests/partial-sigs/should_compile/TypeFamilyInstanceLHS.stderr - testsuite/tests/patsyn/should_fail/T12165.stderr - testsuite/tests/plugins/test-defaulting-plugin.stderr - testsuite/tests/pmcheck/complete_sigs/completesig10.stderr - testsuite/tests/pmcheck/complete_sigs/completesig11.stderr - testsuite/tests/polykinds/PolyKinds07.stderr - testsuite/tests/saks/should_fail/T16727a.stderr - testsuite/tests/saks/should_fail/saks_fail002.stderr - testsuite/tests/show-bytecode/show-bytecode-breakpoints.stdout - testsuite/tests/show-bytecode/show-bytecode-hpc.stdout - testsuite/tests/show-bytecode/show-bytecode-vanilla.stdout - testsuite/tests/showIface/DocsInHiFileTH.stdout - testsuite/tests/showIface/Orphans.stdout - testsuite/tests/showIface/PragmaDocs.stdout - testsuite/tests/simplCore/should_compile/T12603.stdout - + testsuite/tests/typecheck/should_compile/T27916.hs - testsuite/tests/typecheck/should_compile/all.T The diff was not included because it is too large. View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ed6b480aafed791a6d042f64d37403c... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ed6b480aafed791a6d042f64d37403c... You're receiving this email because of your account on gitlab.haskell.org. Manage all notifications: https://gitlab.haskell.org/-/profile/notifications | Help: https://gitlab.haskell.org/help
participants (1)
-
Simon Jakobi (@sjakobi)