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: unassig...@gcc.gnu.org
        ReportedBy: reich...@gcc.gnu.org


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.

Reply via email to