| // { dg-do compile } |
| // Contributed by Andrew Pinski <pinskia at gcc dot gnu dot org> |
| // PR c++/13810: ICE while parsing invalid default argument for a |
| // template template parameter. |
| |
| struct X; |
| template<int> struct A {}; |
| |
| template<template<int> class = X > struct B1 {}; // { dg-error "as a default value" } |
| template<template<int> class = A<0> > struct B2 {}; // { dg-error "as a default value" } |
| |
| template <typename T> |
| struct S { |
| template <template <typename> class = S> struct I1 {}; // { dg-error "as a default value" } |
| template <template <typename> class = ::S> struct I2 {}; |
| }; |