diff --git a/insns.def b/insns.def index d606fa722b..df0cd26517 100644 --- a/insns.def +++ b/insns.def @@ -760,7 +760,7 @@ opt_str_freeze val = vm_opt_str_freeze(str, BOP_FREEZE, idFreeze); if (val == Qundef) { - PUSH(str); + PUSH(rb_str_resurrect(str)); #ifndef MJIT_HEADER ADD_PC(-WIDTH_OF_opt_send_without_block); #endif @@ -777,7 +777,7 @@ opt_str_uminus val = vm_opt_str_freeze(str, BOP_UMINUS, idUMinus); if (val == Qundef) { - PUSH(str); + PUSH(rb_str_resurrect(str)); #ifndef MJIT_HEADER ADD_PC(-WIDTH_OF_opt_send_without_block); #endif