Index: /branches/working-0711/ccl/lisp-kernel/gc-common.c
===================================================================
--- /branches/working-0711/ccl/lisp-kernel/gc-common.c	(revision 13289)
+++ /branches/working-0711/ccl/lisp-kernel/gc-common.c	(revision 13290)
@@ -1398,6 +1398,12 @@
         LispObj *base = ptr_from_lispobj(this);
         natural dnode = area_dnode(&base[3], tenured_low);
-        if ((dnode < tenured_dnodes) && (base[3] >= GCarealow)) {
-          set_bit(refbits, dnode);
+        if (dnode < tenured_dnodes) {
+          if (base[3] >= GCarealow) {
+            set_bit(refbits, dnode);
+          }
+          // might have set termination list to a new pointer
+          if ((base[2] >> population_termination_bit) && (base[4] >= GCarealow)) {
+            set_bit(refbits, dnode+1);
+          }
         }
         this = base[1];
