#include<set>

template<typename Return, typename T>
T ReceiveFuncPtr (Return (T::*Method)(const int&))
{
  T obj;
  (obj.*Method)(1);
  return obj;
}

int main ()
{
  ReceiveFuncPtr(&std::set<int>::insert); // ERROR
}
