./lang/ocaml, The latest implementation of the Caml dialect of ML

[ Image CVSweb ] [ Image Homepage ] [ Image RSS ] [ Image Required by ] [ Image Add to tracker ]


Branch: CURRENT, Version: 4.14.3, Package name: ocaml-4.14.3, Maintainer: pkgsrc-users

Objective Caml is the latest implementation of the Caml dialect of ML. The main
novelties compared with its ancestor, Caml Light, are:

* Full support for objects and classes -- here combined for the first time
with ML-style type reconstruction.
* A powerful module calculus in the style of Standard ML (but retaining
separate compilation).
* A high-performance native code compiler (in addition to a Caml
Light-style bytecode compiler).


Required to build:
[pkgtools/cwrappers]

Package options: pic

Master sites:

Filesize: 5268.476 KB

Version history: (Expand)


CVS history: (Expand)


   2026-02-28 16:22:00 by Greg Troxel | Files touched by this commit (3)
Log message:
lang/ocaml; Update to 4.14.3

Addresses some security issues but NEWS lacks CVE refs.

Successfully built 10 ocaml-foo and unison, on NetBSD 10 amd64.

OCaml 4.14.3 (17 February 2026)
------------------------------

### Bug fixes:

- #12070, #12075, #13209: auto-detect whether `ar` support @FILE arguments at
  configure-time to avoid using this feature with toolchains that do not support
  it (eg FreeBSD/Darwin); backport from 5.3.
  (backport by Boris Dobroslavov, original fix by Nicolás Ojeda Bär, review by
  Xavier Leroy, David Allsopp, Javier Chávarri, Anil Madhavapeddy)

- #12207, #12222: Make closure computation linear in the number of recursive
  functions instead of quadratic
  (Vincent Laviron, report by François Pottier, review by Nathanaëlle Courant
  and Gabriel Scherer)

- #13430, #13434: protect memory-safety on Lazy.force races
  (Gabriel Scherer and Vincent Laviron, report by Edwin Török,
   review by Vincent Laviron)

- #13448, #13449: fix a code-generation bug on unsafe array accesses
  at type int32, int64, nativeint, which has been introduced in OCaml 4.04.
  (Gabriel Scherer, review by Nicolás Ojeda Bär and Vincent Laviron,
   report by Simon Cruanes)

- #13516: Fix regression where error conditions during bytecode initialisation
  caused a segmentation fault rather than being properly reported (regression of
  #5115 in #11788)
  (David Allsopp, review by Nicolás Ojeda Bär)

- #13847: On Windows, maintain a number of threads waiting on the master lock to
  avoid unnecessary context switches
  (Dmitry Bely, review by Antonin Décimo)

- #14007, #14015: Fix memory corruption when an exception is raised during
  demarshaling.
  (Benoît Vaugon, review by David Allsopp and Gabriel Scherer)

- private: robustify intern.c
  (Xavier Leroy, review by Damien Doligez and Olivier Nicole)
   2026-02-17 14:39:16 by Thomas Klausner | Files touched by this commit (200)
Log message:
*: recursive bump for ocaml-dune becoming a build dependency
   2026-02-02 20:36:36 by Thomas Klausner | Files touched by this commit (1)
Log message:
ocaml: use TOOL_DEPENDS instead of bl3.mk
   2025-08-29 01:57:59 by Thomas Klausner | Files touched by this commit (2)
Log message:
ocaml: merge Makefile.common into Makefile

Not shared with anything else.
   2025-08-28 23:01:12 by Thomas Klausner | Files touched by this commit (1)
Log message:
ocaml: remove unused EXTRA_RT_LIBS variable
   2025-08-25 10:35:16 by Thomas Klausner | Files touched by this commit (211)
Log message:
reset maintainer
   2025-08-23 17:07:54 by Thomas Klausner | Files touched by this commit (1)
Log message:
ocaml: remove duplicate ${PLIST.ocaml-opt}
   2025-08-23 17:05:57 by Thomas Klausner | Files touched by this commit (2)
Log message:
ocaml: fix pkglint (chunk offsets)