Debug prints in @nogc
    ag0aep6g via Digitalmars-d-learn 
    digitalmars-d-learn at puremagic.com
       
    Wed Aug 31 12:39:36 PDT 2016
    
    
  
On 08/31/2016 09:23 PM, Yuxuan Shui wrote:
> Correct me if I'm wrong. But I believe this is only true when the source
> code of function is not available. Otherwise the compiler should always
> know if a function is actually @nogc or not.
Attributes are only inferred in certain cases where the source code must 
be available anyway (templates, `auto` return value). For ordinary 
functions, the compiler only considers them @nogc when they're 
explicitly marked.
For example, the compiler won't let you do this, even though f's source 
code is available and it's obviously de-facto @nogc:
----
void f() {}
void main() @nogc { f(); }
----
    
    
More information about the Digitalmars-d-learn
mailing list