ruby-trunk-changes r58502 - r58506

今日は eval 系メソッドに負の行番号を渡した時の不具合(?)修正がありました。

hsbt: r58502 2017-04-28 21:14:56 +0900

拡張ライブラリ gdbm の .gemspec ファイルでバージョン番号を 2.0.0.beta1 に更新しています。 gdbm.gem は既に存在していて 1.3.1 までバージョンがリリースされているのでそれよりも新しくしているようです。

nobu: r58503 2017-04-29 11:58:53 +0900

eval 系のメソッドで明示的に行番号を渡した時に、負の行番号を渡すと値がずれる不具合を修正しています。まあそもそも負の行番号ってなんだって感じではありますが。 [ruby-core:80920] [Bug #13523]

svn: r58504 2017-04-29 11:58:54 +0900

version.h の日付更新。

nobu: r58505 2017-04-29 19:27:46 +0900

proc.c の rb_block_min_max_arity() で再帰呼び出しを使っていたところを goto によるループ(って言うのかな)に展開しています。

normal: r58506 2017-04-29 19:50:59 +0900

load.c の rb_construct_expanded_load_path() で絶対パス化した文字列オブジェクトについて rb_str_freeze() を呼ぶのをやめています。 expand_path() のマクロで rb_fstring() が使われてるってコミットログから読み取ったのですが、そんなことはないような気が…。rstr_shrink() は呼ばれているけど、どこで freeze されるのかわかりませんでした。