1 // DR 1004
2 
3 template <class T, template<class>class U = T::template B> struct A { };
4 
5 template <class T> struct B {
6   template <class U> friend struct B;
7 };
8 
9 A<B<int> > a;
10