From a9b740b36b4518552d61f349afc02c325413d2ad Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Mon, 11 Jun 2018 14:50:03 +0900 Subject: Retrieve `b` operand from the instruction (for debugging); ref #4020 --- src/vm.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/vm.c b/src/vm.c index 59ae57c32..552bc8072 100644 --- a/src/vm.c +++ b/src/vm.c @@ -1398,6 +1398,7 @@ RETRY_TRY_BLOCK: CASE(OP_SEND) { /* A B C R(A) := call(R(A),Syms(B),R(A+1),...,R(A+C)) */ int a = GETARG_A(i); + int b = GETARG_B(i); int n = GETARG_C(i); int argc = (n == CALL_MAXARGS) ? -1 : n; int bidx = (argc < 0) ? a+2 : a+n+1; @@ -1405,7 +1406,7 @@ RETRY_TRY_BLOCK: struct RClass *c; mrb_callinfo *ci = mrb->c->ci; mrb_value recv, blk; - mrb_sym mid = syms[GETARG_B(i)]; + mrb_sym mid = syms[b]; mrb_assert(bidx < ci->nregs); -- cgit v1.2.3