1 // Contributed by Dodji Seketeli <dodji@redhat.com> 2 // Origin PR c++/35405 3 // { dg-do compile } 4 5 template<typename T> struct a 6 { 7 template <template <typename> class C, typename X, C<X>* =0> 8 struct b 9 { 10 }; 11 }; 12 13 void foo()14foo () 15 { 16 a<int> a1; // OK 17 a<int>::b<a,int> b1; // { dg-error "template argument|converted constant" } 18 } 19 20 // { dg-prune-output "invalid type in declaration" } 21