summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/kernel.c3
-rw-r--r--src/vm.c3
2 files changed, 3 insertions, 3 deletions
diff --git a/src/kernel.c b/src/kernel.c
index e578918af..54c90dfc0 100644
--- a/src/kernel.c
+++ b/src/kernel.c
@@ -507,9 +507,6 @@ mrb_obj_instance_eval(mrb_state *mrb, mrb_value self)
if (mrb_get_args(mrb, "|S&", &a, &b) == 1) {
mrb_raise(mrb, E_NOTIMP_ERROR, "instance_eval with string not implemented");
}
- if (mrb_nil_p(b)) {
- mrb_raise(mrb, E_ARGUMENT_ERROR, "no block given");
- }
switch (mrb_type(self)) {
case MRB_TT_SYMBOL:
case MRB_TT_FIXNUM:
diff --git a/src/vm.c b/src/vm.c
index 13058fc28..9224c7a40 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -392,6 +392,9 @@ mrb_yield_internal(mrb_state *mrb, mrb_value b, int argc, mrb_value *argv, mrb_v
int n = mrb->ci->nregs;
mrb_value val;
+ if (mrb_nil_p(b)) {
+ mrb_raise(mrb, E_ARGUMENT_ERROR, "no block given");
+ }
p = mrb_proc_ptr(b);
ci = cipush(mrb);
ci->mid = mid;