ruby-trunk-changes r62861 - r62872

今日はインデント除去つきヒアドキュメント内で行継続した時の挙動の変更などがありました。

nobu: r62861 2018-03-20 22:30:57 +0900

NODE の rest 引数や必須 keyword 引数を表現するものを判定するマクロ NODE_NAMED_REST_P() と NODE_REQUIRED_KEYWORD_P() を導入してこれを使ってチェックするようにリファクタリングしています。

nobu: r62869 2018-03-21 11:20:37 +0900

iseq.c の validate_get_insn_info() という関数の引数に const 修飾子追加。

svn: r62870 2018-03-21 11:20:38 +0900

version.h の日付更新。

nobu: r62871 2018-03-21 19:06:23 +0900

r62856 で RubyVM::InstructionSequence.load_from_binary のテストを skip するようにしていましたが assert のところだけ skip してて肝心の RubyVM::InstructionSequence.load_from_binary の呼び出しは行なわれてたのでその前で skip するようにしています。 r62851 の ISeq の GC mark の変更で load_from_binary に問題があるみたいです。

nobu: r62872 2018-03-21 19:32:15 +0900

インデント除去つきヒアドキュメント内で行継続(行末にバックスラッシュを置く)があると、継続した次の行のインデント部分は除去せずに連結されていたのを修正しています。うーん、なるほどー。まあ確かにそうなることを期待するような気はする……。 [ruby-core:86236] [Bug #14621]