Damn, damn, damn. I checked out the latest MLton with the `fix' and although it solves the problem for the reduced version of the failure, the original code, compiled with -g -native false -keep g -keep ssa -keep dot -DGC_EVERY_CHECK -DINSTRUMENTED seg-faults. No assertion failure, just a simple seg-fault. If I add -limit-check-per-block false still causes the same death. I am open to things to try.