2 // Origin: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
5 // Partial specialization as friend class
7 template <int N, typename T> struct X;
8 template <typename T> struct X<1,T>;
10 template <typename P> class Y {
12 template <int N, typename T> friend struct X;
16 template <typename T> struct X<1,T> {
17 X () { Y<T>::i; } // access private field