http://d.puremagic.com/issues/show_bug.cgi?id=2511
2kor...@gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |blocker ------- Comment #2 from 2kor...@gmail.com 2008-12-13 10:32 ------- The error can fixed by removing "import Base;" from the I.d, but unfortunately I can't do this in my application because interfaces have methods that accept and return references to Base and Derived: interface I { void doStuff(Base b); } interface SubI : I { void doStuff(Derived b); } A possible solution is to merge them into a single file (which is not acceptable). You should also have a proper file order to compile them at once: dmd Base I // okay dmd I Base // fails to compile Rising its severity until I find a workaround. --