diff --git a/Changes b/Changes index e07983167..c22800b1b 100644 --- a/Changes +++ b/Changes @@ -27,6 +27,8 @@ Compilers: explicitly used). - Check that at most one of -pack, -a, -shared, -c, -output-obj is given on the command line. +- Optimized compilation of private types as regular manifest types + (e.g. abbreviation to float, float array or record types with only float fields). Native-code compiler: - A new option "-shared" to produce a plugin that can be dynamically @@ -57,7 +59,10 @@ Standard library: to obtain a stack backtrace of the most recently raised exception. New function "record_backtrace" to turn the exception backtrace mechanism on or off from within a program. -- Scanf library: debunking of meta format implementation. +- Scanf library: debunking of meta format implementation; + fscanf behaviour revisited: only one input buffer is allocated for any + given input channel; + the %n conversion does not count a lookahead character as read. Other libraries: - Dynlink: on some platforms, the Dynlink library is now available in @@ -98,13 +103,16 @@ Bug fixes: - PR#4512: type-checking of recursive modules - PR#4517: crash in ocamllex-generated lexers. - PR#4542: problem with return value of Unix.nice. -- PR#4557: type-checking of recursive modules +- PR#4557: type-checking of recursive modules. +- PR#4562: strange %n semantics in scanf. - PR#4564: add note "stack is not executable" to object files generated by ocamlopt (Linux/x86, Linux/AMD64). - PR#4566: bug in Ratio.approx_ratio_fix and Num.approx_num_fix. - PR#4583: stack overflow in "ocamlopt -g" during closure conversion pass. - PR#4585: ocamldoc and "val virtual" declarations. - PR#4587: ocamldoc and escaped @ characters. +- PR#4605: Buffer.add_substitute was sometime wrong when target string had backslashes. +- PR#4614: Inconsistent declaration of CamlCBCmd in LabelTk library. Objective Caml 3.10.2: