1 // RUN: %clang_cc1 -fsyntax-only -verify %s
2 // expected-no-diagnostics
3 
4 namespace PR8598 {
5   template<class T> struct identity { typedef T type; };
6 
7   template<class T, class C>
f(T C::*,typename identity<T>::type *)8   void f(T C::*, typename identity<T>::type*){}
9 
fPR8598::X10   struct X { void f() {}; };
11 
g()12   void g() { (f)(&X::f, 0); }
13 }
14 
15 namespace PR12132 {
fun(const int * const S::* member)16   template<typename S> void fun(const int* const S::* member) {}
17   struct A { int* x; };
foo()18   void foo() {
19     fun(&A::x);
20   }
21 }
22