summaryrefslogtreecommitdiffhomepage
path: root/src/codegen.c
diff options
context:
space:
mode:
authorYukihiro Matsumoto <[email protected]>2012-10-20 03:30:58 +0900
committerYukihiro Matsumoto <[email protected]>2012-10-20 03:30:58 +0900
commitda637cac4a3520f7d6d9a69b392be4309f36ef5b (patch)
tree234f5f983be59645d1446f233910c471605bc554 /src/codegen.c
parentb4f6f964b424589fc0c9a3d695290695716d4ebe (diff)
downloadmruby-da637cac4a3520f7d6d9a69b392be4309f36ef5b.tar.gz
mruby-da637cac4a3520f7d6d9a69b392be4309f36ef5b.zip
should handle break in rescue
Diffstat (limited to 'src/codegen.c')
-rw-r--r--src/codegen.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/codegen.c b/src/codegen.c
index d42a099c8..19a5835fa 100644
--- a/src/codegen.c
+++ b/src/codegen.c
@@ -2146,6 +2146,9 @@ loop_break(codegen_scope *s, node *tree)
genop_peep(s, MKOP_A(OP_POPERR, 1), NOVAL);
loop = loop->prev;
}
+ while (loop->type == LOOP_RESCUE) {
+ loop = loop->prev;
+ }
if (loop->type == LOOP_NORMAL) {
int tmp;