diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | compile.c | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Fri Apr 9 10:53:00 2010 Kenta Murata <mrkn@mrkn.jp> + + * compile.c (iseq_compile_each): stop hiding, and freeze unpopped + string nodes to allow method redefinition. [ruby-dev:40641] + Fri Apr 9 01:26:54 2010 Nobuyoshi Nakada <nobu@ruby-lang.org> * io.c (internal_{read,write}_func, rb_{read,write}_internal): @@ -4429,7 +4429,7 @@ iseq_compile_each(rb_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped) case NODE_STR:{ debugp_param("nd_lit", node->nd_lit); if (!poped) { - hide_obj(node->nd_lit); + OBJ_FREEZE(node->nd_lit); ADD_INSN1(ret, nd_line(node), putstring, node->nd_lit); } break; |