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

             Bug #: 51582
           Summary: ICE when using a class with a matrix of complex
                    numbers in C++0x mode
    Classification: Unclassified
           Product: gcc
           Version: 4.6.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: mj...@clix.pt


Created attachment 26112
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26112
Preprocessed source

Compiling the following code:

#include <complex>

struct Mat {
        std::complex<double> data[3][3];
};

int main() {
        Mat m;
}

with -std=c++0x fails, giving the following error message:

mat.cpp: In function ‘int main()’:
mat.cpp:17:6:   in constexpr expansion of ‘m.Mat::Mat()’
mat.cpp:17:6: internal compiler error: in build_special_member_call, at
cp/call.c:6615

However, the code compiles successfully, when using a vector instead of
a matrix, or by removing "Mat m;".

Reply via email to