From a61def802e025ddc431ded0e6982cd1e25bd356f Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Wed, 7 Aug 2013 17:45:24 +0900 Subject: return statement should terminate execution of a method defined by define_method --- src/class.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/class.c b/src/class.c index 6d77f24e6..bd55c1f71 100644 --- a/src/class.c +++ b/src/class.c @@ -1484,6 +1484,7 @@ mod_define_method(mrb_state *mrb, mrb_value self) } p = (struct RProc*)mrb_obj_alloc(mrb, MRB_TT_PROC, mrb->proc_class); mrb_proc_copy(p, mrb_proc_ptr(blk)); + p->flags |= MRB_PROC_STRICT; mrb_define_method_raw(mrb, c, mid, p); return blk; } -- cgit v1.2.3