diff options
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | insns.def | 7 |
2 files changed, 9 insertions, 2 deletions
@@ -1,3 +1,7 @@ +Fri Jun 15 15:55:55 2007 Koichi Sasada <ko1@atdot.net> + + * insns.def(setconstant, toregexp): fix to mark object correctly. + Fri Jun 15 13:24:18 2007 Koichi Sasada <ko1@atdot.net> * hash.c: exchange semantics of Hash#each and Hash#each_pair. @@ -285,9 +285,11 @@ setconstant case T_CLASS: case T_MODULE: break; - default: + default: { + volatile VALUE tmp = rb_obj_as_string(klass); rb_raise(rb_eTypeError, "%s is not a class/module", - RSTRING_PTR(rb_obj_as_string(klass))); + RSTRING_PTR(tmp)); + } } rb_const_set(klass, id, val); @@ -446,6 +448,7 @@ toregexp (VALUE str) (VALUE val) { + volatile VALUE tmp = str; val = rb_reg_new(RSTRING_PTR(str), RSTRING_LEN(str), flag); } |