# Release notes for version 7.8.4

The 7.8.4 release is a bugfix release. The major bugfixes relative to 7.8.3 are listed below.

## GHC

- A critical bug in the LLVM backend which would cause the compiler to generate incorrect code has been fixed (issue #9439).

- Several bugs in the code generator have been fixed for unregisterised platforms, such as 64bit PowerPC (issue #8819 and #8849).

- A bug that could cause GHC's constructor specialization pass (enabled by default at `-O2`, or via `-fspec-constr`) to loop forever and consume large amounts of memory has been fixed (issue #8960).

- A bug that would cause GHC to fail when attempting to determine GCC's version information in non-english locales has been fixed (issue #8825).

- A minor bug that allowed GHC to seemingly import (but not use) private data constructors has been fixed (issue #9006).

- A bug in the register allocator which would cause GHC to crash during compilation has been fixed (issue #9303).

- A bug that caused the compiler to panic on some input C-- code has been fixed (issue #9329).

- A few various minor deadlocks in the runtime system when using `forkProcess` have been fixed.

- A bug which made blocked STM transactions non-interruptible has been fixed (issue #9379).

- A bug in the compiler which broke pattern synonym imports across modules in Haddock has been fixed (issue #9417).

- A minor bug in the code generator in which the `popCnt16#` did not zero-extend its result has been fixed (issue #9435).

- A bug which caused the compiler to panic on pattern synonyms inside a class declaration has been fixed (issue #9705).

- A bug in the typechecker revolving around un-saturated type family applications has been fixed (issue #9433).