diff options
Diffstat (limited to 'gc.c')
-rw-r--r-- | gc.c | 8 |
1 files changed, 1 insertions, 7 deletions
@@ -6379,9 +6379,7 @@ mark_method_entry(rb_objspace_t *objspace, const rb_method_entry_t *me) if (def->body.iseq.iseqptr) gc_mark(objspace, (VALUE)def->body.iseq.iseqptr); gc_mark(objspace, (VALUE)def->body.iseq.cref); if (def->iseq_overload && me->defined_class) { // cme - const rb_callable_method_entry_t *monly_cme = rb_vm_lookup_overloaded_cme((const rb_callable_method_entry_t *)me); - if (monly_cme) { - gc_mark(objspace, (VALUE)monly_cme); + if (rb_vm_lookup_overloaded_cme((const rb_callable_method_entry_t *)me)) { gc_mark_and_pin(objspace, (VALUE)me); } } @@ -10113,9 +10111,6 @@ gc_ref_update(void *vstart, void *vend, size_t stride, rb_objspace_t * objspace, extern rb_symbols_t ruby_global_symbols; #define global_symbols ruby_global_symbols - -st_table *rb_vm_overloaded_cme_table(void); - static void gc_update_references(rb_objspace_t *objspace) { @@ -10151,7 +10146,6 @@ gc_update_references(rb_objspace_t *objspace) gc_update_table_refs(objspace, objspace->id_to_obj_tbl); gc_update_table_refs(objspace, global_symbols.str_sym); gc_update_table_refs(objspace, finalizer_table); - gc_update_table_refs(objspace, rb_vm_overloaded_cme_table()); } static VALUE |