diff --git a/ChangeLog b/ChangeLog index a3b2dea461..0f28e21be2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sun Jun 1 06:55:26 2014 Nobuyoshi Nakada + + * parse.y (intern_str): dynamic attrset ID is registered by + `rb_id_attrset()` already, so no further registration is needed. + [ruby-core:62861] + Sun Jun 1 04:52:47 2014 Zachary Scott * lib/English.rb: [DOC] $LOADED_FEATURES moved to load.c [Fixes GH-620] 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