2.5. Version 9.12.5¶
The significant changes to the various parts of the compiler are listed in the following sections. See the migration guide on the GHC Wiki for specific guidance on migrating programs to this release.
2.5.1. Compiler¶
This release of GHC supports LLVM versions 13 through 19.
When there are no remaining argument demands, bottoming applications are now being trimmed to avoid panics (#27261)
Implement version 2 of the ghc
semaphoreprotocol for GHC’s-jsemjobserver on Linux and otherPOSIXplatforms (#25087, #27253)several improvements to the pattern match checker (#25926, #27124)
Avoid putting ticks around coercions (#27121)
Let the driver recognise
.dyn_oas valid object files to allow plugins with this suffix to run. (#24486)Don’t move ticks in between a join point and its jumps (#26929, #26642, #26693)
Remove
StgAsyncResultto fix crash/leaks (#26341)ffi: collapse void pointer chains in capi wrappers (#26852)
aarch64: fix
MOVK reguUsageOfInstrto mark dst as both read and written (#26980)Fix
dsuppress-uniquesfor free variables in demand signatures (#27106)demand analysis: take stable unfoldings into account when determining argument demands (#26416)
2.5.2. Runtime System¶
prevent the WinIO manager from swallowing exceptions in overlapped
IO(#27283)several fixes for blackholes (#27261)
add
--optimistic-linkingflag which binds unknown symbols in the runtime linker to0xDEADBEEFinstead of failing (#25240)add a few missing i386 relocations in the rts linker
handle heap allocation failures in I/O primops (#24105)
small fixes to allow more configurations to succesfully build (debugging RTS with optimizations)
fix race conditions between
flushEventLogacquiring/releasing thestate_changemutexalign stack to 64-byte boundary in StgRun on x65 (#26595, ghc-ticket:26822)
carefully SLIDE off the end of a stack chunk (#27001)
Fix missing profiling header for origin_thunk frame (#27007)
2.5.3. Code Generation¶
2.5.4. Bytecode Compiler¶
2.5.5. base library¶
2.5.6. ghc-internal library¶
update to unicode 17.0.0
2.5.7. ghc-experimental library¶
2.5.8. ghc-pkg¶
2.5.9. ghc-toolchain¶
2.5.10. Packaging and Build System¶
bumped
processsubmodule to 1.6.29.0bumped
semaphore-compatsubmodule to 2.0.0accept
happyversion 2.2hadrian: don’t include package hash in haddock library
configure: fix check for
--targetsupport in stage0CC(#26999)
2.5.11. Wasm Backend¶
ensure post-linker output is synchronous ESM (#27257)
2.5.12. 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.
| Package | Version | Reason for inclusion |
|---|---|---|
ghc |
9.12.4.20260606 | The compiler itself |
Cabal-syntax |
3.14.2.0 | Dependency of |
Cabal |
3.14.2.0 | Dependency of |
Win32 |
2.14.2.1 | Dependency of |
array |
0.5.8.0 | Dependency of |
base |
4.21.3.0 | Core library |
binary |
0.8.9.3 | Dependency of |
bytestring |
0.12.2.0 | Dependency of |
containers |
0.7 | Dependency of |
deepseq |
1.5.1.0 | Dependency of |
directory |
1.3.10.1 | Dependency of |
exceptions |
0.10.12 | Dependency of |
file-io |
0.1.6 | Dependency of |
filepath |
1.5.5.0 | Dependency of |
ghc-boot-th |
9.12.4.20260606 | Internal compiler library |
ghc-boot |
9.12.4.20260606 | Internal compiler library |
ghc-compact |
0.1.0.0 | Core library |
ghc-experimental |
9.1204.0 | Core library |
ghc-heap |
9.12.4.20260606 | GHC heap-walking library |
ghc-internal |
9.1204.0 | Core library |
ghc-platform |
0.1.0.0 | Internal library |
ghc-prim |
0.13.0 | Core library |
ghci |
9.12.4.20260606 | The REPL interface |
haskeline |
0.8.4.1 | Dependency of |
hpc |
0.7.0.2 | Dependency of |
integer-gmp |
1.1 | Core library |
mtl |
2.3.2 | Dependency of |
os-string |
2.0.10 | Dependency of |
parsec |
3.1.18.0 | Dependency of |
pretty |
1.1.3.6 | Dependency of |
process |
1.6.29.0 | Dependency of |
semaphore-compat |
2.0.0 | Dependency of |
stm |
2.5.3.1 | Dependency of |
template-haskell |
2.23.0.0 | Core library |
terminfo |
0.4.1.7 | Dependency of |
text |
2.1.4 | Dependency of |
time |
1.14 | Dependency of |
transformers |
0.6.3.0 | Dependency of |
unix |
2.8.8.0 | Dependency of |
xhtml |
3000.2.2.1 | Dependency of |
haddock-api |
2.32.0 | Dependency of |
haddock-library |
1.11.0 | Dependency of |