http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56163
Bug #: 56163
Summary: Template instantiation limit not kicking in
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: c++
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
template <class U>
struct B
{
typedef void type;
};
template <bool U>
struct C
{
};
template <typename T, typename E = void>
struct D {
static const bool d = false;
};
template <typename T>
struct D<T, typename B<C<D<T>::d > >::type>
{
static const bool d = false;
};
D<double> d;
reduced from https://bugzilla.redhat.com/show_bug.cgi?id=904652 segfaults due
to
endless recursion during instantiation, -ftemplate-depth= limit doesn't seem to
affect this. This ICEd already with 3.2, so might not be a regression.