summaryrefslogtreecommitdiff
path: root/vm_insnhelper.c
diff options
context:
space:
mode:
authorJemma Issroff <jemmaissroff@gmail.com>2022-05-05 15:10:36 -0400
committerAaron Patterson <aaron.patterson@gmail.com>2022-05-23 11:04:34 -0700
commit80ad0e751f4c9aa13a581b61b348c34ede7f3956 (patch)
tree6f5e5463b61f6661bd38d2829e11c43c3e924180 /vm_insnhelper.c
parent37ccf91bfb73a225cc60413645788ea55e5e852a (diff)
Remove unnecessary module flag, add module assertions to other module flags
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/5930
Diffstat (limited to 'vm_insnhelper.c')
-rw-r--r--vm_insnhelper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/vm_insnhelper.c b/vm_insnhelper.c
index 2eb9fd8630..1e40088ffa 100644
--- a/vm_insnhelper.c
+++ b/vm_insnhelper.c
@@ -3798,6 +3798,7 @@ static inline VALUE
vm_search_normal_superclass(VALUE klass)
{
if (BUILTIN_TYPE(klass) == T_ICLASS &&
+ RB_TYPE_P(RBASIC(klass)->klass, T_MODULE) &&
FL_TEST_RAW(RBASIC(klass)->klass, RMODULE_IS_REFINEMENT)) {
klass = RBASIC(klass)->klass;
}
@@ -3840,7 +3841,6 @@ vm_search_super_method(const rb_control_frame_t *reg_cfp, struct rb_call_data *c
}
if (BUILTIN_TYPE(current_defined_class) != T_MODULE &&
- !FL_TEST_RAW(current_defined_class, RMODULE_INCLUDED_INTO_REFINEMENT) &&
reg_cfp->iseq != method_entry_iseqptr(me) &&
!rb_obj_is_kind_of(recv, current_defined_class)) {
VALUE m = RB_TYPE_P(current_defined_class, T_ICLASS) ?