diff --git a/src/vm.c b/src/vm.c index cdef6ab2d..78f32ac96 100644 --- a/src/vm.c +++ b/src/vm.c @@ -902,7 +902,12 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self) else { ci->argc = n; } - ci->target_class = c; + if (c->tt == MRB_TT_ICLASS) { + ci->target_class = c->c; + } + else { + ci->target_class = c; + } ci->pc = pc + 1; ci->acc = a;