------- Comment #1 from pinskia at gcc dot gnu dot org 2007-08-17 09:27 ------- For one, I don't think " __real__ X = R; __imag__ X = C; " is really nice looking. Now if the person did: *(double*) &X = R; ((double*) & X)[1] = C;
it might be a different story but then again X is still defined piece wise so you will still get NaN. I really don't think this is a bug as we have an uninitialized variables here in the same way doing: short a; a = b&0xff|a; a = (b<<8)&0xFF00|a; Would be defined code. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33088