Release of OCaml 4.14.4
We have the pleasure of celebrating the anniversary of the first flight of Ariane 4 by announcing the release of OCaml version 4.14.4.
This release is a collection of safe bug fixes, cherry-picked from the OCaml 5 branch. The 4.14 branch is expected to receive updates until at least the end of 2026. However, the end of its extended maintenance period is on the horizon. Consequently, please mention to us any obstacle remaining to your migration to OCaml 5.
In the meanwhile, do not hesitate to report any bugs on the OCaml issue tracker.
See the list of changes below for more details.
Installation Instructions
The base compiler can be installed as an opam switch with the following commands:
opam update
opam switch create 4.14.4
The source code for the release candidate is also directly available on:
See full changelog
Changes in OCaml 4.14.4 (15 June 2026)
Build system:
- #12372, #14572: Pass option -no-execute-only to the linker for OpenBSD >= 7.3 so that code sections remain readable, as needed for closure marshaling. Originally backported in 4.14.2, but the flag was accidentally not passed when linking the .so versions of the OCaml runtime libraries or when linking .cmxs files. (Xavier Leroy and Anil Madhavapeddy, review by Anil Madhavapeddy and Sébastien Hinderer)
Bug fixes:
-
#14599, #14606: on ARM64 platforms, ocamlopt was under-estimating the sizes of some instructions. This could lead to overflows in relative branch offsets, reported as errors by the assembler. (Xavier Leroy, review by Vincent Laviron, report by Raphaël Proust)
-
#14607: Fix linking with libasmrun_shared.so on Risc-V (undefined symbol declared riscv.o) (David Allsopp, review by Nicolás Ojeda Bär)
-
#14661: Build dllthreads.so with pthreads flags (removed in #13018). For normal programs there's no semantic difference, because ocamlrun and ocamlc.opt are always linked with pthreads, but it was a regression to require programs wishing to dlopen dllthreads.so to have already linked with pthreads themselves. (David Allsopp, review by Gabriel Scherer)
-
#14655, #14691, CVE-2026-34353, OSEC-2026-04: check for size overflow in caml_ba_reshape (Stephen Dolan, review by Xavier Leroy)
-
#14853, CVE-2026-41083, OSEC-2026-05: fix quoting of filenames passed to Filename.quote_command on Windows. (David Allsopp, report by Andrew Nesbitt, review by Florian Angeletti)