ruby-trunk-changes r63291 - r63300

今日は mspec, rubyspec の更新や macOS での libruby の共有ライブラリのファイル名に含めるバージョンの変更をしています。

eregon: r63291 2018-04-29 04:49:24 +0900

mspec の upstream からマージしています。

svn: r63292 2018-04-29 04:49:25 +0900

version.h の日付更新。

eregon: r63293 2018-04-29 04:50:06 +0900

rubyspec も upstream からマージしています。

svn: r63294 2018-04-29 04:50:10 +0900

r63293 の新規追加ファイルの svn property 設定。

eregon: r63295 2018-04-29 05:37:20 +0900

spec/ruby/command_line/dash_upper_i_spec.rb で実行している ruby が miniruby かどうか判定している箇所で拡張子を無視するようにしています。 Windows だと .exe がつくので誤判定を防ぐためだと思います。

eregon: r63296 2018-04-29 08:04:56 +0900

r63295 の追加修正。 PlatformGuard.implementation? という判定用のメソッドがあったみたいなのでこれを利用するようにしています。

nobu: r63297 2018-04-29 08:31:32 +0900

終端のない Range オブジェクトの Range#each の最適化で String の時と同様に Symbol の時も succ を呼ばずに rb_str_upto_endless_each() を利用するようにしています。

k0kubun: r63298 2018-04-29 12:20:31 +0900

MJIT で実行時に tool/ruby_vm/views/_mjit_compile_send.erb で生成するソースコードに明示的なキャストを追加しています。警告を抑制しているようです。

nobu: r63299 2018-04-29 16:12:56 +0900

Range#each に Bignum 用の最適化を追加しています。始点が整数で終端が Bignum かもしくは終端が省略されている時に直接インクリメントするようにしています。

knu: r63300 2018-04-29 20:15:41 +0900

macOS プラットフォームで共有ライブラリの libruby のファイル名のバージョンに teeny を含めないようにしています。 これって [Bug #13931] とか [Bug #14002] で何度か仕様? がいったりきたりしたやつですね。Vit がまたなにか言ってこないかなぁ、と思ったけど macOS だけだったら大丈夫か。