On Saturday, 15 October 2016 at 17:11:28 UTC, Andrei Alexandrescu
Seems there'd be quite some annotational overhead.
In the case of a C++-style vector it's just a matter of changing
E* _ptr; // non-GC-allocated store pointer
@nogc E* _ptr; // GC-allocated store pointer
and then updating the relevant trait, such as `hasIndirections`
or/and `hasAliasing`, to respect this attribute.
That doesn't seem to hard, right? Or am I missing something?
BTW: Should I use
ẁhen checking if I need to call `GC.addRange` and
The difference is whether we should include immutable
indirections or not.