1// PR c++/37563 2 3struct A {}; 4 5template<int> struct Traits 6{ 7 typedef void X; 8}; 9 10template<> struct Traits<0> 11{ 12 typedef A X; 13}; 14 15template<int N> struct B 16{ 17 typedef typename Traits<N>::X Y; 18 19 void foo(Y y) 20 { 21 y.Y::A::~A(); 22 } 23}; 24