should raise error on return in block in top-level; close #664

This commit is contained in:
Yukihiro Matz Matsumoto
2012-12-21 23:52:40 +09:00
parent e48ed9c964
commit 40ea525d1e
+4
View File
@@ -1199,6 +1199,10 @@ mrb_run(mrb_state *mrb, struct RProc *proc, mrb_value self)
goto L_RAISE;
}
ci = mrb->ci = mrb->cibase + e->cioff;
if (ci == mrb->cibase) {
localjump_error(mrb, "return");
goto L_RAISE;
}
break;
}
case OP_R_NORMAL: