diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-10-31 05:01:40 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-10-31 05:01:40 +0000 |
commit | abbe73bf028ce05949fde6c067df3a0f302f6d7f (patch) | |
tree | c58766f1e8dd72279c9b832aca1ef77d7cb3d66d /vm_insnhelper.c | |
parent | c8caec546a13f70c266d02481b04dde4d7632dd7 (diff) |
revert r52402
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_insnhelper.c')
-rw-r--r-- | vm_insnhelper.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 9f3c00d6c9..4130c17749 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -2246,12 +2246,11 @@ vm_super_outside(void) static void vm_search_super_method(rb_thread_t *th, rb_control_frame_t *reg_cfp, - struct rb_calling_info *calling, const struct rb_call_info *ci, struct rb_call_cache *cc) + struct rb_calling_info *calling, struct rb_call_info *ci, struct rb_call_cache *cc) { VALUE current_defined_class, klass; VALUE sigval = TOPN(calling->argc); const rb_callable_method_entry_t *me = rb_vm_frame_method_entry(reg_cfp); - ID mid; if (!me) { vm_super_outside(); @@ -2283,7 +2282,7 @@ vm_search_super_method(rb_thread_t *th, rb_control_frame_t *reg_cfp, " Specify all arguments explicitly."); } - mid = me->def->original_id; + ci->mid = me->def->original_id; klass = vm_search_normal_superclass(me->defined_class); if (!klass) { @@ -2293,7 +2292,7 @@ vm_search_super_method(rb_thread_t *th, rb_control_frame_t *reg_cfp, } else { /* TODO: use inline cache */ - cc->me = rb_callable_method_entry(klass, mid); + cc->me = rb_callable_method_entry(klass, ci->mid); CI_SET_FASTPATH(cc, vm_call_super_method, 1); } } |