// { dg-do link } | |
template<class T> | |
class foo { | |
T deft; | |
template<class U> int priv (U u, T t) { return u - t; } | |
public: | |
foo (T t) : deft (t) {} | |
template<class U> int pub (U u) { | |
int (foo::*fn) (U, T); | |
fn = &foo<T>::template priv<U>; | |
return (this->*fn) (u, deft); | |
} | |
}; | |
int | |
main () | |
{ | |
foo<long> fff (5); | |
return fff.pub (3); | |
} |