// Build don't link: // Origin: Mark Mitchell <mark@codesourcery.com> template <class T> int g (T); int j = g (3); template <class T> inline T f (T) { return 2; } template <class T> struct S { static const int i; }; template <class T> const int S<T>::i = f (3); template <class T> int g (T) { return S<double>::i; }