> Consider the following:
> 
> interface A { final void foobar() { writeln("A"); } }
> interface B { final void foobar() { writeln("B"); } }
> 
> class C : A, B {}
> 
> void main(string[] args) {
> 
>      C c = new C;
>      c.foobar;
> 
> }
> 
> What does foobar print?
> (This has been filed as bug 4435:
> http://d.puremagic.com/issues/show_bug.cgi?id=4435)

I believe that per TDPL, you would have to call these with eithe c.A.foobar() 
or 
c.B.foobar() but that c.foobar() is not allowed. If it is allowed at present, 
it's definitely a bug. However, it's a bug in the implementation rather than 
the 
language spec.

- Jonathan M Davis

Reply via email to