On Fri, 22 Jul 2011, Andrei Alexandrescu wrote: > On 7/22/11 5:06 PM, Andrei Alexandrescu wrote: > [snip] > > I almost forgot - we should also have a means to allow a class to import its > own incomplete declaration, as follows: > > // a.di > class A { private int x; int foo(); } > > // a.d > import a; > class A { private int x; int foo() { return x + 1; }
} > > The compiler should accept this because that's what the .di generator outputs. > The import will be used as a means to verify that the layout declared in the > .di file is identical to the one in the .d file. > > Without this feature, it would be impossible for the compiler to ensure that > no inadvertent change was made to one of the files. > > > Andrei How about another case: // a.di class A { private int; int foo() { return x+1; } } // a.d imoprt a; class A { private int; int foo() { return x+1; } } ie, a case where the .di file has a function body (be it due to manual creation or automatic). How closely do they need to match? Later, Brad