1 // PR c++/55058 2 3 template <typename T> 4 struct A { }; 5 6 template <typename T> 7 struct B { 8 B(const A<T> T::* p); 9 typedef A<T> D; 10 }; 11 12 template <typename T> B(const D T::* p)13B<T>::B(const D T::* p) { } 14 15 struct C { CC16 C() : e() {}; 17 18 const A<C> e; 19 }; 20 21 B<C> g(&C::e); 22