// { dg-do compile } | |
// Origin: Wolfgang Bangerth <bangerth@ticam.utexas.edu> | |
// PR c++/8099 | |
// Partial specialization as friend class | |
template <int N, typename T> struct X; | |
template <typename T> struct X<1,T>; | |
template <typename P> class Y { | |
static int i; | |
template <int N, typename T> friend struct X; | |
friend struct X<1,P>; | |
}; | |
template <typename T> struct X<1,T> { | |
X () { Y<T>::i; } // access private field | |
}; |