Don <> changed:

           What    |Removed                     |Added
             Status|REOPENED                    |RESOLVED
                 CC|                            |
         Resolution|                            |FIXED

--- Comment #7 from Don <>  2009-07-22 02:20:40 PDT ---
Cases A and B pass, but C and D are still failing (DMD 2.031 and 1.046).

However, it's pretty clear that cases C and D are invalid. A reduced version of
C generates this error:
ancient.d(6): Error: this for i needs to be type Outer not type Inner*

and that is correct. 'Inner' is only _defined_ in 'Outer', it's not a _member_
of 'Outer'. (All kinds of bad things would happen if this worked; you wouldn't
be able to transfer an Inner from one Outer to another, for example).
Marking as fixed, since the two valid cases are fixed now.
struct Outer{
    int i;        
    struct Inner{
        int fest() { return i; }
    void test(){
      Inner z;
      int k = z.fest();

int main(){
Outer outer;
    outer.i = 1;
    return 0;

Configure issuemail:
------- You are receiving this mail because: -------

Reply via email to