From: Kenta Murata Date: 2010-03-15T22:32:41+09:00 Subject: [ruby-dev:40647] [Bug #2965] method `===' called on hidden T_STRING object (NotImplementedError) チケット #2965 が更新されました。 (by Kenta Murata) 1.9.2dev は以下の patch で直りました。 修正の方向性が正しければコミットします。 如何でしょう? diff --git a/compile.c b/compile.c index 1db4e9c..b47999b 100644 --- a/compile.c +++ b/compile.c @@ -4426,7 +4426,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; ---------------------------------------- http://redmine.ruby-lang.org/issues/show/2965 ---------------------------------------- http://redmine.ruby-lang.org