diff --git a/compile.c b/compile.c index 6a471c2d2c..b726a03d59 100644 --- a/compile.c +++ b/compile.c @@ -11954,7 +11954,7 @@ iseq_build_kw(rb_iseq_t *iseq, VALUE params, VALUE keywords) rb_raise(rb_eTypeError, "keyword default has unsupported len %+"PRIsVALUE, key); } ids[i] = SYM2ID(sym); - dvs[j] = default_val; + RB_OBJ_WRITE(iseq, &dvs[j], default_val); } keyword->table = ids;