Why doesn't this code work? struct Bar { int* x; } void foo(Bar a) {} void main() { const a = Bar(); foo(a); } But replacing int* with some other type works fine? Even if a write a postblit function for Bar, it still fails to compile.