diff options
author | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2020-06-03 23:05:55 +0900 |
---|---|---|
committer | Nobuyoshi Nakada <nobu@ruby-lang.org> | 2020-06-04 02:12:57 +0900 |
commit | 8340c773e54feb399c9fab322e3ff6dd578ac04d (patch) | |
tree | bea30e9d8fcdeaccb4a2212f695cc4edef3af9be /vm_insnhelper.c | |
parent | 3ced77a82a966998951b7c62b135ef0105f73c36 (diff) |
Properly resolve refinements in defined? on method call [Bug #16932]
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/3180
Diffstat (limited to 'vm_insnhelper.c')
-rw-r--r-- | vm_insnhelper.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c index 6c82d74020..f910c036f1 100644 --- a/vm_insnhelper.c +++ b/vm_insnhelper.c @@ -3660,7 +3660,7 @@ vm_defined(rb_execution_context_t *ec, rb_control_frame_t *reg_cfp, rb_num_t op_ break; case DEFINED_METHOD:{ VALUE klass = CLASS_OF(v); - const rb_method_entry_t *me = rb_method_entry(klass, SYM2ID(obj)); + const rb_method_entry_t *me = rb_method_entry_with_refinements(klass, SYM2ID(obj), NULL); if (me) { switch (METHOD_ENTRY_VISI(me)) { |