RFC: moving forward with @nogc Phobos

Andrei Alexandrescu via Digitalmars-d digitalmars-d at puremagic.com
Tue Sep 30 06:59:25 PDT 2014


On 9/30/14, 6:38 AM, Foo wrote:
> I hate the fact that this will produce template bloat for each
> function/method.
> I'm also in favor of "let the user pick", but I would use a global
> variable:
>
> ----
> enum MemoryManagementPolicy { gc, rc, mrc }
> immutable
>      gc = ResourceManagementPolicy.gc,
>      rc = ResourceManagementPolicy.rc,
>      mrc = ResourceManagementPolicy.mrc;
>
> auto RMP = gc;
> ----
>
> and in my code:
>
> ----
> RMP = rc;
> string str = "foo"; // compiler knows -> ref counted
> // ...
> RMP = gc;
> string str2 = "bar"; // normal behaviour restored
> ----

This won't work because the type of "string" is different for RC vs. GC. 
-- Andrei


More information about the Digitalmars-d mailing list