ruby-changes:55376
From: tenderlove <ko1@a...>
Date: Wed, 17 Apr 2019 15:16:40 +0900 (JST)
Subject: [ruby-changes:55376] tenderlove:r67584 (trunk): Super should be marked regardless of whether or not ext exists
tenderlove 2019-04-17 15:16:35 +0900 (Wed, 17 Apr 2019) New Revision: 67584 https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=67584 Log: Super should be marked regardless of whether or not ext exists Modified files: trunk/gc.c Index: gc.c =================================================================== --- gc.c (revision 67583) +++ gc.c (revision 67584) @@ -4981,19 +4981,19 @@ gc_mark_children(rb_objspace_t *objspace https://github.com/ruby/ruby/blob/trunk/gc.c#L4981 case T_CLASS: case T_MODULE: mark_m_tbl(objspace, RCLASS_M_TBL(obj)); + gc_mark(objspace, RCLASS_SUPER((VALUE)obj)); if (!RCLASS_EXT(obj)) break; mark_tbl_no_pin(objspace, RCLASS_IV_TBL(obj)); mark_const_tbl(objspace, RCLASS_CONST_TBL(obj)); - gc_mark(objspace, RCLASS_SUPER((VALUE)obj)); break; case T_ICLASS: if (FL_TEST(obj, RICLASS_IS_ORIGIN)) { mark_m_tbl(objspace, RCLASS_M_TBL(obj)); } + gc_mark(objspace, RCLASS_SUPER((VALUE)obj)); if (!RCLASS_EXT(obj)) break; mark_m_tbl(objspace, RCLASS_CALLABLE_M_TBL(obj)); - gc_mark(objspace, RCLASS_SUPER((VALUE)obj)); break; case T_ARRAY: -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/