1 // { dg-do compile } 2 3 // Origin: Giovanni Bajo <giovannibajo@libero.it> 4 5 // PR c++/4403: Incorrect friend class chosen during instantiation. 6 7 template <typename T> 8 struct A 9 { 10 struct F; 11 }; 12 13 template <typename T> 14 struct B : A<T> 15 { 16 friend struct F; 17 private: 18 int priv; 19 }; 20 21 struct F 22 { funcF23 void func(void) 24 { 25 B<int> b; 26 b.priv = 0; 27 } 28 }; 29