From d0717efda64efba9b7b7d6602fddf797a05af196 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Fri, 23 Jun 2017 17:58:43 +0900 Subject: Should raise an exception if `break` called in ensure; fix #3721 --- mrbgems/mruby-compiler/core/codegen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mrbgems/mruby-compiler/core/codegen.c') diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c index daf6100a3..3094ead69 100644 --- a/mrbgems/mruby-compiler/core/codegen.c +++ b/mrbgems/mruby-compiler/core/codegen.c @@ -2948,7 +2948,7 @@ loop_break(codegen_scope *s, node *tree) genop_peep(s, MKOP_A(OP_POPERR, 1), NOVAL); loop = loop->prev; } - while (loop && loop->type == LOOP_RESCUE) { + while (loop && (loop->type == LOOP_RESCUE || loop->type == LOOP_BEGIN)) { loop = loop->prev; } if (!loop) { -- cgit v1.2.3