private with alias this
    evilrat 
    evilrat666 at gmail.com
       
    Mon Dec 24 21:23:13 PST 2012
    
    
  
On Tuesday, 25 December 2012 at 02:43:52 UTC, r_m_r wrote:
> On 12/25/2012 07:42 AM, r_m_r wrote:
>> assert(!__traits(compiles, b._bar));
>
> sorry, i made a typo: it should be bar_ instead of _bar.
>
> Interestingly, the below assertion fails at run time:
>
> assert(!__traits(compiles, b.bar_));
>
>
> but this won't compile (as expected):
>
> assert(b.bar_ == 20); //main.d(15): Error: undefined identifier 
> 'bar_'
>
>
> regards,
> r_m_r
i'm not D expert, but isn't the first statement(b.bar_) evaluated 
to b.opCall(Foo.opCall)? so the first assert may be true in this 
case
    
    
More information about the Digitalmars-d-learn
mailing list