OCaml 5.2.1: first release candidate #26846
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is the usual packages for the release candidate for the upcoming version 5.2.1 of OCaml.
Since this bugfix release only contains a collection of important but safe runtime fixes, this release candidate is mostly here to check that nothing has gone wrong in the 5.2 branch or in the release process.
Compared to OCaml 5.2.0, the changes in 5.2.1 are:
13207: Be sure to reload the register caching the exception handler in
caml_c_call and caml_c_call_stack_args, as its value may have been changed
if the OCaml stack is expanded during a callback.
(Miod Vallat, report by Vesa Karvonen, review by Gabriel Scherer and
Xavier Leroy)
13252: Rework register assignment in the interpreter code on m68k on Linux,
due to the %a5 register being used by Glibc.
(Miod Vallat, report by Stéphane Glondu, review by Gabriel Scherer and
Xavier Leroy)
13268: Fix a call to test in configure.ac that was causing errors when
LDFLAGS contains several words.
(Stéphane Glondu, review by Miod Vallat)
13234, 13267: Open runtime events file in read-write mode on armel
(armv5) systems due to atomic operations limitations on that
platform.
(Stéphane Glondu, review by Miod Vallat and Vincent Laviron)
13188: fix races in the FFI code coming from the use of Int_val(...)
on rooted values inside blocking questions / without the runtime lock.
(Calling Int_val(...) on non-rooted immediates is fine, but any
access to rooted values must be done outside blocking sections /
with the runtime lock.)
(Etienne Millon, review by Gabriel Scherer, Jan Midtgaard, Olivier Nicole)
13318: Fix regression in GC alarms, and fix them for flambda.
(Guillaume Munch-Maccagnoni, report by Benjamin Monate, review by
Vincent Laviron and Gabriel Scherer)
13140: POWER back-end: fix issue with call to
caml_call_realloc_stack
from a DLL
(Xavier Leroy, review by Miod Vallat)
13370: Fix a low-probability crash when calling Gc.counters.
(Demi Marie Obenour, review by Gabriel Scherer)
13402, 13512, 13549, 13553: Revise bytecode implementation of callbacks
so that it no longer produces dangling registered bytecode fragments.
(Xavier Leroy, report by Jan Midtgaard, analysis by Stephen Dolan,
review by Miod Vallat)
13502: Fix misindexing related to
Gc.finalise_last
that could preventfinalisers from being run.
(Nick Roberts, review by Mark Shinwell)
13520: Fix compilation of native-code version of systhreads. Bytecode fields
were being included in the thread descriptors.
(David Allsopp, review by Sébastien Hinderer and Miod Vallat)