http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46304

--- Comment #8 from Andras Pataki <apataki at apataki dot net> 2010-11-16 
15:11:04 UTC ---
I can confirm that my test case now compiles and runs correctly with the
20101113 snapshot of the 4.6 compiler.

However, I've noticed another strangeness relating to complex numbers.  Both
the 4.5.x and the 4.6 snapshot do not treat complex constants quite the way I'd
expect:

#include <complex.h>

class A
{
    static const complex double x = 1.0 + 2.0i;
};


4.5.1 says:
z9.cc:5:41: error: ‘A::x’ cannot be initialized by a non-constant expression
when being declared

4.6-20101113 says:
z9.cc:5:40: error: field initializer is not constant

but 4.4.5 compiles it without complaints.
This is the same even if I use the notation 1.0 + 2.0*I for the constant.

Andras

Reply via email to