1// { dg-do run } 2extern "C" void abort(); 3 4int k; 5 6template <class X> 7struct S 8{ 9 template <class U> 10 void f(U u) 11 { ++k; g(u); } 12 13 template <class U> 14 void g(U u) 15 { ++k; } 16 17 int c[16]; 18}; 19 20int main() 21{ 22 S<char*> s; 23 s.f(3); 24 s.f("adf"); 25 26 if (k != 4) 27 abort(); 28} 29