http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51633
Bug #: 51633 Summary: [c++0x] [4.6/4.7 Regression] ICE with invalid constexpr constructor 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; constexpr B() {} }; ========================== bug.cc: In constructor 'constexpr B::B()': bug.cc:9:18: internal compiler error: in build_constexpr_constructor_member_initializers, at cp/semantics.c:5908 Please submit a full bug report, [etc.] A slightly different code snippet triggers an ICE in a different place: ========================== struct A { constexpr A() {} ~A(); }; struct B { A a; constexpr B() { return; } }; ========================== bug.cc: In constructor 'constexpr B::B()': bug.cc:10:27: internal compiler error: in build_data_member_initialization, at cp/semantics.c:5782 Please submit a full bug report, [etc.] This looks related to PR51612 where the ICE happens in the same place.