diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-11-07 05:01:51 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-11-07 05:01:51 +0000 |
commit | 7bb3e9c4b716766350792ed01035c5c63321a859 (patch) | |
tree | 36fa1aabc7aab6f75975572a25f04dfba52bddd4 /vm_eval.c | |
parent | 39a9b012938966870caa61bcc493fd9084c85915 (diff) | |
download | ruby-7bb3e9c4b716766350792ed01035c5c63321a859.tar.gz |
move `rb_thread_t::method_missing_reason` to ec.
* vm_core.h (rb_thread_t): move method_missing_reason to
rb_execution_context_t.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_eval.c')
-rw-r--r-- | vm_eval.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -373,7 +373,7 @@ check_funcall_missing(rb_execution_context_t *ec, VALUE klass, VALUE recv, ID mi new_args[0] = ID2SYM(mid); MEMCPY(new_args+1, argv, VALUE, argc); - rb_ec_thread_ptr(ec)->method_missing_reason = MISSING_NOENTRY; + ec->method_missing_reason = MISSING_NOENTRY; args.th = rb_ec_thread_ptr(ec); args.recv = recv; args.me = me; @@ -630,8 +630,8 @@ NORETURN(static void raise_method_missing(rb_execution_context_t *ec, int argc, static VALUE rb_method_missing(int argc, const VALUE *argv, VALUE obj) { - rb_thread_t *th = GET_THREAD(); - raise_method_missing(th->ec, argc, argv, obj, th->method_missing_reason); + rb_execution_context_t *ec = GET_EC(); + raise_method_missing(ec, argc, argv, obj, ec->method_missing_reason); UNREACHABLE; } @@ -711,7 +711,7 @@ method_missing(VALUE obj, ID id, int argc, const VALUE *argv, enum method_missin VALUE block_handler = vm_passed_block_handler(ec); const rb_callable_method_entry_t *me; - rb_ec_thread_ptr(ec)->method_missing_reason = call_status; + ec->method_missing_reason = call_status; if (id == idMethodMissing) { missing: @@ -905,7 +905,7 @@ send_internal(int argc, const VALUE *argv, VALUE recv, call_type scope) } } id = idMethodMissing; - rb_ec_thread_ptr(ec)->method_missing_reason = MISSING_NOENTRY; + ec->method_missing_reason = MISSING_NOENTRY; } else { argv++; argc--; |