http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51621
Bug #: 51621
Summary: [c++0x] [4.6/4.7 Regression] ICE with invalid
constexpr and array class member
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: [email protected]
ReportedBy: [email protected]
The following invalid code snippet triggers an ICE since GCC 4.6.0:
============================
struct A
{
A() {}
};
struct B
{
A a[1];
constexpr B() : a() {}
};
============================
bug.cc: In constructor 'B::B()':
bug.cc:9:24: error: non-constant array initialization
bug.cc:9:24: internal compiler error: in build_vec_init_elt, at cp/tree.c:485
Please submit a full bug report, [etc.]
In GCC 4.5.x, the code was wrongly accepted.