Re: How do you copy a const struct to a mutable?

2012-10-31 Thread bearophile

Malte Skarupke:


What am I missing in order to do this?


In D when you define a struct inside a function, it's not a POD 
any more.


If you define it as "static struct A" instead of "struct A", your 
code will compile.


Unfortunately DMD gives a too much generic error message in this 
case, it doesn't explain what's the problem:


test.d(7): Error: cannot implicitly convert expression (a) of 
type const(A) to A


Bye,
bearophile


How do you copy a const struct to a mutable?

2012-10-31 Thread Malte Skarupke

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