summaryrefslogtreecommitdiff
path: root/class.c
diff options
context:
space:
mode:
Diffstat (limited to 'class.c')
-rw-r--r--class.c17
1 files changed, 2 insertions, 15 deletions
diff --git a/class.c b/class.c
index 1e436e6c96..ba57d8a39d 100644
--- a/class.c
+++ b/class.c
@@ -183,16 +183,6 @@ duplicate_classext_const_tbl(struct rb_id_table *src, VALUE klass)
return dst;
}
-static void
-duplicate_classext_superclasses(rb_classext_t *orig, rb_classext_t *copy)
-{
- RCLASSEXT_SUPERCLASSES(copy) = RCLASSEXT_SUPERCLASSES(orig);
- RCLASSEXT_SUPERCLASS_DEPTH(copy) = RCLASSEXT_SUPERCLASS_DEPTH(orig);
- // the copy is always not the owner and the orig (or its parent class) will maintain the superclasses array
- RCLASSEXT_SUPERCLASSES_OWNER(copy) = false;
- RCLASSEXT_SUPERCLASSES_WITH_SELF(copy) = RCLASSEXT_SUPERCLASSES_WITH_SELF(orig);
-}
-
static VALUE
namespace_subclasses_tbl_key(const rb_namespace_t *ns)
{
@@ -349,9 +339,6 @@ rb_class_duplicate_classext(rb_classext_t *orig, VALUE klass, const rb_namespace
RCLASSEXT_CVC_TBL(ext) = duplicate_classext_id_table(RCLASSEXT_CVC_TBL(orig), dup_iclass);
- // superclass_depth, superclasses
- duplicate_classext_superclasses(orig, ext);
-
// subclasses, subclasses_index
duplicate_classext_subclasses(orig, ext);
@@ -832,11 +819,11 @@ rb_class_update_superclasses(VALUE klass)
}
else {
superclasses = class_superclasses_including_self(super);
- RCLASS_WRITE_SUPERCLASSES(super, super_depth, superclasses, true, true);
+ RCLASS_WRITE_SUPERCLASSES(super, super_depth, superclasses, true);
}
size_t depth = super_depth == RCLASS_MAX_SUPERCLASS_DEPTH ? super_depth : super_depth + 1;
- RCLASS_WRITE_SUPERCLASSES(klass, depth, superclasses, false, false);
+ RCLASS_WRITE_SUPERCLASSES(klass, depth, superclasses, false);
}
void