namespace; include rt; // a pointer left below the live stack is not a root. scrub then clears that word. unchecked fn main() { let p, slot, before, after; p = rt.new(2); p[0] = 7; p[1] = 8; slot = rt.DSLO + 8; *slot = p; before = rt.live_objects(); p = 0; rt.gc(); after = rt.live_objects(); rt.put_n(after < before); rt.put_c(32); rt.scrub(); rt.put_n(*slot); rt.put_c(10); return 0; }