summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--gc.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 610fa80353..0f0d30a245 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Wed Jun 24 16:54:11 2015 Koichi Sasada <ko1@atdot.net>
+
+ * gc.c (gc_mark_children): add additional debug code for #11244.
+
Wed Jun 24 16:05:42 2015 Eric Wong <e@80x24.org>
* string.c (rb_str_justify): use RB_GC_GUARD
diff --git a/gc.c b/gc.c
index 9b1870276c..d5719fe7b1 100644
--- a/gc.c
+++ b/gc.c
@@ -4304,6 +4304,10 @@ gc_mark_children(rb_objspace_t *objspace, VALUE obj)
if (!RCLASS_EXT(obj)) break;
mark_tbl(objspace, RCLASS_IV_TBL(obj));
mark_const_tbl(objspace, RCLASS_CONST_TBL(obj));
+
+ /* TODO: remove it. check code for Bug #11244 */
+ if (RB_TYPE_P(RCLASS_SUPER(obj), T_NONE)) rb_bug("gc_mark_children: super is T_NONE (%s)", obj_info(obj));
+
gc_mark(objspace, RCLASS_SUPER((VALUE)obj));
break;