[Git][ghc/ghc][wip/clc-86] 81 commits: Change WarningWithFlag to plural WarningWithFlags
Melanie Brown (@mixphix)
gitlab at gitlab.haskell.org
Sat Jun 24 21:58:27 UTC 2023
Melanie Brown pushed to branch wip/clc-86 at Glasgow Haskell Compiler / GHC
Commits:
a1f350e2 by Oleg Grenrus at 2023-06-13T09:42:16-04:00
Change WarningWithFlag to plural WarningWithFlags
Resolves #22825
Now each diagnostic can name multiple different warning flags for its reason.
There is currently one use case: missing signatures.
Currently we need to check which warning flags are enabled when
generating the diagnostic, which is against the declarative nature of
the diagnostic framework.
This patch allows a warning diagnostic to have multiple warning flags,
which makes setup more declarative.
The WarningWithFlag pattern synonym is added for backwards compatibility
The 'msgEnvReason' field is added to MsgEnvelope to store the
`ResolvedDiagnosticReason`, which accounts for the enabled flags, and
then that is used for pretty printing the diagnostic.
- - - - -
ec01f0ec by Matthew Pickering at 2023-06-13T09:42:59-04:00
Add a test Way for running ghci with Core optimizations
Tracking ticket: #23059
This runs compile_and_run tests with optimised code with bytecode
interpreter
Changed submodules: hpc, process
Co-authored-by: Torsten Schmits <git at tryp.io>
- - - - -
c6741e72 by Rodrigo Mesquita at 2023-06-13T09:43:38-04:00
Configure -Qunused-arguments instead of hardcoding it
When GHC invokes clang, it currently passes -Qunused-arguments to
discard warnings resulting from GHC using multiple options that aren't
used.
In this commit, we configure -Qunused-arguments into the Cc options
instead of checking if the compiler is clang at runtime and hardcoding
the flag into GHC.
This is part of the effort to centralise toolchain information in
toolchain target files at configure time with the end goal of a runtime
retargetable GHC.
This also means we don't need to call getCompilerInfo ever, which
improves performance considerably (see !10589).
Metric Decrease:
PmSeriesG
T10421
T11303b
T12150
T12227
T12234
T12425
T13035
T13253-spj
T13386
T15703
T16875
T17836b
T17977
T17977b
T18140
T18282
T18304
T18698a
T18698b
T18923
T20049
T21839c
T3064
T5030
T5321FD
T5321Fun
T5837
T6048
T9020
T9198
T9872d
T9961
- - - - -
0128db87 by Victor Cacciari Miraldo at 2023-06-13T09:44:18-04:00
Improve docs for Data.Fixed; adds 'realToFrac' as an option for conversion
between different precisions.
- - - - -
95b69cfb by Ryan Scott at 2023-06-13T09:44:55-04:00
Add regression test for #23143
!10541, the fix for #23323, also fixes #23143. Let's add a regression test to
ensure that it stays fixed.
Fixes #23143.
- - - - -
ed2dbdca by Emily Martins at 2023-06-13T09:45:37-04:00
delete GHCi.UI.Tags module and remove remaining references
Co-authored-by: Tilde Rose <t1lde at protonmail.com>
- - - - -
c90d96e4 by Victor Cacciari Miraldo at 2023-06-13T09:46:26-04:00
Add regression test for 17328
- - - - -
de58080c by Victor Cacciari Miraldo at 2023-06-13T09:46:26-04:00
Skip checking whether constructors are in scope when deriving
newtype instances.
Fixes #17328
- - - - -
5e3c2b05 by Philip Hazelden at 2023-06-13T09:47:07-04:00
Don't suggest `DeriveAnyClass` when instance can't be derived.
Fixes #19692.
Prototypical cases:
class C1 a where
x1 :: a -> Int
data G1 = G1 deriving C1
class C2 a where
x2 :: a -> Int
x2 _ = 0
data G2 = G2 deriving C2
Both of these used to give this suggestion, but for C1 the suggestion
would have failed (generated code with undefined methods, which compiles
but warns). Now C2 still gives the suggestion but C1 doesn't.
- - - - -
80a0b099 by David Binder at 2023-06-13T09:47:49-04:00
Add testcase for error GHC-00711 to testsuite
- - - - -
e4b33a1d by Oleg Grenrus at 2023-06-14T07:01:21-04:00
Add -Wmissing-poly-kind-signatures
Implements #22826
This is a restricted version of -Wmissing-kind-signatures shown only for polykinded types.
- - - - -
f8395b94 by doyougnu at 2023-06-14T07:02:01-04:00
ci: special case in req_host_target_ghc for JS
- - - - -
b852a5b6 by Gergo ERDI at 2023-06-14T07:02:42-04:00
When forcing a `ModIface`, force the `MINIMAL` pragmas in class definitions
Fixes #23486
- - - - -
c29b45ee by Krzysztof Gogolewski at 2023-06-14T07:03:19-04:00
Add a testcase for #20076
Remove 'recursive' in the error message, since the error
can arise without recursion.
- - - - -
b80ef202 by Krzysztof Gogolewski at 2023-06-14T07:03:56-04:00
Use tcInferFRR to prevent bad generalisation
Fixes #23176
- - - - -
bd8ef37d by Matthew Pickering at 2023-06-14T07:04:31-04:00
ci: Add dependenices on necessary aarch64 jobs for head.hackage ci
These need to be added since we started testing aarch64 on head.hackage
CI. The jobs will sometimes fail because they will start before the
relevant aarch64 job has finished.
Fixes #23511
- - - - -
a0c27cee by Vladislav Zavialov at 2023-06-14T07:05:08-04:00
Add standalone kind signatures for Code and TExp
CodeQ and TExpQ already had standalone kind signatures
even before this change:
type TExpQ :: TYPE r -> Kind.Type
type CodeQ :: TYPE r -> Kind.Type
Now Code and TExp have signatures too:
type TExp :: TYPE r -> Kind.Type
type Code :: (Kind.Type -> Kind.Type) -> TYPE r -> Kind.Type
This is a stylistic change.
- - - - -
e70c1245 by Tom Ellis at 2023-06-14T07:05:48-04:00
Warn that GHC.TypeLits.Internal should not be used
- - - - -
100650e3 by Tom Ellis at 2023-06-14T07:05:48-04:00
Warn that GHC.TypeNats.Internal should not be used
- - - - -
078250ef by Jacco Krijnen at 2023-06-14T17:17:53-04:00
Add more flags for dumping core passes (#23491)
- - - - -
1b7604af by Jacco Krijnen at 2023-06-14T17:17:53-04:00
Add tests for dumping flags (#23491)
- - - - -
42000000 by Sebastian Graf at 2023-06-14T17:18:29-04:00
Provide a demand signature for atomicModifyMutVar.# (#23047)
Fixes #23047
- - - - -
8f27023b by Ben Gamari at 2023-06-15T03:10:24-04:00
compiler: Cross-reference Note [StgToJS design]
In particular, the numeric representations are quite useful context in a
few places.
- - - - -
a71b60e9 by Andrei Borzenkov at 2023-06-15T03:11:00-04:00
Implement the -Wimplicit-rhs-quantification warning (#23510)
GHC Proposal #425 "Invisible binders in type declarations" forbids
implicit quantification of type variables that occur free on the
right-hand side of a type synonym but are not mentioned on the left-hand side.
The users are expected to rewrite this using invisible binders:
type T1 :: forall a . Maybe a
type T1 = 'Nothing :: Maybe a -- old
type T1 @a = 'Nothing :: Maybe a -- new
Since the @k-binders are a new feature, we need to wait for three releases
before we require the use of the new syntax. In the meantime, we ought to
provide users with a new warning, -Wimplicit-rhs-quantification, that would
detect when such implicit quantification takes place, and include it in -Wcompat.
- - - - -
0078dd00 by Sven Tennie at 2023-06-15T03:11:36-04:00
Minor refactorings to mkSpillInstr and mkLoadInstr
Better error messages. And, use the existing `off` constant to reduce
duplication.
- - - - -
1792b57a by doyougnu at 2023-06-15T03:12:17-04:00
JS: merge util modules
Merge Core and StgUtil modules for StgToJS pass.
Closes: #23473
- - - - -
469ff08b by Vladislav Zavialov at 2023-06-15T03:12:57-04:00
Check visibility of nested foralls in can_eq_nc (#18863)
Prior to this change, `can_eq_nc` checked the visibility of the
outermost layer of foralls:
forall a. forall b. forall c. phi1
forall x. forall y. forall z. phi2
^^
up to here
Then it delegated the rest of the work to `can_eq_nc_forall`, which
split off all foralls:
forall a. forall b. forall c. phi1
forall x. forall y. forall z. phi2
^^
up to here
This meant that some visibility flags were completely ignored.
We fix this oversight by moving the check to `can_eq_nc_forall`.
- - - - -
59c9065b by Luite Stegeman at 2023-06-15T03:13:37-04:00
JS: use regular mask for blocking IO
Blocking IO used uninterruptibleMask which should make any thread
blocked on IO unreachable by async exceptions (such as those from
timeout). This changes it to a regular mask.
It's important to note that the nodejs runtime does not actually
interrupt the blocking IO when the Haskell thread receives an
async exception, and that file positions may be updated and buffers
may be written after the Haskell thread has already resumed.
Any file descriptor affected by an async exception interruption
should therefore be used with caution.
- - - - -
907c06c3 by Luite Stegeman at 2023-06-15T03:13:37-04:00
JS: nodejs: do not set 'readable' handler on stdin at startup
The Haskell runtime used to install a 'readable' handler on stdin
at startup in nodejs. This would cause the nodejs system to start
buffering the stream, causing data loss if the stdin file
descriptor is passed to another process.
This change delays installation of the 'readable' handler until
the first read of stdin by Haskell code.
- - - - -
a54b40a9 by Luite Stegeman at 2023-06-15T03:13:37-04:00
JS: reserve one more virtual (negative) file descriptor
This is needed for upcoming support of the process package
- - - - -
78cd1132 by Andrei Borzenkov at 2023-06-15T11:16:11+04:00
Report scoped kind variables at the type-checking phase (#16635)
This patch modifies the renamer to respect ScopedTypeVariables in kind
signatures. This means that kind variables bound by the outermost
`forall` now scope over the type:
type F = '[Right @a @() () :: forall a. Either a ()]
-- ^^^^^^^^^^^^^^^ ^^^
-- in scope here bound here
However, any use of such variables is a type error, because we don't
have type-level lambdas to bind them in Core. This is described in the
new Note [Type variable scoping errors during type check] in GHC.Tc.Types.
- - - - -
4a41ba75 by Sylvain Henry at 2023-06-15T18:09:15-04:00
JS: testsuite: use correct ticket number
Replace #22356 with #22349 for these tests because #22356 has been fixed
but now these tests fail because of #22349.
- - - - -
15f150c8 by Sylvain Henry at 2023-06-15T18:09:16-04:00
JS: testsuite: update ticket numbers
- - - - -
08d8e9ef by Sylvain Henry at 2023-06-15T18:09:16-04:00
JS: more triage
- - - - -
e8752e12 by Krzysztof Gogolewski at 2023-06-15T18:09:52-04:00
Fix test T18522-deb-ppr
Fixes #23509
- - - - -
62c56416 by Ben Price at 2023-06-16T05:52:39-04:00
Lint: more details on "Occurrence is GlobalId, but binding is LocalId"
This is helpful when debugging a pass which accidentally shadowed a
binder.
- - - - -
d4c10238 by Ryan Hendrickson at 2023-06-16T05:53:22-04:00
Clean a stray bit of text in user guide
- - - - -
93647b5c by Vladislav Zavialov at 2023-06-16T05:54:02-04:00
testsuite: Add forall visibility test cases
The added tests ensure that the type checker does not confuse
visible and invisible foralls.
VisFlag1: kind-checking type applications and inferred type variable instantiations
VisFlag1_ql: kind-checking Quick Look instantiations
VisFlag2: kind-checking type family instances
VisFlag3: checking kind annotations on type parameters of associated type families
VisFlag4: checking kind annotations on type parameters in type declarations with SAKS
VisFlag5: checking the result kind annotation of data family instances
- - - - -
a5f0c00e by Sylvain Henry at 2023-06-16T12:25:40-04:00
JS: factorize SaneDouble into its own module
Follow-up of b159e0e9 whose ticket is #22736
- - - - -
0baf9e7c by Krzysztof Gogolewski at 2023-06-16T12:26:17-04:00
Add tests for #21973
- - - - -
640ea90e by Diego Diverio at 2023-06-16T23:07:55-04:00
Update documentation for `<**>`
- - - - -
2469a813 by Diego Diverio at 2023-06-16T23:07:55-04:00
Update text
- - - - -
1f515bbb by Diego Diverio at 2023-06-16T23:07:55-04:00
Update examples
- - - - -
7af99a0d by Diego Diverio at 2023-06-16T23:07:55-04:00
Update documentation to actually display code correctly
- - - - -
800aad7e by Andrei Borzenkov at 2023-06-16T23:08:32-04:00
Type/data instances: require that variables on the RHS are mentioned on the LHS (#23512)
GHC Proposal #425 "Invisible binders in type declarations" restricts the
scope of type and data family instances as follows:
In type family and data family instances, require that every variable
mentioned on the RHS must also occur on the LHS.
For example, here are three equivalent type instance definitions accepted before this patch:
type family F1 a :: k
type instance F1 Int = Any :: j -> j
type family F2 a :: k
type instance F2 @(j -> j) Int = Any :: j -> j
type family F3 a :: k
type instance forall j. F3 Int = Any :: j -> j
- In F1, j is implicitly quantified and it occurs only on the RHS;
- In F2, j is implicitly quantified and it occurs both on the LHS and the RHS;
- In F3, j is explicitly quantified.
Now F1 is rejected with an out-of-scope error, while F2 and F3 continue to be accepted.
- - - - -
9132d529 by Sylvain Henry at 2023-06-18T02:50:34-04:00
JS: testsuite: use correct ticket numbers
- - - - -
c3a1274c by Sylvain Henry at 2023-06-18T02:50:34-04:00
JS: don't dump eventlog to stderr by default
Fix T16707
Bump stm submodule
- - - - -
89bb8ad8 by Ryan Hendrickson at 2023-06-18T02:51:14-04:00
Fix TH name lookup for symbolic tycons (#23525)
- - - - -
cb9e1ce4 by Finley McIlwaine at 2023-06-18T21:16:45-06:00
IPE data compression
IPE data resulting from the `-finfo-table-map` flag may now be
compressed by configuring the GHC build with the
`--enable-ipe-data-compression` flag. This results in about a 20%
reduction in the size of IPE-enabled build results.
The compression library, zstd, may optionally be statically linked by
configuring with the `--enabled-static-libzstd` flag (on non-darwin
platforms)
libzstd version 1.4.0 or greater is required.
- - - - -
0cbc3ae0 by Gergő Érdi at 2023-06-19T09:11:38-04:00
Add `IfaceWarnings` to represent the `ModIface`-storable parts
of a `Warnings GhcRn`.
Fixes #23516
- - - - -
3e80c2b4 by Arnaud Spiwack at 2023-06-20T03:19:41-04:00
Avoid desugaring non-recursive lets into recursive lets
This prepares for having linear let expressions in the frontend.
When desugaring lets, SPECIALISE statements create more copies of a
let binding. Because of the rewrite rules attached to the bindings,
there are dependencies between the generated binds.
Before this commit, we simply wrapped all these in a mutually
recursive let block, and left it to the simplified to sort it out.
With this commit: we are careful to generate the bindings in
dependency order, so that we can wrap them in consecutive lets (if the
source is non-recursive).
- - - - -
9fad49e0 by Ben Gamari at 2023-06-20T03:20:19-04:00
rts: Do not call exit() from SIGINT handler
Previously `shutdown_handler` would call `stg_exit` if the scheduler was
Oalready found to be in `SCHED_INTERRUPTING` state (or higher). However,
`stg_exit` is not signal-safe as it calls `exit` (which calls `atexit`
handlers). The only safe thing to do in this situation is to call
`_exit`, which terminates with minimal cleanup.
Fixes #23417.
- - - - -
7485f848 by Bodigrim at 2023-06-20T03:20:57-04:00
Bump Cabal submodule
This requires changing the recomp007 test because now cabal passes
`this-unit-id` to executable components, and that unit-id contains a
hash which includes the ABI of the dependencies. Therefore changing the
dependencies means that -this-unit-id changes and recompilation is
triggered.
The spririt of the test is to test GHC's recompilation logic assuming
that `-this-unit-id` is constant, so we explicitly pass `-ipid` to
`./configure` rather than letting `Cabal` work it out.
- - - - -
1464a2a8 by mangoiv at 2023-06-20T03:21:34-04:00
[feat] add a hint to `HasField` error message
- add a hint that indicates that the record that the record dot is used
on might just be missing a field
- as the intention of the programmer is not entirely clear, it is only
shown if the type is known
- This addresses in part issue #22382
- - - - -
b65e78dd by Ben Gamari at 2023-06-20T16:56:43-04:00
rts/ipe: Fix unused lock warning
- - - - -
6086effd by Ben Gamari at 2023-06-20T16:56:44-04:00
rts/ProfilerReportJson: Fix memory leak
- - - - -
1e48c434 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Various warnings fixes
- - - - -
471486b9 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Fix printf format mismatch
- - - - -
80603fb3 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Fix incorrect #include <sys/poll.h>
According to Alpine's warnings and poll(2), <poll.h> should be
preferred.
- - - - -
ff18e6fd by Ben Gamari at 2023-06-20T16:56:44-04:00
nonmoving: Fix unused definition warrnings
- - - - -
6e7fe8ee by Ben Gamari at 2023-06-20T16:56:44-04:00
Disable futimens on Darwin.
See #22938
- - - - -
b7706508 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Fix incorrect CPP guard
- - - - -
94f00e9b by Ben Gamari at 2023-06-20T16:56:44-04:00
hadrian: Ensure that -Werror is passed when compiling the RTS.
Previously the `+werror` transformer would only pass `-Werror` to GHC,
which does not ensure that the same is passed to the C compiler when
building the RTS. Arguably this is itself a bug but for now we will just
work around this by passing `-optc-Werror` to GHC.
I tried to enable `-Werror` in all C compilations but the boot libraries
are something of a portability nightmare.
- - - - -
5fb54bf8 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Disable `#pragma GCC`s on clang compilers
Otherwise the build fails due to warnings. See #23530.
- - - - -
cf87f380 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Fix capitalization of prototype
- - - - -
17f250d7 by Ben Gamari at 2023-06-20T16:56:44-04:00
rts: Fix incorrect format specifier
- - - - -
0ff1c501 by Josh Meredith at 2023-06-20T16:57:20-04:00
JS: remove js_broken(22576) in favour of the pre-existing wordsize(32) condition (#22576)
- - - - -
3d1d42b7 by Finley McIlwaine at 2023-06-21T12:04:58-04:00
Memory usage fixes for Haddock
- Do not include `mi_globals` in the `NoBackend` backend. It was only included
for Haddock, but Haddock does not actually need it. This causes a 200MB
reduction in max residency when generating haddocks on the Agda codebase
(roughly 1GB to 800MB).
- Make haddock_{parser,renamer}_perf tests more accurate by forcing docs to
be written to interface files using `-fwrite-interface`
Bumps haddock submodule.
Metric Decrease:
haddock.base
- - - - -
8185b1c2 by Finley McIlwaine at 2023-06-21T12:04:58-04:00
Fix associated data family doc structure items
Associated data families were being given their own export DocStructureItems,
which resulted in them being documented separately from their classes in
haddocks. This commit fixes it.
- - - - -
4d356ea3 by Sylvain Henry at 2023-06-21T12:04:59-04:00
JS: implement TH support
- Add ghc-interp.js bootstrap script for the JS interpreter
- Interactively link and execute iserv code from the ghci package
- Incrementally load and run JS code for splices into the running iserv
Co-authored-by: Luite Stegeman <stegeman at gmail.com>
- - - - -
3249cf12 by Sylvain Henry at 2023-06-21T12:04:59-04:00
Don't use getKey
- - - - -
f84ff161 by Sylvain Henry at 2023-06-21T12:04:59-04:00
Stg: return imported FVs
This is used to determine what to link when using the interpreter.
For now it's only used by the JS interpreter but it could easily be used
by the native interpreter too (instead of extracting names from compiled BCOs).
- - - - -
fab2ad23 by Sylvain Henry at 2023-06-21T12:04:59-04:00
Fix some recompilation avoidance tests
- - - - -
a897dc13 by Sylvain Henry at 2023-06-21T12:04:59-04:00
TH_import_loop is now broken as expected
- - - - -
dbb4ad51 by Sylvain Henry at 2023-06-21T12:04:59-04:00
JS: always recompile when TH is enabled (cf #23013)
- - - - -
711b1d24 by Bartłomiej Cieślar at 2023-06-21T12:59:27-04:00
Add support for deprecating exported items (proposal #134)
This is an implementation of the deprecated exports proposal #134.
The proposal introduces an ability to introduce warnings to exports.
This allows for deprecating a name only when it is exported from a specific
module, rather than always depreacting its usage. In this example:
module A ({-# DEPRECATED "do not use" #-} x) where
x = undefined
---
module B where
import A(x)
`x` will emit a warning when it is explicitly imported.
Like the declaration warnings, export warnings are first accumulated within
the `Warnings` struct, then passed into the ModIface, from which they are
then looked up and warned about in the importing module in the `lookup_ie`
helpers of the `filterImports` function (for the explicitly imported names)
and in the `addUsedGRE(s)` functions where they warn about regular usages
of the imported name.
In terms of the AST information, the custom warning is stored in the
extension field of the variants of the `IE` type (see Trees that Grow for
more information).
The commit includes a bump to the haddock submodule added in MR #28
Signed-off-by: Bartłomiej Cieślar <bcieslar2001 at gmail.com>
- - - - -
c1865854 by Ben Gamari at 2023-06-21T12:59:30-04:00
configure: Bump version to 9.8
Bumps Haddock submodule
- - - - -
4e1de71c by Ben Gamari at 2023-06-21T21:07:48-04:00
configure: Bump version to 9.9
Bumps haddock submodule.
- - - - -
5b6612bc by Ben Gamari at 2023-06-23T03:56:49-04:00
rts: Work around missing prototypes errors
Darwin's toolchain inexpliciably claims that `write_barrier` and friends
have declarations without prototypes, despite the fact that (a) they are
definitions, and (b) the prototypes appear only a few lines above. Work
around this by making the definitions proper prototypes.
- - - - -
43b66a13 by Matthew Pickering at 2023-06-23T03:57:26-04:00
ghcup-metadata: Fix date modifier (M = minutes, m = month)
Fixes #23552
- - - - -
d0c2da47 by Melanie Brown at 2023-06-24T17:57:47-04:00
Merge branch 'master' into wip/clc-86
- - - - -
30 changed files:
- .gitlab-ci.yml
- .gitlab/gen_ci.hs
- .gitlab/jobs.yaml
- compiler/GHC.hs
- compiler/GHC/Builtin/Names.hs
- compiler/GHC/Builtin/primops.txt.pp
- compiler/GHC/CmmToAsm/AArch64/Instr.hs
- compiler/GHC/Core/Lint.hs
- compiler/GHC/Core/Type.hs
- compiler/GHC/Data/BooleanFormula.hs
- compiler/GHC/Driver/Backend.hs
- compiler/GHC/Driver/Config/Core/Lint.hs
- compiler/GHC/Driver/Errors.hs
- compiler/GHC/Driver/Flags.hs
- compiler/GHC/Driver/Main.hs
- compiler/GHC/Driver/Make.hs
- compiler/GHC/Driver/Pipeline.hs
- compiler/GHC/Driver/Pipeline/Execute.hs
- compiler/GHC/Driver/Session.hs
- compiler/GHC/Hs/Doc.hs
- compiler/GHC/Hs/ImpExp.hs
- compiler/GHC/Hs/Type.hs
- compiler/GHC/HsToCore/Binds.hs
- compiler/GHC/HsToCore/Docs.hs
- compiler/GHC/HsToCore/Expr.hs
- compiler/GHC/Iface/Decl.hs
- compiler/GHC/Iface/Load.hs
- compiler/GHC/Iface/Make.hs
- compiler/GHC/Iface/Recomp.hs
- compiler/GHC/Iface/Syntax.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/1d669e2574926d5052767c57e8c8775efc105ac1...d0c2da47f613fd5cc74be75ba4c33c72d20b8018
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/1d669e2574926d5052767c57e8c8775efc105ac1...d0c2da47f613fd5cc74be75ba4c33c72d20b8018
You're receiving this email because of your account on gitlab.haskell.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230624/de5a6265/attachment-0001.html>
More information about the ghc-commits
mailing list