Ocaml 4.04.1 released
Damien Doligez <[email protected]> Fri, 14 Apr 2017 11:48:10 +0200
| Newsgroups | gmane.comp.lang.caml.announce,gmane.comp.lang.caml.inria |
|---|---|
| Message-ID | <[email protected]> |
Dear OCaml users,
We have the pleasure of announcing the release of OCaml version 4.04.1,
dedicated to the memory of Emmy Noether on the anniversary of her death.
This is a bug-fix release, see the list of changes below.
It is available as a bunch of OPAM switch and as a source
download in the following locations:
https://github.com/ocaml/ocaml/archive/4.04.1.tar.gz
https://caml.inria.fr/pub/distrib/ocaml-4.04/
Happy hacking,
-- Damien Doligez for the OCaml team.
OCaml 4.04.1 (14 Apr 2017):
---------------------------
### Code generation and optimizations:
- PR#7501, GPR#1089: Consider arrays of length zero as constants
when using Flambda.
(Pierre Chambart, review by Mark Shinwell and Leo White)
### Standard library:
- PR#7403, GPR#894: fix a bug in Set.map as introduced in 4.04.0
(Gabriel Scherer, report by Thomas Leonard)
### Tools:
- PR#7411: ocamldoc, avoid nested <pre> tags in module description.
(Florian Angeletti, report by user 'kosik')
- PR#7488: ocamldoc, wrong Latex output for variant types
with constructors without arguments.
(Florian Angeletti, report by Xavier Leroy)
### Build system:
- PR#7373, GPR#1023: New flexlink target in Makefile.nt to bootstrap the
flexlink binary only, rather than the flexlink binary and the FlexDLL =
C
objects.
(David Allsopp)
### Bug fixes
- PR#7369: Str.regexp raises "Invalid_argument: index out of bounds"
(Damien Doligez, report by John Whitington)
- PR#7373, GPR#1023: Fix ocamlmklib with bootstrapped FlexDLL. =
Bootstrapped
FlexDLL objects are now installed to a subdirectory flexdll of the =
Standard
Library which allows the compilers to pick them up explicitly and also
ocamlmklib to include them without unnecessarily adding the entire =
Standard
Library.
(David Allsopp)
- PR#7385, GPR#1057: fix incorrect timestamps returned by Unix.stat on =
Windows
when either TZ is set or system date is in DST.
(David Allsopp, report and initial fix by Nicol=C3=A1s Ojeda B=C3=A4r, =
review and
superior implementation suggestion by Xavier Leroy)
- PR#7405, GPR#903: s390x: Fix address of caml_raise_exn in native =
dynlink modules
(Richard Jones, review by Xavier Leroy)
- PR#7417, GPR#930: ensure 16 byte stack alignment inside caml_allocN on =
x86-64
for ocaml build with WITH_FRAME_POINTERS defined
(Christoph Cullmann)
- PR#7456, GPR#1092: fix slow compilation on source files containing a =
lot
of similar debugging information location entries
(Mark Shinwell)
- PR#7457: a case of double free in the systhreads library (POSIX =
implementation)
(Xavier Leroy, report by Chet Murthy)
- PR#7460, GPR#1011: catch uncaught exception when unknown files are =
passed
as argument (regression in 4.04.0)
(Bernhard Schommer, review by Florian Angeletti and Gabriel Scherer,
report by Stephen Dolan)
- PR#7505: Memory cannot be released after calling
Bigarray.Genarray.change_layout.
(Damien Doligez and Xavier Leroy, report by Liang Wang)
- GPR#912: Fix segfault in Unix.create_process on Windows caused by =
wrong header
configuration.
(David Allsopp)
- GPR#980: add dynlink options to ocamlbytecomp.cmxa to allow =
ocamlopt.opt
to load plugins. See http://github.com/OCamlPro/ocamlc-plugins for =
examples.
(Fabrice Le Fessant, review by David Allsopp)
- GPR#992: caml-types.el: Fix missing format argument, so that it can =
show kind
of call at point correctly.
(Chunhui He)
- GPR#1043: Allow Windows CRLF line-endings in ocamlyacc on Unix and =
Cygwin.
(David Allsopp, review by Damien Doligez and Xavier Leroy)
- GPR#1072: Fix segfault in Sys.runtime_parameters when exception =
backtraces
are enabled.
(Olivier Andrieu)