summaryrefslogtreecommitdiff
path: root/vm_eval.c
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2021-11-21 00:31:51 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2021-11-21 00:31:51 +0900
commit8f3432cd4466c35cd9f482de3779d76f3957968f (patch)
tree18ebb49c357a05646bef52e4b5c2ef52b2460d6f /vm_eval.c
parentc5ec05d047f3c3f32b34d705088d407429d4303a (diff)
Fix setting struct member by public_send
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/5152
Diffstat (limited to 'vm_eval.c')
-rw-r--r--vm_eval.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/vm_eval.c b/vm_eval.c
index 140912f218..983baf7de6 100644
--- a/vm_eval.c
+++ b/vm_eval.c
@@ -275,11 +275,11 @@ vm_call0_body(rb_execution_context_t *ec, struct rb_calling_info *calling, const
}
case OPTIMIZED_METHOD_TYPE_STRUCT_AREF:
vm_call_check_arity(calling, 0, argv);
- ret = vm_call_opt_struct_aref0(ec, ec->cfp, calling);
+ ret = vm_call_opt_struct_aref0(ec, calling);
goto success;
case OPTIMIZED_METHOD_TYPE_STRUCT_ASET:
vm_call_check_arity(calling, 1, argv);
- ret = vm_call_opt_struct_aset0(ec, ec->cfp, calling);
+ ret = vm_call_opt_struct_aset0(ec, calling, argv[0]);
goto success;
default:
rb_bug("vm_call0: unsupported optimized method type (%d)", vm_cc_cme(cc)->def->body.optimized.type);