GHC 9.6.7 rc2 available

Luite Stegeman stegeman at gmail.com
Sun Feb 16 05:45:11 UTC 2025


The GHC developers are very pleased to announce the availability
of the second release candidate of GHC 9.6.7. Binary distributions,
source distributions, and documentation are available at

            https://downloads.haskell.org/ghc/9.6.7-rc2

We hope to have this release available via ghcup shortly. Haskell
Language Server does not yet build with GHC 9.6.7. See the note below.

If all goes according to plan, we expect that the final release of GHC
9.6.7 will be available on February 28.

Release candidate 2 contains the following changes relative to (the
unannounced) release candidate 1:

- the symbol atomic_inc64 is no longer exported from the RTS

GHC 9.6.7 will bring a number of fixes, including:

- GHC’s internal Unique type has been widened to 64-bits on 32-bit
architectures, avoiding potential miscompilations on large projects.
- Fix a runtime crash when using the compacting GC, caused by black
holes in large objects.
- Added new flags -fspec-eval and -fspec-eval-dictfun to allow
switching off speculative evaluation.

The following libraries have been updated since GHC 9.6.6:

- base-4.18.3.0 (the version number in the rc2 release notes is incorrect)
- filepath-1.4.301.0
- unix-2.8.6.0
- bytestring-0.11.5.4
- array-0.5.8.0

A more detailed description can be found in the [release notes] and a
full list of changes in [GHC!13841] and [GHC!13891]

Note about Haskell Language Server and building GHC 9.8+:

The change of Unique to 64 bit [GHC#22010] adds the exported symbol
ghc_unique_counter64 to the RTS. Unfortunately it's impossible to
avoid this without breaking other things. If you encounter a linker
error related to ghc_unique_counter64 when building GHC (or building a
GHC-derived package like ghc-lib-parser) with GHC 9.6.7, you probably
have to add this [fix] to the program you're building.

At the time of writing all released GHC 9.8 versions are affected, as
well as the latest version of ghc-lib-parser-9.8 on hackage (which is
a dependency of Haskell Language Server).

We would like to thank GitHub, IOG, the Zw3rk stake pool,
Well-Typed, Tweag I/O, Serokell, Equinix, SimSpace, the Haskell
Foundation, and other anonymous contributors whose on-going financial
and in-kind support has facilitated GHC maintenance and release
management over the years. Finally, this release would not have been
possible without the hundreds of open-source contributors whose work
comprise this release.

Please give this release candidate a try and open a [ticket] if you see
anything amiss.

~ Luite

[release notes]:
https://downloads.haskell.org/ghc/9.6.7-rc2/docs/users_guide/9.6.7-notes.html
[GHC!13841]: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/13841
[GHC!13891]: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/13891
[GHC#22010]: https://gitlab.haskell.org/ghc/ghc/-/issues/22010
[fix] https://gitlab.haskell.org/ghc/ghc/-/merge_requests/13743
[ticket] https://gitlab.haskell.org/ghc/ghc/-/issues/new


More information about the ghc-devs mailing list