I know that this might be too late but wouldn't it be possible to defer the error message about typedef to later in the compile phase. Making it possible to put a typedef in a version statement, something like:

version (D_Version2) {}
else {
    typedef int foo;
}

This would allow to both support D1 and D2 in a library without the need for string mixins. Obviously the compiler still knows about typedef since it can give a proper error message about it so I was hoping it wouldn't have to be as the case with the new D2 keywords which do require a string mixin if you're supporting both D1 and D2.

--
/Jacob Carlborg

Reply via email to