Inherit max_iv_count from superclass
In 274870bd5434ab64ac3a3c9db9aa27d262c1d6d6 we gained the ability to make an educated guess at the max_iv_count of a class based on its initialize method. This commit makes subclasses inherit their super's max_iv_count, which makes the estimate work in cases that the subclass does not have an initialize method.
This commit is contained in:
parent
171e94bd95
commit
da204d2eee
Notes:
git
2022-12-01 23:37:35 +00:00
8
class.c
8
class.c
@ -326,7 +326,13 @@ rb_class_new(VALUE super)
|
||||
{
|
||||
Check_Type(super, T_CLASS);
|
||||
rb_check_inheritable(super);
|
||||
return rb_class_boot(super);
|
||||
VALUE klass = rb_class_boot(super);
|
||||
|
||||
if (super != rb_cObject && super != rb_cBasicObject) {
|
||||
RCLASS_EXT(klass)->max_iv_count = RCLASS_EXT(super)->max_iv_count;
|
||||
}
|
||||
|
||||
return klass;
|
||||
}
|
||||
|
||||
VALUE
|
||||
|
Loading…
x
Reference in New Issue
Block a user