1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// { dg-do link } // GROUPS passed templates membertemplates extern "C" int printf(const char*, ...); template <class X> struct S { template <class U> void f(U u) { printf ("%d\n", sizeof (U)); } int i[4]; }; int main() { S<char*> s; s.f(3); s.f(s); }