1 // PR c++/17410
2 
3 template <class>
4 struct Outer {
5   template <class> struct Inner {};
6 };
7 
8 template <class T>
9 struct A;
10 
11 template <template <class> class Q, class P>
12 struct A <Q<P> > {};
13 
14 template <class T> struct UNRELATED;
15 template <class T> struct UNRELATED<Outer<void>::Inner<T*> >;
16 
17 template struct A<Outer<void>::Inner<int*> >;
18