Changelog attribution information
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@16142 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02master
parent
d19a8bd2f1
commit
c9a896c255
99
Changes
99
Changes
|
@ -1,17 +1,14 @@
|
|||
OCaml 4.03.0:
|
||||
-------------
|
||||
|
||||
(Changes that can break existing programs are marked with a "*")
|
||||
|
||||
Language features:
|
||||
- PR#6374: allow "_ t" as a short-hand for "(_, _, ..) t" for n-ary type
|
||||
constructors (Alain Frisch)
|
||||
- allow field punning in object copying expressions: {< x; >} for {< x = x; >}
|
||||
(Jeremy Yallop)
|
||||
- PR#6714: allow [@@ocaml.warning] on most structure and signature items
|
||||
(values, modules, module types)
|
||||
- PR#6714: allow [@@ocaml.warning] on most structure and signature items:
|
||||
values, modules, module types
|
||||
(Peter Zotov)
|
||||
* Custom index operators: ( .() ), ( .[] ), ( .{} ) etc.
|
||||
* GPR#69: Custom index operators: ( .() ), ( .[] ), ( .{} ) etc.
|
||||
(user 'Octachron')
|
||||
The syntax "foo.(bar) <- baz" now desugars into "( .()<- ) foo bar baz"; this
|
||||
should allow user to define their own notations by overriding.
|
||||
|
@ -19,8 +16,13 @@ Language features:
|
|||
module, which means that the foo.{bar,baz} syntactic sugar is only available
|
||||
when the Bigarray module is opened; this can break existing programs,
|
||||
which should be fixed by opening the Bigarray module.
|
||||
- GPR#88: allow field punning in object copying expressions:
|
||||
{< x; y; >} is sugar for {< x = x; y = y; >}
|
||||
(Jeremy Yallop)
|
||||
|
||||
Compilers:
|
||||
- PR#6475: accept -o in ocamlc when compiling C files
|
||||
(Vincent Laporte, Peter Zotov)
|
||||
- PR#6501: harden the native-code generator against certain uses of "%identity"
|
||||
(Xavier Leroy, report by Antoine Miné).
|
||||
- PR#6636: add --version option
|
||||
|
@ -30,7 +32,7 @@ Compilers:
|
|||
- PR#6737: fix Typedtree attributes on (fun x -> body) expressions
|
||||
- PR#6679: fix pprintast printing of constraints in type declarations
|
||||
- PR#6845: -no-check-prims to tell ocamlc not to check primitives in runtime
|
||||
- some cmm optimizations of integer operations with constants
|
||||
- GPR#17: some cmm optimizations of integer operations with constants
|
||||
(Stephen Dolan, review by Pierre Chambart)
|
||||
|
||||
Runtime system:
|
||||
|
@ -41,22 +43,22 @@ Runtime system:
|
|||
(Peter Zotov, review by Jacques-Henri Jourdan)
|
||||
|
||||
Standard library:
|
||||
- PR#6390, GPR#36: expose Sys.{int_size,max_wosize} for improved js_of_ocaml portability
|
||||
(Hugo Heuzard)
|
||||
* PR#6494: Add equal function in modules
|
||||
Bytes, Char, Digest, Int32, Int64, Nativeint, and String
|
||||
(Romain Calascibetta)
|
||||
* PR#6524, GPR#79: Filename: Optional ?perms argument to open_temp_file
|
||||
(Daniel Bünzli, review by Jacques-Pascal Deplaix)
|
||||
- PR#6577: improve performance of %L, %l, %n, %S, %C format specifiers
|
||||
(Alain Frisch)
|
||||
- PR#6585: fix memory leak in win32unix/createprocess.c
|
||||
- PR#6694, PR#6695: deprecate functions using ISO-8859-1 character set
|
||||
in Char, Bytes, String and provide alternatives using US-ASCII.
|
||||
(Peter Zotov)
|
||||
- expose Sys.{int_size,max_wosize} for improved js_of_ocaml portability
|
||||
(Hugo Heuzard)
|
||||
* Filename: Optional ?perms argument to open_temp_file
|
||||
(Daniel Bünzli, review by Jacques-Pascal Deplaix)
|
||||
- PR#6645, GPR#174: Guarantee that Set.add, Set.remove, Set.filter
|
||||
return the original set if no change is required (Alain Frisch,
|
||||
Mohamed Iguernelala)
|
||||
- PR#6694, PR#6695: deprecate functions using ISO-8859-1 character set
|
||||
in Char, Bytes, String and provide alternatives using US-ASCII.
|
||||
(Peter Zotov)
|
||||
|
||||
Type system:
|
||||
- PR#5545: Type annotations on methods cannot control the choice of abbreviation
|
||||
|
@ -149,6 +151,8 @@ Features wishes:
|
|||
OCaml 4.02.2:
|
||||
-------------
|
||||
|
||||
(Changes that can break existing programs are marked with a "*")
|
||||
|
||||
Language features:
|
||||
- PR#6583: add a new class of binary operators with the same syntactic
|
||||
precedence as method calls; these operators start with # followed
|
||||
|
@ -156,16 +160,18 @@ Language features:
|
|||
It is also possible to use '#' as part of these extra symbols
|
||||
(for instance ##, or #+#); this is rejected by the type-checker,
|
||||
but can be used e.g. by ppx rewriters.
|
||||
- PR#6016: add a "nonrec" keyword for type declarations
|
||||
(Alain Frisch, request by Gabriel Radanne)
|
||||
* PR#6016: add a "nonrec" keyword for type declarations
|
||||
(Jérémie Dimino)
|
||||
|
||||
Compilers:
|
||||
- PR#6475: accept -o in ocamlc when compiling C files
|
||||
(Vincent Laporte, Peter Zotov)
|
||||
- PR#6600: make -short-paths faster by building the printing map
|
||||
incrementally (Jacques Garrigue)
|
||||
incrementally
|
||||
(Jacques Garrigue)
|
||||
- PR#6642: replace $CAMLORIGIN in -ccopt with the path to cma or cmxa
|
||||
(Peter Zotov, Gabriel Scherer, review by Damien Doligez)
|
||||
- PR#6845: -no-check-prims to tell ocamlc not to check primitives in runtime
|
||||
(Alain Frisch)
|
||||
- GPR#159: Better locations for structure/signature items
|
||||
(Leo White)
|
||||
|
||||
|
@ -192,25 +198,47 @@ OCamlbuild:
|
|||
- PR#6774: new menhir-specific flags "only_tokens" and "external_tokens(Foo)"
|
||||
(François Pottier)
|
||||
|
||||
Libraries:
|
||||
- PR#6285: Add support for nanosecond precision in Unix.stat()
|
||||
(Jérémie Dimino, report by user 'gfxmonk')
|
||||
|
||||
Runtime:
|
||||
- PR#6078: Release the runtime system when calling caml_dlopen
|
||||
(Jérémie Dimino)
|
||||
|
||||
Bug fixes:
|
||||
- PR#5836, PR#6684: printing lazy values in ocamldebug may segfault
|
||||
(Gabriel Scherer)
|
||||
(Gabriel Scherer, request by the Coq team)
|
||||
- PR#5887: move the byterun/*.h headers to byterun/caml/*.h to avoid
|
||||
header name clashes
|
||||
(Jérôme Vouillon and Adrien Nader and Peter Zotov)
|
||||
- PR#6573: extern "C" for systhreads/threads.h
|
||||
(Mickaël Delahaye)
|
||||
- PR#6575: Array.init evaluates callback although it should not do so
|
||||
(Alain Frisch, report by Gerd Stolpmann)
|
||||
- PR#6616: allow meaningful use of -use-runtime without -custom.
|
||||
(Peter Zotov)
|
||||
- PR#6617: allow android build with pthreads support (since SDK r10c)
|
||||
(Peter Zotov)
|
||||
- PR#6626: ocamlbuild on cygwin cannot find ocamlfind
|
||||
(user 'algoriddle')
|
||||
- PR#6628: Configure script rejects legitimate arguments
|
||||
(Michael Grünewald, Damien Doligez)
|
||||
- PR#6640: ocamlbuild: wrong "unused tag" warning on "precious"
|
||||
(report by user 'william')
|
||||
- PR#6665: Failure of tests/asmcomp on sparc
|
||||
(Stéphane Glondu)
|
||||
- PR#6573: extern "C" for systhreads/threads.h
|
||||
(Mickaël Delahaye)
|
||||
- PR#6669: fix 4.02 regression in toplevel printing of lazy values
|
||||
(Leo White, review by Gabriel Scherer)
|
||||
- PR#6680: Missing parentheses when printing polymorphic variant value in warning
|
||||
- PR#6686: Bug in [subst_boxed_number] (Jérémie Dimino, Mark Shinwell)
|
||||
- PR#6680: Missing parentheses in warning about polymorphic variant value
|
||||
(Jacques Garrigue and Gabriel Scherer, report by Philippe Veber)
|
||||
- PR#6686: Bug in [subst_boxed_number]
|
||||
(Jérémie Dimino, Mark Shinwell)
|
||||
- PR#6690: Uncaught exception (Not_found) with (wrong) wildcard or unification
|
||||
type variable in place of a local abstract type
|
||||
type variable in place of a local abstract type
|
||||
(Jacques Garrigue, report by Mikhail Mandrykin)
|
||||
- PR#6693 (part two): Incorrect relocation types in x86-64 runtime system
|
||||
(Peter Zotov, review by Jacques-Henri Jourdan, Xavier Leroy and Mark Shinwell)
|
||||
- PR#6717: Pprintast does not print let-pattern attributes
|
||||
(Gabriel Scherer, report by Peter Zotov)
|
||||
- PR#6727: Printf.sprintf "%F" misbehavior
|
||||
|
@ -218,36 +246,45 @@ Bug fixes:
|
|||
- PR#6749: ocamlopt returns n for (n mod 1) instead of 0
|
||||
(Mark Shinwell and Jérémie Dimino)
|
||||
- PR#6763: #show with -short-paths doesn't select shortest type paths
|
||||
(Jacques Garrigue, report by David Sheets)
|
||||
- PR#6768: Typechecker overflow the stack on cyclic type
|
||||
- PR#6770: (duplicate of PR#6686)
|
||||
(Jacques Garrigue, report by user 'darktenaibre')
|
||||
- PR#6775: Digest.file leaks file descriptor on error
|
||||
(Valentin Gatien-Baron)
|
||||
- PR#6787: Soundness bug with polymorphic variants
|
||||
(Jacques Garrigue, with help from Leo White and Grégoire Henry,
|
||||
report by Michael O'Connor)
|
||||
- PR#6791: "%s@[", "%s@{" regression in Scanf
|
||||
(Benoît Vaugon)
|
||||
- PR#6793: ocamlbuild passes nonsensical "-ocamlc ..." commands to menhir
|
||||
(Gabriel Scherer, report by Damien Doligez)
|
||||
- PR#6812: -short-paths and -no-alias-deps can create inconsistent assumptions
|
||||
(Jacques Garrigue, report by Valentin Gatien-Baron)
|
||||
- PR#6817: GADT exhaustiveness breakage with modules
|
||||
(Leo White, report by Pierre Chambart)
|
||||
- PR#6824: fix buffer sharing on partial application of Format.asprintf
|
||||
(Gabriel Scherer, report by Alain Frisch)
|
||||
- PR#6836: Assertion failure using -short-paths
|
||||
(Jacques Garrigue, report by David Sheets)
|
||||
- PR#6841: Changing compilation unit name with -o breaks ocamldebug
|
||||
(Jacques Garrigue, report by Jordan Walke)
|
||||
- PR#6843: record weak dependencies even when the .cmi is missing
|
||||
(Leo White, Gabriel Scherer)
|
||||
- PR#6849: Inverted pattern unification error
|
||||
(Jacques Garrigue, report by Leo White)
|
||||
- PR#6862: Exhaustiveness check wrong for class constructor arguments
|
||||
- PR#6870: Unsoundness when -rectypes fails to detect non-contractive type
|
||||
(Jacques Garrigue)
|
||||
- PR#6870: Unsoundness when -rectypes fails to detect non-contractive type
|
||||
(Jacques Garrigue, report by Stephen Dolan)
|
||||
- PR#6872: Type-directed propagation fails to disambiguate variants
|
||||
that are also exception constructors
|
||||
that are also exception constructors
|
||||
(Jacques Garrigue, report by Romain Beauxis)
|
||||
- GPR#143: fix getsockopt behaviour for boolean socket options
|
||||
(Anil Madhavapeddy and Andrew Ray)
|
||||
- ocamlbuild on cygwin cannot find ocamlfind
|
||||
(user 'algoriddle')
|
||||
- allow android build with pthreads support (since SDK r10c)
|
||||
(Peter Zotov)
|
||||
|
||||
Feature wishes:
|
||||
- PR#6452, GPR#140: add internal suport for custom printing formats
|
||||
(Jérémie Dimino)
|
||||
- PR#6641: add -g, -ocamlcflags, -ocamloptflags options to ocamlmklib
|
||||
(Peter Zotov)
|
||||
- PR#6693: also build libasmrun_shared.so and lib{asm,caml}run_pic.a
|
||||
|
|
Loading…
Reference in New Issue