http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46472
Summary: [C++0X] constexpr is not constexpr Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: marc.gli...@normalesup.org The code this is reduced from used to compile before the introduction of constexpr. template<class _T1, class _T2> struct pair { _T1 first; constexpr pair(){} }; template<typename _Tp, int _Nm> struct array { _Tp _M_instance[_Nm]; }; array< pair<int,int>, 2> ps; b.cc: In constructor ‘constexpr array<pair<int, int>, 2>::array()’: b.cc:6:8: error: ‘constexpr pair<_T1, _T2>::pair() [with _T1 = int, _T2 = int]’ is not ‘constexpr’ b.cc: At global scope: b.cc:10:26: note: synthesized method ‘array<pair<int, int>, 2>::array()’ first required here