From 8f3432cd4466c35cd9f482de3779d76f3957968f Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sun, 21 Nov 2021 00:31:51 +0900 Subject: Fix setting struct member by public_send --- vm_eval.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'vm_eval.c') 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); -- cgit v1.2.1