ruby-trunk-changes r38784 - r38792

今日は Psych と Win32OLE の修正、数値の coerce の呼び出しの再修正などがありました。

kazu:r38784 2013-01-11 23:38:57 +0900

ruby --help での --external-encoding と --internal-encoding の順番をいれかえています。 -E オプションの引数でまとめて指定する時の順序に合わせているとのこと。

zzak:r38785 2013-01-12 02:44:16 +0900

ruby の man(1) ページに --external-encoding と --internal-encoding オプションを追記しています。

svn:r38786 2013-01-12 02:44:22 +0900

version.h の日付更新。

suke:r38787 2013-01-12 07:59:51 +0900

拡張ライブラリ win32ole で WIN32OLE_VARIANT の WIN32OLE::VARIANT::VT_I8、 WIN32OLE::VARIANT::VT_BYREF の利用を cygwinmingw 環境でもサポートするようにしています。

tenderlove:r38788 2013-01-12 09:00:12 +0900

拡張ライブラリ psych の修正。 YAML でタグつきの Hash の要素を別の Hash にマージする表記を、タグのついていた要素が Hash でない時に "<<" というキーにその内容を格納するようにしています。

nobu:r38789 2013-01-12 10:41:43 +0900

r38787 の ChangeLog と ext/win32ole/win32ole.c の行末の空白除去のみです。

nobu:r38790 2013-01-12 16:06:49 +0900

bootstraptest で1ファイルのテスト終了時に改行を出力するかどうかの判定に出力が tty かを追加しています。

nobu:r38791 2013-01-12 16:12:49 +0900

win32/setup.mak の -runtime- のルールでやっていたことを rtname.cmd ファイルで実行可能ファイルからリンクしている msvcrt のパージョンを抽出するように方法を変更しているようです。内容はさっぱりですが。クロスコンパイル時のことを考慮した変更だそうです。

mrkn:r38792 2013-01-12 17:47:18 +0900

r38756 で数値の coerce でメソッドがない時も呼び出して例外を発生させて rescue するようにしていたのを rb_check_funcall() を使うようにしましたが、その副作用で coerce メソッドで例外を発生させた時の挙動が変化してしまっていたので、rb_check_funcall() ではなく rb_respond_to() を使ってメソッドが呼べるかどうかの確認をしてから従来通り rb_rescue で例外の捕捉をしつつ coerce を呼び出すようにしています。 [ruby-core:51345] [Bug #7645]