http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51327

             Bug #: 51327
           Summary: [4.7 Regression] ICE with invalid constexpr parameter
    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 on trunk (when compiled with
"-std=c++0x"):

=======================================
struct A
{
  A(int);
};

struct B : A {};

constexpr int foo(B) { return 0; }
=======================================

bug.cc: In function 'constexpr int foo(B)':
bug.cc:8:15: error: invalid type for parameter 1 of constexpr function
'constexpr int foo(B)'
bug.cc:6:8: note: 'B' is not literal because:
bug.cc:6:8: note:   'B' is not an aggregate, does not have a trivial default
constructor, and has no constexpr constructor that is not a copy or move
constructor
bug.cc:8:34: internal compiler error: Segmentation fault
Please submit a full bug report, [etc.]

Reply via email to