My Reference Safety System (DIP???)

Zach the Mystic via Digitalmars-d digitalmars-d at puremagic.com
Thu Feb 26 08:42:28 PST 2015


On Thursday, 26 February 2015 at 16:40:27 UTC, Zach the Mystic 
wrote:
>>> int r; // declaration scopedepth(0)
>>>
>>> void fun(int a /*scopedepth(0)*/) {
>>> int b; // depth(1)
>>> {
>>>   int c; // depth(2)
>>>   {
>>>     int d; // (3)
>>>   }
>>>   {
>>>     int e; // (3)
>>>   }
>>> }
>>> int f; // (1)
>>> }
>>>
>>
>> You have element of differing lifetime at scope depth 0 so far.
>
> Sorry for the delay.
>
> I made a mistake. Parameter `a` will have a *declaration* scope 
> of 1, just like int b above. It's *reference* scope will have 
> depth 0, with the "mystery" bit for the first parameter set.

That is, `a` would have such a reference scope is it were a 
reference type... :-)


More information about the Digitalmars-d mailing list