ruby-changes:48532
From: mame <ko1@a...>
Date: Sat, 4 Nov 2017 22:31:51 +0900 (JST)
Subject: [ruby-changes:48532] mame:r60647 (trunk): parse.y (new_args_tail_gen): returns a NODE instead of imemo
mame 2017-11-04 22:31:46 +0900 (Sat, 04 Nov 2017) New Revision: 60647 https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=60647 Log: parse.y (new_args_tail_gen): returns a NODE instead of imemo `new_args_tail_gen` returned imemo, but the value was later accessed as `NODE*`. This prevented change of NODE structure. Modified files: trunk/parse.y Index: parse.y =================================================================== --- parse.y (revision 60646) +++ parse.y (revision 60647) @@ -876,9 +876,11 @@ new_args_gen(struct parser_params *parse https://github.com/ruby/ruby/blob/trunk/parse.y#L876 static inline VALUE new_args_tail_gen(struct parser_params *parser, VALUE k, VALUE kr, VALUE b) { - VALUE r = (VALUE)MEMO_NEW(k, kr, b); - add_mark_object(r); - return r; + NODE *t = rb_node_newnode(NODE_ARGS_AUX, k, kr, b); + add_mark_object(k); + add_mark_object(kr); + add_mark_object(b); + return (VALUE)t; } #define new_args_tail(k,kr,b,location) new_args_tail_gen(parser, (k),(kr),(b)) -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/