template <class T>
void f(T t);

template <class T>
void f(T* t);

template <>
void f(int* ip) {}

struct S1
{
  template <class T>
  void f(T t);

  template <class T>
  void f(T* t);
};

template <>
void S1::f(int* ip) {}

template <class U>
struct S2
{
  template <class T>
  void f(T t);

  template <class T>
  void f(T* t);
};

template <>
template <>
void S2<double>::f(int* ip) {}

int main()
{
  int* ip;
  S1 s1;
  s1.f(ip);
  S2<double> s2;
  s2.f(ip);
}
