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)13 B<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