1 // PR c++/22147
2 
3 template<typename> struct A;
4 
foo(A<T> * p)5 template<typename T> void foo(A<T>* p) { *p; }
6 
7 template<typename> struct A
8 {
9   friend void foo<class X>(A<X>*);
10 };
11 
bar()12 void bar()
13 {
14   foo<int>(0);
15 }
16