@gc attribute for bypassign @nogc
bitwise via Digitalmars-d
digitalmars-d at puremagic.com
Sun Jul 24 16:30:37 PDT 2016
On Sunday, 24 July 2016 at 23:10:18 UTC, Dicebot wrote:
> @nogc functions must never ever trigger GC collection cycle,
> not under any possible circumstances. Otherwise the attribute
> serves no purpose.
The fact that you can use malloc() in a @nogc function
invalidates this argument. There are many ways for someone
publishing a piece of code or DUB package to be irresponsible
about memory management. Adding this would not make it any more
likely. Adding @gc to a piece of code to bypass @nogc is not
something that could be done by accident.
Imagine though, if there was a DUB package that provided some
base class that had its virtual methods annotated with @nogc. If
I downloaded the package, and decided that using GC was perfectly
fine in my application, I would be screwed if I wanted to inherit
one of the classes from that package.
Bit
More information about the Digitalmars-d
mailing list