On Monday, 7 September 2015 at 14:52:21 UTC, Ola Fosheim Grøstad
wrote:
1. You need to make sure that pointers to the interior of a GC
object are not live when the last pointer to the start of the
GC objects disappears.
2. You need to annotate C functions that take pointers with a
guarantee that they don't hold on to references through that
pointer. Or simply ban C functions from taking GC memory.
3. You need give up on destructors for GC objects too, and not
allow them to own heap allocated objects. A reasonable
restriction IMHO.