1template <class T, int (T::*)> struct foo; 2 3template <class T> 4int f(foo<T,&T::ob_type>*); 5 6template <class T> 7char* f(...); 8 9struct X { int ob_type; }; 10struct Y { char* ob_type; }; 11 int x = f<X>(0); 12char* y = f<Y>(0); 13char* z = f<int>(0); 14 15int main() { return 0; } 16