I want to get this to compile: void main() { struct A { this(int x) { this.x = x; } int x; } const(A) a = A(5); A b = a; } It should clearly be legal to create a non-const copy of the struct. What am I missing in order to do this? Cheers, Malte