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.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
mame 2017-11-04 13:31:46 +00:00
parent 0ec91a46ac
commit fbc8b87e94

View File

@ -876,9 +876,11 @@ new_args_gen(struct parser_params *parser, VALUE f, VALUE o, VALUE r, VALUE p, V
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))