今日は "/" や "%" の最適化、alias 時の method_added が呼ばれた時の method entry から元のメソッド名が取れるようにする修正などがありました。
nagachika: r54018 2016-03-08 00:15:59 +0900
拡張ライブラリ tk でフォント名の指定が typo しているところがあったのを修正しています。 [ruby-core:72505] [Bug #11886]
svn: r54019 2016-03-08 00:16:00 +0900
version.h の日付更新。
nagachika: r54020 2016-03-08 00:23:25 +0900
拡張ライブラリ tk の tkextlib/blt/tree.rb で initialize メソッド名を typo していたのを修正しています。
nagachika: r54021 2016-03-08 00:26:38 +0900
拡張ライブラリ tk の tkextlib/tcllib/toolbar.rb でも initialize メソッドのメソッド名を typo していたのを修正しています。 [ruby-core:72511] [Bug #11891]
nagachika: r54022 2016-03-08 00:28:57 +0900
拡張ライブラリ tk の tkextlib/tcllib/tablelist_tile.rb で require を typo していたのを修正しています。 [ruby-core:72513] [Bug #11893]
usa: r54023 2016-03-08 00:44:34 +0900
r53998 で shebang の行の改行に "\r" が含まれていたら警告するようにしたのは、DOSISH が定義されている環境では出力しないようにしています。
nobu: r54024 2016-03-08 04:39:32 +0900
r54023 の再修正で DOSISH で warn_cr_in_shebang() の呼び出しをかこむのではなくてこのマクロ定義の部分で分岐しておくようにしています。またテストもスキップさせるのではなく警告の有無を環境によって変えるようにしています。
odaira: r54025 2016-03-08 08:22:49 +0900
標準添付ライブラリ net/imap のテストでスレッドの scheduling に依存して responses, requests が得られない場合もあるのでチェックを追加しています。 AIX でのテストのためでしょうが一般的な問題のようです。 Net::IMAP#idle のタイムアウトが短すぎるのかな。
usa: r54026 2016-03-08 16:55:48 +0900
Windows 向けの端末への出力関数 rb_w32_write_console() の VT100 エミュレーション(色付け?)をしていた部分を console が元々サポートしていたらそのまま出力するようにしています。
usa: r54027 2016-03-08 17:34:35 +0900
同じく rb_w32_write_console() で WriteConsoleW() のエラーをチェックするのに GetLastError() をみて未実装(ERROR_CALL_NOT_IMPLEMENTED)だったら disable フラグをたてて次からなにもせず -1 を返すようにしていたのを削除しています。 Windows 9X のサポートのための部分だったようです。 disable 変数はもう不要みたいですね。
naruse: r54028 2016-03-08 17:54:38 +0900
VM 命令の opt_mod 命令で y(右辺値)が 0 だった時にその場で rb_num_zerodiv() を呼び出していましたが、脱最適化してメソッド呼び出しにきりかえることで例外のバックトレースにメソッド名を含めるようにしています。 [ruby-core:74221] [Bug #12158]
naruse: r54029 2016-03-08 18:15:18 +0900
rb_divmod(), rb_div(), rb_mod() などの関数を追加して、insns.def や numeric.c でそれぞれ実装していたのはこの関数呼び出しに置き換えています。 rb_divmod() は C のコンパイラの "/" や "%" 演算子の挙動が C99 に準拠していることを期待して余計な分岐を減らしています。
headius: r54030 2016-03-08 23:38:22 +0900
test/ruby/test_array.rb の Array#repeated_permutation についてのテストメソッドを分割しています。また子プロセスを起動する assert_separately を使っているところで timeout を 30秒に伸ばしています。
nobu: r54031 2016-03-09 00:07:05 +0900
標準添付ライブラリ logger で Logger::LogDevice#initialize の Hash を受け取るオプション引数をキーワード引数におきかえています。
svn: r54032 2016-03-09 00:07:06 +0900
version.h の日付更新。
nobu: r54033 2016-03-09 00:21:22 +0900
r53766 のあたりで --enable/--disable フラグや --debug フラグ、--dump フラグのオプションの定義をマクロ化したもので末尾の要素のあとにカンマが置かれてしまうので、要素にカンマを含めずに EACH_FEATURES() や EACH_DUMPS() で明示的にセパレータを挟むようにしています。
nobu: r54035 2016-03-09 00:29:48 +0900
alias した時に起動される Module#method_added の時点で method entry に元のメソッド名のIDがセットされた状態で呼ばれるように修正しています。