summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
authornaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-04-23 20:59:03 +0000
committernaruse <naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-04-23 20:59:03 +0000
commit2dca886a0702e51ff06926bd94c36e6983cc450d (patch)
treea30df35421c36b860017bd6d445ece7e0c125174 /parse.y
parent708e1bd49db643c66deef21d05d92e5ac9e31007 (diff)
* parse.y (dsym_node_gen): like r45492, call rb_gc_resurrect().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y3
1 files changed, 3 insertions, 0 deletions
diff --git a/parse.y b/parse.y
index 726f89130b..aa52183ea7 100644
--- a/parse.y
+++ b/parse.y
@@ -9571,6 +9571,9 @@ dsym_node_gen(struct parser_params *parser, NODE *node)
case NODE_STR:
lit = node->nd_lit;
node->nd_lit = ID2SYM(rb_intern_str(lit));
+ if (!STATIC_SYM_P(node->nd_lit)) {
+ rb_gc_resurrect(node->nd_lit);
+ }
nd_set_type(node, NODE_LIT);
break;
default: