// { dg-do link } | |
// GROUPS passed templates membertemplates | |
extern "C" int printf (const char *, ...); | |
template <class T> | |
struct S | |
{ | |
template <class U, class V> | |
void foo(U, V); | |
}; | |
template <class T> | |
template <class U, class V> | |
void S<T>::foo(U, V) | |
{ | |
printf("Hello, world.\n"); | |
} | |
int main() | |
{ | |
S<int> s; | |
s.foo(3, 3); | |
s.foo("hello", s); | |
S<char*> s2; | |
s2.foo(3, 3); | |
s2.foo("hello", s); | |
} |