summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-04-03 12:41:27 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-04-03 12:41:27 +0900
commit666787beb23637e4c1856011e04cef86380fdb2d (patch)
treef339943f2b0e45bbe78b53287e45bd66ba500ca8
parentd35fcf1ea2bfc3933b2f2543265874669feeee95 (diff)
downloadmruby-666787beb23637e4c1856011e04cef86380fdb2d.tar.gz
mruby-666787beb23637e4c1856011e04cef86380fdb2d.zip
Adjust exit point in `loop_pop()`; fix #3541
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index 30c169570..75c42eefb 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -2956,10 +2956,10 @@ loop_break(codegen_scope *s, node *tree)
static void
loop_pop(codegen_scope *s, int val)
{
+ dispatch_linked(s, s->loop->pc3);
if (val) {
genop(s, MKOP_A(OP_LOADNIL, cursp()));
}
- dispatch_linked(s, s->loop->pc3);
s->loop = s->loop->prev;
if (val) push();
}