From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Authentication-Results: plum.tunbury.org; dkim=pass (1024-bit key; unprotected) header.d=inria.fr header.i=@inria.fr header.a=rsa-sha256 header.s=dc header.b=QpRHm9y3; dkim-atps=neutral Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=192.134.164.83; helo=mail2-relais-roc.national.inria.fr; envelope-from=caml-list-owner@inria.fr; receiver=tunbury.org Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) (using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by plum.tunbury.org (Postfix) with ESMTPS id 65D154009D for ; Thu, 26 Mar 2026 13:21:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inria.fr; s=dc; h=date:from:to:message-id:mime-version:subject:reply-to: sender:list-id:list-help:list-subscribe:list-unsubscribe: list-post:list-owner:list-archive; bh=n+Rl7XdPjlomtTYr9eYVcifgmL+GxQ2Xc3J3e/dSqK0=; b=QpRHm9y3tzQJRYFt6dEfPgTuL3sXR6N7YjSmBnzizW3h5gcC141eyNz2 YKw1u35RlI5cIsaWYNtBczl/ah9oIVJemqvvy/6LWSA+Q6JJnW9ScbWnI /W+upaP4MFppGbPWUPGr4Wc8TWrlybbaIErlFmPyKA+acNxMnuSvp0TMN c=; X-CSE-ConnectionGUID: M1Ywa/dNTdyBWaRFluQaAA== X-CSE-MsgGUID: En7MkpgERymEUQn0150xjg== Authentication-Results: mail2-relais-roc.national.inria.fr; dkim=none (message not signed) header.i=none; spf=SoftFail smtp.mailfrom=caml-list-owner@inria.fr; spf=None smtp.helo=postmaster@prod-sympa-app.inria.fr Received-SPF: SoftFail (mail2-relais-roc.national.inria.fr: domain of caml-list-owner@inria.fr is inclined to not designate 128.93.162.27 as permitted sender) identity=mailfrom; client-ip=128.93.162.27; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="caml-list-owner@inria.fr"; x-conformance=spf_only; x-record-type="v=spf1"; x-record-text="v=spf1 include:mailout.safebrands.com a:basic-mail.safebrands.com a:basic-mail01.safebrands.com a:basic-mail02.safebrands.com ip4:128.93.142.0/24 ip4:192.134.164.0/24 ip4:128.93.162.160 ip4:128.93.162.3 ip4:128.93.162.88 ip4:89.107.174.7 mx ~all" Received-SPF: None (mail2-relais-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@prod-sympa-app.inria.fr) identity=helo; client-ip=128.93.162.27; receiver=mail2-relais-roc.national.inria.fr; envelope-from="caml-list-owner@inria.fr"; x-sender="postmaster@prod-sympa-app.inria.fr"; x-conformance=spf_only X-IronPort-AV: E=Sophos;i="6.23,142,1770591600"; d="scan'208,217";a="269638242" Received: from prod-sympa-app.inria.fr ([128.93.162.27]) by mail2-relais-roc.national.inria.fr with ESMTP; 26 Mar 2026 14:21:58 +0100 Received: by prod-sympa-app.inria.fr (Postfix, from userid 990) id D186083069; Thu, 26 Mar 2026 14:21:56 +0100 (CET) Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by prod-sympa-app.inria.fr (Postfix) with ESMTP id 1881D83021 for ; Thu, 26 Mar 2026 14:21:51 +0100 (CET) X-CSE-ConnectionGUID: czdQ6FaqR5m95Sg68DkWyQ== X-CSE-MsgGUID: ag2FYz9BTCSoke1lXB12uw== X-ThreatScanner-Verdict: Negative X-IronPort-AV: E=Sophos;i="6.23,142,1770591600"; d="scan'208,217";a="269638145" X-MGA-submission: =?us-ascii?q?MDGK9o+yEbUnhcRvidfVwb0ZMUT3qDJcwBX5HO?= =?us-ascii?q?0wK3i2o8/8jWwqTm50h6pjW0IIJWjiPQnjG864yOEqsWvB7MQwaMUo2T?= =?us-ascii?q?HB+Q0L4u8YGmvSmimALmaTXYUJ82RrWKipcyKW8UwlcBCyYASUvqsA8x?= =?us-ascii?q?Nns/NtdIGoohr1j22b9yNbtA=3D=3D?= Received: from zcs2-store1.inria.fr ([128.93.142.3]) by mail2-relais-roc.national.inria.fr with ESMTP; 26 Mar 2026 14:21:51 +0100 Date: Thu, 26 Mar 2026 14:21:50 +0100 (CET) From: Florian Angeletti To: caml-list Message-ID: <1841909574.24766691.1774531310963.JavaMail.zimbra@inria.fr> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="=_95ebdf21-03f8-4cd1-b417-366333f3dfcb" X-Originating-IP: [128.93.64.106] X-Mailer: Zimbra 10.1.16_GA_4850 (ZimbraWebClient - FF148 (Linux)/10.1.16_GA_4863) Thread-Index: RDl8ah2XrJ9Jd39ABrqtmhYiAoYi0A== Thread-Topic: Third alpha release of OCaml 5.5.0 Subject: [Caml-list] Third alpha release of OCaml 5.5.0 Reply-To: Florian Angeletti X-Loop: caml-list@inria.fr X-Sequence: 19478 Errors-To: caml-list-owner@inria.fr Precedence: list Precedence: bulk Sender: caml-list-request@inria.fr X-no-archive: yes List-Id: List-Help: , List-Subscribe: , List-Unsubscribe: , List-Post: List-Owner: List-Archive: Archived-At: --=_95ebdf21-03f8-4cd1-b417-366333f3dfcb Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Dear OCaml users,=20 With the progress of the ongoing stabilisation effort for OCaml 5.5.0, I am= happy to=20 announce the third alpha release for OCaml 5.5.0.=20 The missing second alpha was unreleased due to an unforeseen interaction be= tween=20 the relocatable compiler and bootstrapping. This issue is fixed in this thi= rd alpha.=20 Beyond this important change, compared to the first alpha this new alpha re= lease=20 contains 2 code generation fixes, 3 type system fixes and one standard libr= ary=20 fix (see the Changelog below for a full list).=20 Thus, it looks like 5.5.0 is stabilizing quite well and we are planning to = switch to=20 a beta release in the beginning of April.=20 More precisely, the ongoing progress on stabilising the ecosystem is tracke= d on=20 the opam readiness for 5.5.0 meta-issue at:=20 https://github.com/ocaml/opam-repository/issues/29463=20 There is also a companion alpha opam repository available for this alpha re= lease=20 opam repo add alpha git+https://github.com/kit-ty-kate/opam-alpha-repositor= y.git=20 which contains in-progress alpha releases of opam packages that are being u= pdated for=20 OCaml 5.5.0 .=20 The final release is still planned for between May and June.=20 If you find any bugs, please report them here:=20 https://github.com/ocaml/ocaml/issues=20 If you are interested by the full list of new features and bug fixes, the= =20 updated change log for OCaml 5.5.0 is available at:=20 https://github.com/ocaml/ocaml/blob/5.5/Changes=20 Happy hacking,=20 Florian Angeletti for the OCaml team.=20 Changes compared to the first alpha=20 -----------------------------------------------=20 ## Compiler artefact fixes=20 - More bootstrap-friendly relocatable compiler=20 - A bootstrap to fix compiler-libs related issues reported by js_of_ocaml= =20 ## Code generation bug fixes=20 - #14583(https://github.com/ocaml/ocaml/issues/14583): fix bug in linear sc= an spilling heuristic that in certain situations=20 could lead to miscompilations.=20 (Nicol=E1s Ojeda B=E4r, review by Vincent Laviron)=20 - #13693(https://github.com/ocaml/ocaml/issues/13693), #14514(https://githu= b.com/ocaml/ocaml/issues/14514): s390x: fix heap corruption with libasmrun_= shared.so caused=20 by PLT lazy binding trampoline saving FPRs into OCaml's fiber stack.=20 Replace @PLT calls with GOT-indirect calls in the s390x code emitter.=20 (Zane Hambly, review by David Allsopp and Xavier Leroy)=20 ## Type system bug fixes=20 - #14434(https://github.com/ocaml/ocaml/issues/14434), #14652(https://githu= b.com/ocaml/ocaml/issues/14652): Protect check_counter_example_pat against = polymorphic types,=20 restoring type soundness.=20 (Stephen Dolan and Jacques Garrigue, report and review by Alistair O'Brien)= =20 - #14603(https://github.com/ocaml/ocaml/issues/14603), [#14604](https://git= hub.com/ocaml/ocaml/issues/14604): avoid Ctype.apply failures when mixing= =20 polymorphic types and unboxed constructors.=20 (Gabriel Scherer and Stefan Muenzel, report by Brandon Stride,=20 review by Florian Angeletti)=20 - #14626(https://github.com/ocaml/ocaml/issues/14626), [#14675](https://git= hub.com/ocaml/ocaml/issues/14675): take in account module-dependent functio= ns when=20 determining if an optional argument is non-erasable.=20 (Alistair O'Brien and Florian Angeletti, review by Gabriel Scherer)=20 ## Standard library fix=20 - #14635(https://github.com/ocaml/ocaml/issues/14635): Fix a bug in `caml_f= loatarray_gather` that would cause=20 the result of `Float.Array.sub`, `Float.Array.append`, `Float.Array.concat`= =20 (when empty) not to be equal to `[||]`.=20 (Marc Lasson, review by Gabriel Scherer)=20 ## Documentation update=20 - #13590(https://github.com/ocaml/ocaml/issues/13590): Document automatic c= ommand-line expansion of `*` and `?` wildcards by=20 the runtime under Windows.=20 (Benjamin Sigonneau, review by Nicol=E1s Ojeda B=E4r)=20 --=_95ebdf21-03f8-4cd1-b417-366333f3dfcb Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Dear OCaml users,

With the progress = of the ongoing stabilisation effort for OCaml 5.5.0, I am happy to
announce the third alpha release for OCaml 5.5.0.

The missing seco= nd alpha was unreleased due to an unforeseen interaction between
the rel= ocatable compiler and bootstrapping. This issue is fixed in this third alph= a.

Beyond this important change, compared to the first alpha this ne= w alpha release
contains 2 code generation fixes, 3 type system fixes an= d one standard library
fix (see the Changelog below for a full list).
Thus, it looks like 5.5.0 is stabilizing quite well and we are plannin= g to switch to
a beta release in the beginning of April.

M= ore precisely, the ongoing progress on stabilising the ecosystem is tracked= on
the opam readiness for 5.5.0 meta-issue at:

  https://gi= thub.com/ocaml/opam-repository/issues/29463

There is also a companio= n alpha opam repository available for this alpha release

  &nbs= p;   opam repo add alpha git+https://github.com/kit-ty-kate/opam-alpha= -repository.git

which contains in-progress alpha releases of opam pa= ckages that are being updated for
OCaml 5.5.0 .

The final release= is still planned for between May and June.

If you find any bugs, pl= ease report them here:

  https://github.com/ocaml/ocaml/issues<= br>
If you are interested by the full list of new features and bug fixes= , the
updated change log for OCaml 5.5.0 is available at:

  = https://github.com/ocaml/ocaml/blob/5.5/Changes

Happy hacking,
Fl= orian Angeletti for the OCaml team.


Changes compared to the firs= t alpha
-----------------------------------------------

## Compil= er artefact fixes

- More bootstrap-friendly relocatable compiler
= - A bootstrap to fix compiler-libs related issues reported by js_of_ocaml
## Code generation bug fixes

- #14583(https://github.com/ocaml= /ocaml/issues/14583): fix bug in linear scan spilling heuristic that in cer= tain situations
  could lead to miscompilations.
  (Nicol= =E1s Ojeda B=E4r, review by Vincent Laviron)

- #13693(https://github= .com/ocaml/ocaml/issues/13693), #14514(https://github.com/ocaml/ocaml/issue= s/14514): s390x: fix heap corruption with libasmrun_shared.so caused
&nb= sp; by PLT lazy binding trampoline saving FPRs into OCaml's fiber stack.  Replace @PLT calls with GOT-indirect calls in the s390x code emitte= r.
  (Zane Hambly, review by David Allsopp and Xavier Leroy)
## Type system bug fixes

- #14434(https://github.com/ocaml/ocaml/is= sues/14434), #14652(https://github.com/ocaml/ocaml/issues/14652): Protect c= heck_counter_example_pat against polymorphic types,
  restoring typ= e soundness.
  (Stephen Dolan and Jacques Garrigue, report and revi= ew by Alistair O'Brien)

- #14603(https://github.com/ocaml/ocaml/issu= es/14603), [#14604](https://github.com/ocaml/ocaml/issues/14604): avoid Cty= pe.apply failures when mixing
  polymorphic types and unboxed const= ructors.
  (Gabriel Scherer and Stefan Muenzel, report by Brandon S= tride,
   review by Florian Angeletti)

- #14626(https:/= /github.com/ocaml/ocaml/issues/14626), [#14675](https://github.com/ocaml/oc= aml/issues/14675): take in account module-dependent functions when
 = ; determining if an optional argument is non-erasable.
  (Alistair = O'Brien and Florian Angeletti, review by Gabriel Scherer)

## Standar= d library fix

- #14635(https://github.com/ocaml/ocaml/issues/14635):= Fix a bug in `caml_floatarray_gather` that would cause
  the resul= t of `Float.Array.sub`, `Float.Array.append`, `Float.Array.concat`
 = ; (when empty) not to be equal to `[||]`.
  (Marc Lasson, review by= Gabriel Scherer)

## Documentation update

- #13590(https://gi= thub.com/ocaml/ocaml/issues/13590): Document automatic command-line expansi= on of `*` and `?` wildcards by
  the runtime under Windows.
&nbs= p; (Benjamin Sigonneau, review by Nicol=E1s Ojeda B=E4r)

--=_95ebdf21-03f8-4cd1-b417-366333f3dfcb--