[Git][ghc/ghc][wip/haskell-nix-patches/musl64/ghc-9.6-missing-symbols-deadbeef] ghc-internal: hide linkerOptimistic in MiscFlags

jeffrey young (@doyougnu) gitlab at gitlab.haskell.org
Mon Oct 21 12:58:15 UTC 2024



jeffrey young pushed to branch wip/haskell-nix-patches/musl64/ghc-9.6-missing-symbols-deadbeef at Glasgow Haskell Compiler / GHC


Commits:
63b008da by doyougnu at 2024-10-21T08:57:30-04:00
ghc-internal: hide linkerOptimistic in MiscFlags

- - - - -


7 changed files:

- − docs/users_guide/9.12.1-notes.rst
- docs/users_guide/9.14.1-notes.rst
- libraries/ghc-internal/src/GHC/Internal/RTS/Flags.hsc
- 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


Changes:

=====================================
docs/users_guide/9.12.1-notes.rst deleted
=====================================
@@ -1,236 +0,0 @@
-.. _release-9-11-1:
-
-Version 9.12.1
-==============
-
-The significant changes to the various parts of the compiler are listed in the
-following sections. See the `migration guide
-<https://gitlab.haskell.org/ghc/ghc/-/wikis/migration/9.12>`_ on the GHC Wiki
-for specific guidance on migrating programs to this release.
-
-Language
-~~~~~~~~
-
-- New language extension: :extension:`OrPatterns` implements `GHC Proposal #522
-  <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0522-or-patterns.rst>`_).
-- GHC Proposal `#569 <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0569-multiline-strings.rst>`_
-  "Multiline string literals" has been implemented.
-  The following code is now accepted by GHC::
-
-    {-# LANGUAGE MultilineStrings #-}
-
-    x :: String
-    x =
-      """
-      This is a
-      multiline
-
-          string
-
-      literal
-      """
-
-  This feature is guarded behind :extension:`MultilineStrings`.
-
-- The ordering of variables used for visible type application has been changed in two cases.
-  It is supposed to be left-to-right, but due to an oversight, it was wrong:
-
-  - in an infix application ``f :: a `op` b``, it is now ``forall a op b.`` rather than
-    ``forall op a b.``
-  - in a linear type ``f :: a %m -> b``, it is now ``forall a m b.`` rather than
-    ``forall a b m.``.
-
-  This change is backwards-incompatible, although in practice we don't expect it
-  to cause significant disruption.
-
-- The built-in ``HasField`` class, used by :extension:`OverloadedRecordDot`, now
-  supports representation polymorphism (implementing part of `GHC Proposal #583
-  <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0583-hasfield-redesign.rst>`_).
-  This means that code using :extension:`UnliftedDatatypes` or
-  :extension:`UnliftedNewtypes` can now use :extension:`OverloadedRecordDot`.
-
-- Unboxed ``Float#``/``Double#`` literals now support the HexFloatLiterals extension
-  (`#22155 <https://gitlab.haskell.org/ghc/ghc/-/issues/22155>`_).
-
-- :extension:`UnliftedFFITypes`: GHC will now accept FFI types like: ``(# #) -> T`` where ``(# #)``
-  is used as the one and only function argument.
-
-- The venerable ``default`` declarations have been generalized. They can now name a class
-  other than ``Num`` and the class defaults can be exported. The functionality is guarded
-  by the new ``NamedDefaults`` language extension. See the `GHC proposal
-  <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0409-exportable-named-default.rst>`__
-  for details.
-
-- GHC now takes COMPLETE pragmas into consideration when deciding whether
-  pattern matches in do notation are fallible.
-
-- As part of `GHC Proposal #281 <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0281-visible-forall.rst>`_
-  GHC now accepts type syntax in expressions, namely function type arrow ``a -> b``,
-  constraint arrow ``a => b``, and ``forall`` telescopes: ::
-
-    g = f (forall a. Show a => a -> String)
-      where f :: forall a -> ...
-
-Compiler
-~~~~~~~~
-
-- Constructor ``PluginProv`` of type ``UnivCoProvenance``, relevant
-  for typing plugins, gets an extra ``DCoVarSet`` argument.
-  The argument is intended to contain the in-scope coercion variables
-  that the the proof represented by the coercion makes use of.
-  See ``Note [The importance of tracking free coercion variables]``
-  in ``GHC.Core.TyCo.Rep``, :ref:`constraint-solving-with-plugins`
-  and the migration guide.
-
-- The flag :ghc-flag:`-fprof-late` will no longer prevent top level constructors from being statically allocated.
-
-  It used to be the case that we would add a cost centre for bindings like ``foo = Just bar``.
-  This turned the binding into a CAF that would allocate the constructor on first evaluation.
-
-  However without the cost centre ``foo`` can be allocated at compile time. This reduces code-bloat and
-  reduces overhead for short-running applications.
-
-  The tradeoff is that calling ``whoCreated`` on top level value definitions like ``foo`` will be less informative.
-
-- A new flag :ghc-flag:`-fexpose-overloaded-unfoldings` has been added providing a lightweight alternative to :ghc-flag:`-fexpose-all-unfoldings`.
-
-- :ghc-flag:`-Wderiving-typeable` has been added to :ghc-flag:`-Wall`.
-
-- i386 Windows support is now completely removed amid massive cleanup
-  of legacy code to pave way for Arm64 Windows support (`#24883
-  <https://gitlab.haskell.org/ghc/ghc/-/issues/24883>`_). Rest
-  assured, this does not impact existing support for x86_64 Windows or
-  i386 Linux. For end users, the ``stdcall`` C calling convention is
-  now fully deprecated and GHC will unconditionally produce a warning
-  and treat it as ``ccall``. All C import/export declarations on
-  Windows should now use ``ccall``.
-
-- 32-bit macOS/iOS support has also been completely removed (`#24921
-  <https://gitlab.haskell.org/ghc/ghc/-/issues/24921>`_). This does
-  not affect existing support of apple systems on x86_64/aarch64.
-
-- The flag :ghc-flag:`-fignore-asserts` will now also enable the
-  :extension:`CPP` macro ``__GLASGOW_HASKELL_ASSERTS_IGNORED__`` (`#24967
-  <https://gitlab.haskell.org/ghc/ghc/-/issues/24967>`_).
-  This enables people to write their own custom assertion functions.
-  See :ref:`assertions`.
-
-- The flag :ghc-flag:`-fkeep-auto-rules` that forces GHC to keep auto generated
-  specialization rules was added. It was actually added ghc-9.10.1 already but
-  mistakenly not mentioned in the 9.10.1 changelog.
-
-- Fixed a bug that caused GHC to panic when using the aarch64 ncg and -fregs-graph
-  on certain programs. (#24941)
-
-- A new warning :ghc-flag:`-Wview-pattern-signatures` is introduced to notify users about
-  future changes in parsing of view patterns in combination with pattern signatures
-
-GHCi
-~~~~
-
-- Fix a bug where GHCi would not start alongside a local file called ``Prelude.hs``
-  or ``Prelude.lhs`` (:ghc-ticket:`10920`).
-
-
-Runtime system
-~~~~~~~~~~~~~~
-
-- Reduce fragmentation incurred by the nonmoving GC's segment allocator. In one application this reduced resident set size by 26%. See :ghc-ticket:`24150`.
-
-- Memory return logic now uses live bytes rather than live blocks to measure the size of the heap.
-  This primarily affects the non-moving GC, which should now be more willing to return memory to the OS.
-  Users who have fine-tuned the :rts-flag:`-F ⟨factor⟩`, :rts-flag:`-Fd ⟨factor⟩`, or :rts-flag:`-O ⟨size⟩` flags,
-  and use the non-moving GC, should see if adjustments are needed in light of this change.
-
-- The new runtime flag :rts-flag:`--read-tix-file=\<yes|no\>` allows to modify whether a preexisting .tix file is read in at the beginning of a program run.
-  The default is currently ``--read-tix-file=yes`` but will change to ``--read-tix-file=no`` in a future version of GHC.
-  For this reason, a warning is emitted if a .tix file is read in implicitly. You can silence this warning by explicitly passing ``--read-tix-file=yes``.
-  Details can be found in `GHC proposal 612 <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0612-fhpc-accumulation.md>`__.
-
-- Add new runtime flag :rts-flag:`--optimistic-linking` which instructs the
-  runtime linker to continue in the presence of unknown symbols. By default this
-  flag is not passed, preserving previous behavior.
-
-``base`` library
-~~~~~~~~~~~~~~~~
-
-- Add exception type metadata to SomeException's displayException and
-  "Exception:" header to the default handler
-  (i.e. ``GHC.Conc.Sync.uncaughtExceptionHandler``):
-
-  https://github.com/haskell/core-libraries-committee/issues/231
-  https://github.com/haskell/core-libraries-committee/issues/261
-
-- The `deprecation process of GHC.Pack <https://gitlab.haskell.org/ghc/ghc/-/issues/21461>` has come its term. The module has now been removed from ``base``.
-
-``ghc-prim`` library
-~~~~~~~~~~~~~~~~~~~~
-
-- Usage of deprecated primops is now correctly reported (#19629).
-- New primops `isMutableByteArrayWeaklyPinned#` and `isByteArrayWeaklyPinned#`
-  to allow users to avoid copying large arrays safely when dealing with ffi.
-  See the users guide for more details on the different kinds of
-  pinned arrays in 9.12.
-
-  This need for this distinction originally surfaced in https://gitlab.haskell.org/ghc/ghc/-/issues/22255
-
-
-``ghc`` library
-~~~~~~~~~~~~~~~
-
-``ghc-heap`` library
-~~~~~~~~~~~~~~~~~~~~
-
-``ghc-experimental`` library
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-``template-haskell`` library
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Included libraries
-~~~~~~~~~~~~~~~~~~
-
-The package database provided with this distribution also contains a number of
-packages other than GHC itself. See the changelogs provided with these packages
-for further change information.
-
-.. ghc-package-list::
-
-    libraries/array/array.cabal:                         Dependency of ``ghc`` library
-    libraries/base/base.cabal:                           Core library
-    libraries/binary/binary.cabal:                       Dependency of ``ghc`` library
-    libraries/bytestring/bytestring.cabal:               Dependency of ``ghc`` library
-    libraries/Cabal/Cabal/Cabal.cabal:                   Dependency of ``ghc-pkg`` utility
-    libraries/Cabal/Cabal-syntax/Cabal-syntax.cabal:     Dependency of ``ghc-pkg`` utility
-    libraries/containers/containers/containers.cabal:    Dependency of ``ghc`` library
-    libraries/deepseq/deepseq.cabal:                     Dependency of ``ghc`` library
-    libraries/directory/directory.cabal:                 Dependency of ``ghc`` library
-    libraries/exceptions/exceptions.cabal:               Dependency of ``ghc`` and ``haskeline`` library
-    libraries/filepath/filepath.cabal:                   Dependency of ``ghc`` library
-    compiler/ghc.cabal:                                  The compiler itself
-    libraries/ghci/ghci.cabal:                           The REPL interface
-    libraries/ghc-boot/ghc-boot.cabal:                   Internal compiler library
-    libraries/ghc-boot-th/ghc-boot-th.cabal:             Internal compiler library
-    libraries/ghc-compact/ghc-compact.cabal:             Core library
-    libraries/ghc-heap/ghc-heap.cabal:                   GHC heap-walking library
-    libraries/ghc-prim/ghc-prim.cabal:                   Core library
-    utils/haddock/haddock-api/haddock-api.cabal:         Dependency of ``haddock`` executable
-    utils/haddock/haddock-library/haddock-library.cabal: Dependency of ``haddock`` executable
-    libraries/haskeline/haskeline.cabal:                 Dependency of ``ghci`` executable
-    libraries/hpc/hpc.cabal:                             Dependency of ``hpc`` executable
-    libraries/integer-gmp/integer-gmp.cabal:             Core library
-    libraries/mtl/mtl.cabal:                             Dependency of ``Cabal`` library
-    libraries/parsec/parsec.cabal:                       Dependency of ``Cabal`` library
-    libraries/pretty/pretty.cabal:                       Dependency of ``ghc`` library
-    libraries/process/process.cabal:                     Dependency of ``ghc`` library
-    libraries/stm/stm.cabal:                             Dependency of ``haskeline`` library
-    libraries/template-haskell/template-haskell.cabal:   Core library
-    libraries/terminfo/terminfo.cabal:                   Dependency of ``haskeline`` library
-    libraries/text/text.cabal:                           Dependency of ``Cabal`` library
-    libraries/time/time.cabal:                           Dependency of ``ghc`` library
-    libraries/transformers/transformers.cabal:           Dependency of ``ghc`` library
-    libraries/unix/unix.cabal:                           Dependency of ``ghc`` library
-    libraries/Win32/Win32.cabal:                         Dependency of ``ghc`` library
-    libraries/xhtml/xhtml.cabal:                         Dependency of ``haddock`` executable
-    libraries/os-string/os-string.cabal:                 Dependency of ``filepath`` library
-    libraries/file-io/file-io.cabal:                     Dependency of ``directory`` library


=====================================
docs/users_guide/9.14.1-notes.rst
=====================================
@@ -29,6 +29,10 @@ GHCi
 Runtime system
 ~~~~~~~~~~~~~~
 
+- Add new runtime flag :rts-flag:`--optimistic-linking` which instructs the
+  runtime linker to continue in the presence of unknown symbols. By default this
+  flag is not passed, preserving previous behavior.
+
 Cmm
 ~~~
 


=====================================
libraries/ghc-internal/src/GHC/Internal/RTS/Flags.hsc
=====================================
@@ -162,7 +162,8 @@ data MiscFlags = MiscFlags
     , disableDelayedOsMemoryReturn :: Bool
     , internalCounters      :: Bool
     , linkerAlwaysPic       :: Bool
-    , linkerOptimistic      :: Bool
+    -- TODO: #25354 uncomment to expose this flag to base.
+    -- , linkerOptimistic      :: Bool
     , linkerMemBase         :: Word
       -- ^ address to ask the OS for memory for the linker, 0 ==> off
     , ioManager             :: IoManagerFlag
@@ -537,8 +538,6 @@ getMiscFlags = do
                   (#{peek MISC_FLAGS, internalCounters} ptr :: IO CBool))
             <*> (toBool <$>
                   (#{peek MISC_FLAGS, linkerAlwaysPic} ptr :: IO CBool))
-            <*> (toBool <$>
-                  (#{peek MISC_FLAGS, linkerOptimistic} ptr :: IO CBool))
             <*> #{peek MISC_FLAGS, linkerMemBase} ptr
             <*> (toEnum . fromIntegral
                  <$> (#{peek MISC_FLAGS, ioManager} ptr :: IO Word32))


=====================================
testsuite/tests/interface-stability/base-exports.stdout
=====================================
@@ -9111,7 +9111,7 @@ module GHC.RTS.Flags where
   type IoSubSystem :: *
   data IoSubSystem = IoPOSIX | IoNative
   type MiscFlags :: *
-  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerOptimistic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
+  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
   type ParFlags :: *
   data ParFlags = ParFlags {nCapabilities :: GHC.Internal.Word.Word32, migrate :: GHC.Types.Bool, maxLocalSparks :: GHC.Internal.Word.Word32, parGcEnabled :: GHC.Types.Bool, parGcGen :: GHC.Internal.Word.Word32, parGcLoadBalancingEnabled :: GHC.Types.Bool, parGcLoadBalancingGen :: GHC.Internal.Word.Word32, parGcNoSyncWithIdle :: GHC.Internal.Word.Word32, parGcThreads :: GHC.Internal.Word.Word32, setAffinity :: GHC.Types.Bool}
   type ProfFlags :: *


=====================================
testsuite/tests/interface-stability/base-exports.stdout-javascript-unknown-ghcjs
=====================================
@@ -12153,7 +12153,7 @@ module GHC.RTS.Flags where
   type IoSubSystem :: *
   data IoSubSystem = IoPOSIX | IoNative
   type MiscFlags :: *
-  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerOptimistic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
+  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
   type ParFlags :: *
   data ParFlags = ParFlags {nCapabilities :: GHC.Internal.Word.Word32, migrate :: GHC.Types.Bool, maxLocalSparks :: GHC.Internal.Word.Word32, parGcEnabled :: GHC.Types.Bool, parGcGen :: GHC.Internal.Word.Word32, parGcLoadBalancingEnabled :: GHC.Types.Bool, parGcLoadBalancingGen :: GHC.Internal.Word.Word32, parGcNoSyncWithIdle :: GHC.Internal.Word.Word32, parGcThreads :: GHC.Internal.Word.Word32, setAffinity :: GHC.Types.Bool}
   type ProfFlags :: *


=====================================
testsuite/tests/interface-stability/base-exports.stdout-mingw32
=====================================
@@ -9335,7 +9335,7 @@ module GHC.RTS.Flags where
   type IoSubSystem :: *
   data IoSubSystem = IoPOSIX | IoNative
   type MiscFlags :: *
-  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerOptimistic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
+  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
   type ParFlags :: *
   data ParFlags = ParFlags {nCapabilities :: GHC.Internal.Word.Word32, migrate :: GHC.Types.Bool, maxLocalSparks :: GHC.Internal.Word.Word32, parGcEnabled :: GHC.Types.Bool, parGcGen :: GHC.Internal.Word.Word32, parGcLoadBalancingEnabled :: GHC.Types.Bool, parGcLoadBalancingGen :: GHC.Internal.Word.Word32, parGcNoSyncWithIdle :: GHC.Internal.Word.Word32, parGcThreads :: GHC.Internal.Word.Word32, setAffinity :: GHC.Types.Bool}
   type ProfFlags :: *


=====================================
testsuite/tests/interface-stability/base-exports.stdout-ws-32
=====================================
@@ -9111,7 +9111,7 @@ module GHC.RTS.Flags where
   type IoSubSystem :: *
   data IoSubSystem = IoPOSIX | IoNative
   type MiscFlags :: *
-  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerOptimistic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
+  data MiscFlags = MiscFlags {tickInterval :: RtsTime, installSignalHandlers :: GHC.Types.Bool, installSEHHandlers :: GHC.Types.Bool, generateCrashDumpFile :: GHC.Types.Bool, generateStackTrace :: GHC.Types.Bool, machineReadable :: GHC.Types.Bool, disableDelayedOsMemoryReturn :: GHC.Types.Bool, internalCounters :: GHC.Types.Bool, linkerAlwaysPic :: GHC.Types.Bool, linkerMemBase :: GHC.Types.Word, ioManager :: IoManagerFlag, numIoWorkerThreads :: GHC.Internal.Word.Word32}
   type ParFlags :: *
   data ParFlags = ParFlags {nCapabilities :: GHC.Internal.Word.Word32, migrate :: GHC.Types.Bool, maxLocalSparks :: GHC.Internal.Word.Word32, parGcEnabled :: GHC.Types.Bool, parGcGen :: GHC.Internal.Word.Word32, parGcLoadBalancingEnabled :: GHC.Types.Bool, parGcLoadBalancingGen :: GHC.Internal.Word.Word32, parGcNoSyncWithIdle :: GHC.Internal.Word.Word32, parGcThreads :: GHC.Internal.Word.Word32, setAffinity :: GHC.Types.Bool}
   type ProfFlags :: *



View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/63b008da8d18b5ffd1691f62d91a7e1df92f997f

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/63b008da8d18b5ffd1691f62d91a7e1df92f997f
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/20241021/64532307/attachment-0001.html>


More information about the ghc-commits mailing list