ruby-trunk-changes r62686 - r62696

今日は標準添付ライブラリ uri の不具合修正や MJIT の最適化の続きなどがありました。

nobu: r62686 2018-03-07 20:49:23 +0900

complex.c と rational.c のインデント修正のみ。

nobu: r62687 2018-03-07 20:49:24 +0900

Complex と Rational の文字列からの変換 nucomp_s_convert() と nurat_s_convert() で既に正規表現は利用していないので不要になっていた backref 変数と rb_backref_get() の呼び出しを削除しています。

nobu: r62688 2018-03-07 20:54:07 +0900

Complex の内部表現を正規化する nucomp_s_canonicalize_internal() で f_real_p() で real? メソッド呼び出ししていたところを直接 RB_TYPE_P() で T_COMPLEX 型オブジェクトかどうかをみてチェックするように変更しています。

nobu: r62689 2018-03-07 21:04:43 +0900

complex.c の m_cos(), m_sin() でも f_real_p() でメソッド呼び出ししていたのを RB_TYPE_P() でチェックするように変更しています。

k0kubun: r62693 2018-03-07 23:35:28 +0900

tool/transform_mjit_header.rb で r62677 で inline 関数化するようにした VM 命令の実装関数リストに vm_getinstancevariable, vm_setinstancevariable, vm_setivar も追加しています。

naruse: r62695 2018-03-08 18:38:01 +0900

標準添付ライブラリ uriURI::Parser.unescape に %XX エンコードされた文字列と UTF-8 の文字列が混在したものが渡されると Encoding::CompatibilityError が発生していた不具合を修正しています。pack("C") のかわりに pack("H2") を利用するようにしています。 [ruby-core:85990] [Bug #14586]

svn: r62696 2018-03-08 18:38:02 +0900

version.h の日付更新。