Is return by ref really @safe?

Norbert Nemec Norbert at Nemec-online.de
Wed Mar 10 09:33:22 PST 2010


bearophile wrote:
> Michel Fortin:
>> This compiles, but should it?
> 
> I think the @safe attribute is not significant here, because that code is wrong, in unsafe code too.
> I think DMD lets it pass because it's not able to spot the bug. I don't know if and when it will be able to trace such situations, but in the meantime:
> http://d.puremagic.com/issues/show_bug.cgi?id=3925

I would say the possibility of a bug makes this code unsafe by 
definition. Ref returns must be considered unsafe by default, unless the 
compiler can know for sure that the object will exist beyond the 
lifetime of the function.



More information about the Digitalmars-d mailing list