http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51328
Bug #: 51328
Summary: [4.4/4.5/4.6/4.7 Regression] ICE on invalid template
parameter
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: [email protected]
ReportedBy: [email protected]
The following invalid code snippet triggers an ICE since GCC 4.4.0:
================================
template<typename T> struct A
{
void foo(A<T::~T>);
};
================================
bug.cc:3:19: error: to refer to a type member of a template parameter, use
'typename T::~T' [-fpermissive]
bug.cc:3:19: internal compiler error: in make_typename_type, at cp/decl.c:3224
Please submit a full bug report, [etc.]