Reduced testcase. Compiles with dmd. Tested with LDC master and merge-2.070. Both compile a binary that segfault when executed. synchronized(typeid(SomeClass)) { } works as expected.
// reduced testcase
interface Foo { }
void main() {
synchronized(typeid(Foo)) { }
}