OCaml4.04.1の変更点

last mod. 2017-04-17 (月) 16:08:55

http://caml.inria.fr/pub/distrib/ocaml-4.04/notes/Changes を元にしています。

既存のプログラムを壊す可能性のある変更点には * をつけてある。

コード生成と最適化

  • PR#7501, GPR#1089: Flambda 使用時に長さ0の配列を定数として扱う
    (Pierre Chambart, review by Mark Shinwell and Leo White)

標準ライブラリ

  • PR#7403, GPR#894: 4.04 で追加された Set.map のバグを修正
    (Gabriel Scherer, report by Thomas Leonard)

ツール

  • PR#7411: ocamldoc: モジュールの説明文にネストした pre タグが出力されないように
    (Florian Angeletti, report by user 'kosik')
  • PR#7488: ocamldoc: LaTeX 出力で引数なし構成子があるバリアント型が正しく出力されない
    (Florian Angeletti, report by Xavier Leroy)

ビルドシステム

  • PR#7373, GPR#1023: Makefile.nt に flexlink バイナリをブートストラップする flexlink ターゲットを追加。このターゲットは FlexDLL C オブジェクトのブートストラップはしない
    (David Allsopp)

バグ修正

  • PR#7369: Str.regexp が "Invalid_argument: index out of bounds" 例外を投げる
    (Damien Doligez, report by John Whitington)
  • PR#7373, GPR#1023: ブートストラップした FlexDLL を使った ocamlmklib を修正。ブートストラップした FlexDLL オブジェクトは標準ライブラリ以下の flexdll ディレクトリにインストールされるようになった。これにより、コンパイラから flexdll オブジェクトを選択できるようになり、さらに、 ocamlmklib では標準ライブラリ全体を追加することなしに flexdll をライブラリに含められるようになる
    (David Allsopp)
  • PR#7385, GPR#1057: Windows 上で TZ 環境変数を設定している場合やシステム時間が夏時間の場合、 Unix.stat が誤ったタイムスタンプを返すのを修正
    (David Allsopp, report and initial fix by Nicolás Ojeda Bär, review and superior implementation suggestion by Xavier Leroy)
  • PR#7405, GPR#903: s390x: ネイティブ dynlink モジュール内の caml_raise_exn のアドレスを修正
    (Richard Jones, review by Xavier Leroy)
  • PR#7417, GPR#930: WITH_FRAME_POINTERS を定義してビルドした x86-64 ocaml で caml_allocN 内でスタック上の要素が16バイト単位にアライメントされることを保証する
    (Christoph Cullmann)
  • PR#7456, GPR#1092: デバッグ情報に似たような位置情報が大量に含まれるソースファイルでコンパイルが遅くなる問題を修正
    (Mark Shinwell)
  • PR#7457: systhreads ライブラリの POSIX 実装で二重に free する場合がある
    (Xavier Leroy, report by Chet Murthy)
  • PR#7460, GPR#1011: 未知のファイルを引数に渡した場合の例外を捕捉する(4.04.0 で導入されたバグ)
    (Bernhard Schommer, review by Florian Angeletti and Gabriel Scherer, report by Stephen Dolan)
  • PR#7505: Bigarray.Genarray.change_layout を呼んだ後にメモリが開放されなくなる
    (Damien Doligez and Xavier Leroy, report by Liang Wang)
  • GPR#912: #define CAML_INTERNALS 漏れで Windows 上の Unix.create_process が segfault する
    (David Allsopp)
  • GPR#980: ocamlopt.opt からプラグインを読み込めるように ocamlbytecomp.cmxa に dynlink オプションを追加。 http://github.com/OCamlPro/ocamlc-plugins も参照
    (Fabrice Le Fessant, review by David Allsopp)
  • GPR#992: caml-types.el: format 引数の渡し忘れ。 caml-types-show-call が正しく動くように
    (Chunhui He)
  • GPR#1043: Unix/Cygwin 版の ocamlyacc で Windows 流の CRLF 改行を許す
    (David Allsopp, review by Damien Doligez and Xavier Leroy)
  • GPR#1072: Sys.runtime_parameters: バックトレースを有効にしたときに segfault するのを修正
    (Olivier Andrieu)

新規 編集 添付