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