ruby-trunk-changes r34296 - r34301

今日は Exception#== の再修正などありました。

drbrain:r34296 2012-01-14 06:59:36 +0900

IO.read の rdoc のマークアップの体裁を修正しています。

svn:r34297 2012-01-14 06:59:41 +0900

version.h の日付更新。

naruse:r34298 2012-01-14 08:41:55 +0900

r34291 で Exception#== の引数に exception メソッドを呼ぶようになりましたが、XMLRPC::FaultException のように exception に引数なしで呼ぶと ArgumentError が発生するものを渡すと例外になってしまうので一旦 revert しています。 [ruby-core:41979] [Bug #5865]

nobu:r34299 2012-01-14 12:00:24 +0900

Exception#== の内部で exception メソッドを呼ぶところで rb_protect() を使って例外を無視させるようにしています。 rb_protect() で例外を握り潰す時に rb_thread_t::errinfo のクリアをしていないので load の中で実行すると後で例外が再発生しますね。 [ruby-core:41979] [Bug #5865]

nobu:r34300 2012-01-14 12:02:57 +0900

r34295 で rb_enc_sprintf/vsprintf の指定されたエンコーディングが ASCII compatible でないとエラーにしましたが、判定を変更してワイドキャラクタ(wchar_t ベースのエンコーディングと表現されています)だとエラーになるようにしています。

nagachika:r34301 2012-01-14 18:36:18 +0900

r34299 で exception メソッドで例外を rb_protect() で無視した時に rb_thread_t::errinfo をクリアするようにして例外が漏れないようにしています。 [ruby-core:41979] [Bug #5865]