ruby-trunk-changes r34561 - r34575

今日は引数1つだけの respond_to? が定義されている場合にエラーになる問題の対策などが入れられました。

akr:r34561 2012-02-12 01:28:13 +0900

Time の rdoc に現在の Time の内部表現は epoch (1977/1/1)からの nano second を 63bit signed integer (1823-11-12 から 2116-02-20 あたりの範囲を表現可能)もしくは Bignum, Rational を利用していることを追記しています。

svn:r34562 2012-02-12 01:28:18 +0900

version.h の日付更新。

akr:r34563 2012-02-12 01:48:04 +0900

r34561 に追記した rdoc で現在の Time の内部表現が 1.9.2 から導入されたことも追記しています。

drbrain:r34564 2012-02-12 04:15:36 +0900

respond_to? には省略可能な第2引数があるのですが、ライブラリなどで自前で respond_to? を定義している時に引数を1つしか定義していなくて、処理系から第2引数を指定して呼ばれると ArgumentError になってしまうということが起きるので、respond_to? を呼ぶ時には arity をチェックして、引数が 2つ渡せない時には引数を1つだけにして呼ぶようにしています。 [ruby-core:42493] [Bug #6000]
そういえば確か pry もこの不具合がありました。あとチケットの番号が 6000 番台に到達しましたね。

ktsj:r34567 2012-02-12 15:17:25 +0900

benchmark/driver.rb の未使用変数やブロック変数名の衝突の警告除去。

knu:r34568 2012-02-12 16:33:09 +0900

tool/merger.rb がマージ元ブランチを認識するために .svn/entries を読んでいたのを subversion 1.7 からは .svn ディレクトリが working copy のトップレベルのディレクトリにのみ置かれるようになったのに対応するため svn info の出力を検査するように変更しています。

nobu:r34575 2012-02-12 20:44:06 +0900

rb_event_hook_func_t という関数ポインタ型の宣言で引数の名前を書くようにしています。