From 0bce3a36d2b6b0d4bccdbf3b75b279a13fbb22e4 Mon Sep 17 00:00:00 2001 From: Keita Obo Date: Wed, 18 Sep 2013 00:20:13 +0900 Subject: Fixed self value in a block is changed with return value fix #1504 --- src/codegen.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'src/codegen.c') diff --git a/src/codegen.c b/src/codegen.c index 1efc44ba0..7e5a7fa50 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -286,8 +286,7 @@ genop_peep(codegen_scope *s, mrb_code i, int val) case OP_RANGE: case OP_AREF: case OP_GETUPVAR: - s->iseq[s->pc-1] = MKOP_ABC(c0, 0, GETARG_B(i0), GETARG_C(i0)); - genop(s, MKOP_AB(OP_RETURN, 0, OP_R_NORMAL)); + genop(s, MKOP_AB(OP_RETURN, GETARG_A(i0), OP_R_NORMAL)); return; case OP_SETIV: case OP_SETCV: -- cgit v1.2.3