summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-compiler
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-04-01 13:42:44 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-04-01 13:42:44 +0900
commite22f37a1669a6c14ce8fe99c868d553917fbfa19 (patch)
tree8009a4e3f259ca9d26b1ecaf97e03c5b4f5a399a /mrbgems/mruby-compiler
parent1e87dfdf48e3870ed10cd6ad071bc29e6e3dc636 (diff)
downloadmruby-e22f37a1669a6c14ce8fe99c868d553917fbfa19.tar.gz
mruby-e22f37a1669a6c14ce8fe99c868d553917fbfa19.zip
Argument order of __case_eqq was wrong; fix #3567
Diffstat (limited to 'mrbgems/mruby-compiler')
-rw-r--r--mrbgems/mruby-compiler/core/codegen.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/mrbgems/mruby-compiler/core/codegen.c b/mrbgems/mruby-compiler/core/codegen.c
index 59cc54f30..282ed62ec 100644
--- a/mrbgems/mruby-compiler/core/codegen.c
+++ b/mrbgems/mruby-compiler/core/codegen.c
@@ -1304,10 +1304,9 @@ codegen(codegen_scope *s, node *tree, int val)
pos2 = 0;
do {
if (n4 && n4->car && (intptr_t)n4->car->car == NODE_SPLAT) {
- genop(s, MKOP_AB(OP_MOVE, cursp(), exc));
- push();
codegen(s, n4->car, VAL);
- pop_n(2);
+ genop(s, MKOP_AB(OP_MOVE, cursp(), exc));
+ pop();
genop(s, MKOP_ABC(OP_SEND, cursp(), new_msym(s, mrb_intern_lit(s->mrb, "__case_eqq")), 1));
}
else {