1 // { dg-do compile } 2 // Origin: Juan Carlos Arevalo-Baeza <jcab@JCABs-Rumblings.com> 3 4 // PR c++/8442 5 // Type template parameter incorrectly treated as template template 6 // parameter. 7 8 template <typename T> struct A {}; 9 10 template <typename T> struct B 11 { 12 template <typename U> struct C {}; 13 template <typename U> A<C<U> > foo(U); 14 }; 15 16 B<void> b; 17