Re: [MLton] Crash in GC

"Chris Cannam" <[email protected]> Sun, 06 Nov 2022 15:03:04 +0000
Newsgroups gmane.comp.lang.ml.mlton.devel
Message-ID <[email protected]>
Thanks for the clear explanation!

On Sun, 6 Nov 2022, at 02:43, Matthew Fluet wrote:
> We should be checking that intergenerational pointers have their 
> corresponding card marked, but that test is currently disabled:
> https://github.com/MLton/mlton/blob/master/runtime/gc/invariant.c#L23
> I'm guessing that if we enabled/fixed that, then we would trip the 
> invariant at the beginning of the GC

Indeed it does - I enabled that (but made it non-fatal because of the warning about false positives) and it logs

gc.c: intergenerational pointer from 0x0000080000027308 to 0x0000080000346e00 with unmarked card.

after the starting GC messages. It's not the only one in this GC either - there are 9 of them - though again I see the caveat about false positives in the comment.


Chris