summaryrefslogtreecommitdiff
path: root/parse.y
diff options
context:
space:
mode:
Diffstat (limited to 'parse.y')
-rw-r--r--parse.y4
1 files changed, 3 insertions, 1 deletions
diff --git a/parse.y b/parse.y
index a4480b15c7..4ee2b49392 100644
--- a/parse.y
+++ b/parse.y
@@ -10657,7 +10657,9 @@ next_id(VALUE str)
static ID
intern_str(VALUE str)
{
- return register_static_symid_str(next_id(str), str);
+ ID id = next_id(str);
+ if (ID_DYNAMIC_SYM_P(id) && is_attrset_id(id)) return id;
+ return register_static_symid_str(id, str);
}
ID