[Bug c++/46472] New: [C++0X] constexpr is not constexpr

marc.glisse at normalesup dot org gcc-bugzilla@gcc.gnu.org
Sun Nov 14 10:47:00 GMT 2010


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: unassigned@gcc.gnu.org
        ReportedBy: marc.glisse@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



More information about the Gcc-bugs mailing list