| // { 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); | |
| template <class U> | |
| void g(U U); | |
| int c[16]; | |
| }; | |
| template <class X> | |
| template <class U> | |
| void S<X>::f(U u) | |
| { printf ("In S::f(U)\n"); g(u); } | |
| template <class X> | |
| template <class U> | |
| void S<X>::g(U u) | |
| { printf ("In S::g(U)\n"); } | |
| int main() | |
| { | |
| S<char*> s; | |
| s.f(3); | |
| s.f("adf"); | |
| } |