ruby-trunk-changes r63566 - r63571

今日は String#-@ の挙動の変更などがありました。

normal: r63566 2018-06-05 08:26:03 +0900

チケットみると String#-@ で常に dedup して欲しいという内容で、既に freeze されている String オブジェクトに対して呼ばれた時も dedup するようにしています。 [ruby-core:85669] [Feature #14478]

svn: r63567 2018-06-05 08:26:04 +0900

version.h の日付更新。

yui-knk: r63568 2018-06-05 09:18:29 +0900

test/-ext-/ast/test_ast.rb を test/ruby/test_ast.rb に改名しています。 ext/-test-/ast/ast.c がコアに入ったのでテストスクリプトも追随して test/ruby の下のテスト群に昇格しています。

normal: r63569 2018-06-05 09:37:05 +0900

GC 関連の設定用環境変数 RUBY_GC_MALLOC_LIMIT_MAX で 0 が指定されたらチェックを無効にするのに1つ分岐を節約するため、0 だったら SIZE_MAX に初期化することで実質制限なしになるようにしています。

yui-knk: r63570 2018-06-05 09:48:12 +0900

RubyVM::AST.parse のテストにヒアドキュメントのテストを追加しています。

shyouhei: r63571 2018-06-05 15:50:20 +0900

isnan(3) と isinf(3) のために新しめの C++コンパイラでは #include するようにしています。コミットログをみると C++11 では isnan() などのマクロが undef されてかわりに関数が定義されてて、しかも戻り値が bool に変わってて困るみたいなことが書かれてますね。 参考URL: https://developers.redhat.com/blog/2016/02/29/why-cstdlib-is-more-complicated-than-you-might-think/ [ruby-core:87364] [Bug #14816]