diff --git a/src/pike_types.cmod b/src/pike_types.cmod
index 44449677a636c15a6b306ee3690b2188af657cdc..a17a133489c78f314daf93afbe76673a4539a2ed 100644
--- a/src/pike_types.cmod
+++ b/src/pike_types.cmod
@@ -15578,7 +15578,9 @@ void gc_check_type (struct pike_type *t)
          * they are not touched by the GC */
 	debug_gc_check (t->car, " as car in a type");
 #endif
-	debug_gc_check (t->cdr, " as cdr in a type");
+	if (t->cdr) {
+	  debug_gc_check (t->cdr, " as cdr in a type");
+	}
 	break;
       case T_MULTISET:
       case T_NOT: