ruby-trunk-changes r52886 - r52898

今日は Windows 環境での ATOMIC_SIZE_CAS() や環境変数エンコーディング変換の修正などがありました。

ngoto: r52886 2015-12-05 00:59:10 +0900

RB_OBJ_TAINT() マクロで taint できないオブジェクトの時の 0 に (void) キャストを追加しています。 r52881 に追随させています。 Oracle Solaris Studio でエラーになったそうです。

svn: r52887 2015-12-05 00:59:22 +0900

version.h の日付更新。

nobu: r52888 2015-12-05 02:26:38 +0900

compile.c のコンパイル時のエラー処理マクロ COMPILE_ERROR() で th->errinfo を入れ換えしていたのを、メッセージの文字列のみ追記していくようにしています。

nobu: r52889 2015-12-05 02:28:26 +0900

COMPILE_ERROR() は引数を受け取るマクロとしてではなくただの関数を返す(関数ポインタを返す関数の呼び出しに展開される)マクロにして、引数の余分なかっこを削っています。

normal: r52890 2015-12-05 06:08:47 +0900

vm.c の ruby_vm_verbose_ptr() と ruby_vm_debug_ptr() という関数を static にしています。

nobu: r52891 2015-12-05 09:23:36 +0900

fill_random_seed() で乱数を詰めるサイズが配列の1要素サイズになっていたので、バッファ全体になるように修正しています。

nobu: r52892 2015-12-05 09:25:43 +0900

Windows 版の ATOMIC_SIZE_CAS() の InterlockedCompareExchange64() に渡す引数の順番が入れかわっていたのを修正しています。おおう…。

nobu: r52893 2015-12-05 09:56:52 +0900

gcc の builtin 関数 __atomic_xxx を利用する場合の ATOMIC_CAS() の定義で元の値を返すための変数定義の方を oldval からでなく var から得るようにしています。 自動的な型変換が行なわれる可能性を考慮しているようです。

nobu: r52894 2015-12-05 11:57:39 +0900

make reconfig 時に出力の色付けのために CONFIGURE_TTY という変数を設定するところで export して環境変数として設定しておくようにしています。

nobu: r52895 2015-12-05 16:58:11 +0900

2.3 で新しく導入された "&." いわゆるぼっち演算子を使ったスクリプトを --dump=parsetree で AST ダンプさせようとすると対応していなくて SEGV していたのを修正しています。 http://twitter.com/watson1978/status/673042429931446272 [Feature #11537]

nobu: r52896 2015-12-05 17:26:26 +0900

Windows環境変数 ENV の値に非ASCII文字を含む文字列をセットするのに対応しています。 [ruby-core:56822] [Bug #8822]

nobu: r52897 2015-12-05 17:33:38 +0900

ruby のテスト用のライブラリでエラーメッセージを join で繋げる時に Encoding::CompatibilityError が発生したら String#b で ASCII-8BIT にしてから join するように fallback 処理を追加しています。

nobu: r52898 2015-12-05 17:48:28 +0900

srcdir が絶対パスの時にクロスコンパイルができなくなっていたのを修正しています。 https://github.com/ruby/ruby/pull/1125