1 // { dg-do assemble } 2 // { dg-options "-Wno-deprecated" } 3 4 template <class T> 5 struct A 6 { 7 typedef T A_Type; 8 }; 9 10 11 template <class U> 12 struct B : public A<U> 13 { 14 }; 15 16 17 template <class U> 18 struct C : public B<U> 19 { 20 void Func(A_Type); // { dg-warning "" } implicit typename 21 }; 22 23 24 template <class U> Func(A_Type)25void C<U>::Func(A_Type) { // { dg-warning "" } implicit typename 26 } 27