ruby-trunk-changes r57092 - r57105

今日は String#gsub などのメソッドで置換文字列内で名前によるグループ参照をした時に SEGV することがある不具合の修正や Range リテラルが利用されない位置にあると異常終了する不具合の修正のほか、FreeBSD での DTrace 関係のチェックの修正などがありました。

nobu: r57092 2016-12-16 20:59:57 +0900

configure.in で RUBY_DTRACE_AVAILABLE のためのチェックの重複を省いているそうですが、これは後で revert されています。

nobu: r57093 2016-12-16 21:16:33 +0900

FreeBSD での DTrace のためのチェックで dtrace コマンドに -xnolibs というオプションが必要な場合があったみたいなので試して追加するようにしています。 [ruby-core:78676] [Bug #13041]

nobu: r57094 2016-12-16 21:28:19 +0900

configure.in の不要な空白除去。

nobu: r57095 2016-12-17 07:57:01 +0900

r57089 で複数の改行コードをヒアドキュメントの終了トークンの指定に使った時にエラーにする変更で 2つ目の改行をうまく検出できていなかったので修正しています。

svn: r57096 2016-12-17 07:57:02 +0900

version.h の日付更新。

nobu: r57097 2016-12-17 09:01:42 +0900

r57093 の configure でのチェック時に dtrace に -xnolibs をつける変更で最初にこのオプションをチェックするように再修正しています。 [ruby-core:78676] [Bug #13041]

nobu: r57098 2016-12-17 09:52:47 +0900

String#sub, #gsub などで置換文字列内の参照文字列などの処理をする re.c の rb_reg_regsub() の引数 regexp に Qnil が渡されている場合のチェックを追加しています。対応するものがない時の名前でのグループ参照が SEGV で落ちてたようです。 [ruby-core:78686] [Bug #13042]

nobu: r57099 2016-12-17 09:58:46 +0900

test/uri/test_mailto.rb で全体が module URI のスコープ内になっていたのを修正しています。

nobu: r57100 2016-12-17 09:58:47 +0900

test/uri/test_mailto.rb で test_to_mailtext というテストメソッドが 2つ定義されていて上書きされていたのを修正しています。 [ruby-core:67763] [Bug #10774]

naruse: r57101 2016-12-17 14:14:14 +0900

RubyCI が失敗していたようで r57093, r57094, r57097 の FreeBSD での dtrace チェック関係の変更を revert しています。

nobu: r57102 2016-12-17 14:27:05 +0900

r57092 の configure.in の DTrace 関係のチェックの重複除去のほうを revert しています。

nobu: r57103 2016-12-17 16:48:57 +0900

r57092 のリトライ。細かくみてませんが $rb_cv_prog_dtrace_g = rebuild の時の DTRACE_OBJ=probes.$(OBJEXT) を追加するようにしているようです(そのため AS_CASE で書いてたのを AS_IF に書き直してたりもしますが)。

nobu: r57104 2016-12-17 16:48:58 +0900

RubyCI の失敗は r57092 が原因だったっぽくて r57101 で revert された r57093, r57094, r57097 は再度適用されています。

rhe: r57105 2016-12-17 17:25:34 +0900

r56316 の flip-flop 演算子コンパイルについての修正で数値リテラルによる Range オブジェクトのリテラルが結果を利用されないコンテキストに置かれているときに stack consistency error による異常終了が発生する不具合を修正しています。