1// { dg-do compile } 2// Contributed by Andrew Pinski <pinskia at gcc dot gnu dot org> 3// PR c++/13810: ICE while parsing invalid default argument for a 4// template template parameter. 5 6struct X; 7template<int> struct A {}; 8 9template<template<int> class = X > struct B1 {}; // { dg-error "as a default value" } 10template<template<int> class = A<0> > struct B2 {}; // { dg-error "as a default value" } 11 12template <typename T> 13struct S { 14 template <template <typename> class = S> struct I1 {}; // { dg-error "as a default value" } 15 template <template <typename> class = ::S> struct I2 {}; 16}; 17