diff options
author | Aaron Patterson <tenderlove@ruby-lang.org> | 2019-09-04 14:37:13 -0700 |
---|---|---|
committer | Aaron Patterson <tenderlove@ruby-lang.org> | 2019-09-05 10:13:50 -0700 |
commit | 429ed8d587423414fbbf2f562479c69562d52598 (patch) | |
tree | 00425d9a636ff1b467642731f706382004fd9a81 | |
parent | 545b6db3fb367944f72cee5d41892eed63574634 (diff) |
Don't change DSTR nodes to ARRAY nodes
DSTR nodes are allocated in to the "markable" bucket where ARRAY nodes
are not. Switching buckets can cause errors during GC.
-rw-r--r-- | parse.y | 4 |
1 files changed, 1 insertions, 3 deletions
@@ -9611,9 +9611,7 @@ literal_concat(struct parser_params *p, NODE *head, NODE *tail, const YYLTYPE *l goto append; } else { - nd_set_type(tail, NODE_ARRAY); - tail->nd_head = NEW_STR(tail->nd_lit, loc); - list_concat(head, tail); + list_concat(head, NEW_NODE(NODE_ARRAY, NEW_STR(tail->nd_lit, loc), tail->nd_alen, tail->nd_next, loc)); } break; |