diff --git a/c/gc.c b/c/gc.c index f2f69a0cc7..8d1dd76ab6 100644 --- a/c/gc.c +++ b/c/gc.c @@ -1524,6 +1524,7 @@ void GCENTRY(ptr tc, IGEN mcg, IGEN tg) { if (g == static_generation) S_G.number_of_nonstatic_segments -= 1; si->next = S_G.occupied_segments[s][g]; S_G.occupied_segments[s][g] = si; + si->trigger_ephemerons = NULL; #ifdef PRESERVE_FLONUM_EQ /* any flonums forwarded won't be reference anymore */ si->forwarded_flonums = NULL; diff --git a/c/segment.c b/c/segment.c index 142af77b9f..a5b333558d 100644 --- a/c/segment.c +++ b/c/segment.c @@ -230,7 +230,6 @@ static void initialize_seginfo(seginfo *si, ISPC s, IGEN g) { si->generation = g; si->sorted = 0; si->min_dirty_byte = 0xff; - si->trigger_ephemerons = NULL; for (d = 0; d < cards_per_segment; d += sizeof(ptr)) { iptr *dp = (iptr *)(si->dirty_bytes + d); /* fill sizeof(iptr) bytes at a time with 0xff */