# GHC 9.4.4 is now available!

**URL:** <https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481>\
**Category:** Announcements\
**Created:** [December 24, 2022, 10:30pm UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481 "2022-12-24T22:30:57Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![bgamari](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/bgamari/32/3599_2.png) [@bgamari](https://discourse.haskell.org/u/bgamari)\
**Post date:** [December 24, 2022, 10:30pm UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481/1 "2022-12-24T22:30:57Z")

</div>

The GHC developers are happy to announce the availability of GHC 9.4.4. Binary  
distributions, source distributions, and documentation are available at  
[downloads.haskell.org](https://downloads.haskell.org/ghc/9.4.4).

This release is primarily a bugfix release. Bugs fixed include:

- An issue where the wrong labels were used in the eventlog for events emitted  
when using info table profiling which was broken in 9.4.3 (#22452)
- Fix a long standing bug where invalid eventlogs would be produced with long  
command-lines (#20221)
- Fix a regression in eta-expansion which resulted in serious performance  
regressions in 9.4.3 (#22424)
- Fix the `-fdefer-diagnostics` flag (#22391)
- Fixes to several subtle compiler panics. (#22491, #22416, #22549, #22475, #22039)
- Add necessary write barriers to `IORef` operations, avoiding potential  
soundness issues on architectures with weakly-ordered memory models  
(#22468)

Note that, as GHC 9.4 is the first release series where the release artifacts  
are all generated by our new Hadrian build system, it is possible that there  
will be packaging issues. If you enounter trouble while using a binary  
distribution, please open a [ticket](https://gitlab.haskell.org/ghc/ghc/-/issues/new). Likewise, if you are a downstream  
packager, do consider migrating to [Hadrian](https://gitlab.haskell.org/ghc/ghc/-/blob/e2520df3fffa0cf22fb19c5fb872832d11c07d35/hadrian) to run your build; the Hadrian  
build system can be built using `cabal-install`, `stack`, or the in-tree  
[bootstrap script](https://gitlab.haskell.org/ghc/ghc/-/blob/e2520df3fffa0cf22fb19c5fb872832d11c07d35/hadrian/bootstrap/README.md). See the accompanying [blog post](https://www.haskell.org/ghc/blog/20220805-make-to-hadrian.html) for details on  
migrating packaging to Hadrian.

We would also like to emphasize that GHC 9.4 must be used in conjunction with  
`Cabal-3.8` or later. This is particularly important for Windows users due to  
changes in GHC’s Windows toolchain.

We would like to thank Microsoft Azure, GitHub, IOG, the Zw3rk stake pool,  
Well-Typed, Tweag I/O, Serokell, Equinix, SimSpace, 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.

As always, do give this release a try and open a [ticket](https://gitlab.haskell.org/ghc/ghc/-/issues/new) if you see  
anything amiss.

Happy Haskelling,

- Ben

---

<div class="post-metadata">

**Author:** ![mpilgrem](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/mpilgrem/32/2529_2.png) [@mpilgrem](https://discourse.haskell.org/u/mpilgrem)\
**Post date:** [December 25, 2022, 7:09pm UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481/2 "2022-12-25T19:09:03Z")

</div>

I have updated Stack’s default `setup-info` dictionary for these binary distributions, and added GHC 9.4.4’s global hints to `global-hints.yaml`.

---

<div class="post-metadata">

**Author:** ![hasufell](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/hasufell/32/1250_2.png) [@hasufell](https://discourse.haskell.org/u/hasufell)\
**Post date:** [December 27, 2022, 3:12am UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481/3 "2022-12-27T03:12:38Z")

</div>

@mpilgrem there are Fedora 27 bindists, but for some reason they did not make it to the downloads folder: [Artifacts · release-x86\_64-linux-fedora27-release (#1276673) · Jobs · Glasgow Haskell Compiler / GHC · GitLab](https://gitlab.haskell.org/ghc/ghc/-/jobs/1276673/artifacts/file/ghc-x86_64-linux-fedora27-release.tar.xz)

I’m considering to change the bindist mapping, although it’s kind of disruptive to mutate existing mappings.

---

<div class="post-metadata">

**Author:** ![mpilgrem](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/mpilgrem/32/2529_2.png) [@mpilgrem](https://discourse.haskell.org/u/mpilgrem)\
**Post date:** [December 27, 2022, 11:27am UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481/4 "2022-12-27T11:27:09Z")

</div>

I’ve asked at GHC issue [#22268](https://gitlab.haskell.org/ghc/ghc/-/issues/22268#note_470045) if the ‘Fedora 27’ version of GHC 9.4.4 might be added manually to the usual places.

---

<div class="post-metadata">

**Author:** ![juhp](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/juhp/32/323_2.png) [@juhp](https://discourse.haskell.org/u/juhp)\
**Post date:** [December 29, 2022, 9:17am UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481/5 "2022-12-29T09:17:33Z")

</div>

I have updated the Fedora ghc9.4 package to 9.4.4: native packages are stable now (for current Fedora releases and EPEL 9)

---

<div class="post-metadata">

**Author:** ![mpilgrem](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/mpilgrem/32/2529_2.png) [@mpilgrem](https://discourse.haskell.org/u/mpilgrem)\
**Post date:** [December 30, 2022, 5:37pm UTC](https://discourse.haskell.org/t/ghc-9-4-4-is-now-available/5481/6 "2022-12-30T17:37:11Z")

</div>

A ‘Fedora 27’ version of GHC 9.4.4’s binary distribution has been made available at [Index of /ghc/9.4.4/](https://downloads.haskell.org/ghc/9.4.4/). I’ve updated Stack’s default `setup-info` dictionary to prefer that version to ‘Fedora 33’ or ‘Debian 10’.

Stack will only fetch a version of GHC if it thinks it does not already have access to it. If you are using Stack (rather than GHCup) to manage versions of GHC and if you want to replace a version of GHC 9.4.4 that Stack has already fetched with this version, then you have to go into Stack’s ‘programs’ directory (eg `stack path --programs`) and delete the existing `ghc-9.4.4.installed` file and the folder `ghc-9.4.4.`. Stack will then seek to reinstall.
