summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-compiler/core/codegen.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-04-22 12:03:56 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-04-22 12:03:56 +0900
commit3b0a36d3993ff6c553b171c8bcb0e703a471ef5e (patch)
treeeaaef9eade0c75790432eac66ba1d90bf0e82390 /mrbgems/mruby-compiler/core/codegen.c
parenta1d32af91692c2b624e9c04fcd94aa958dbba626 (diff)
downloadmruby-3b0a36d3993ff6c553b171c8bcb0e703a471ef5e.tar.gz
mruby-3b0a36d3993ff6c553b171c8bcb0e703a471ef5e.zip
Alias should `push()` extra stack space for blocks.
Diffstat (limited to 'mrbgems/mruby-compiler/core/codegen.c')
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index 4a77fb8fb..e790e6dfc 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -2583,7 +2583,8 @@ codegen(codegen_scope *s, node *tree, int val)
genop(s, MKOP_ABx(OP_LOADSYM, cursp(), b));
push();
genop(s, MKOP_A(OP_LOADNIL, cursp()));
- pop_n(3);
+ push();
+ pop_n(4);
genop(s, MKOP_ABC(OP_SEND, cursp(), c, 2));
if (val) {
push();