1 // Copyright (C) 2003 Free Software Foundation 2 // Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> 3 // { dg-do compile } 4 5 // Template instantiate during deferred access check 6 7 template <class T> struct C { 8 typedef typename T::X Y; 9 }; 10 11 class A { 12 typedef int X; 13 template <class T> friend struct C; 14 }; 15 16 C<A>::Y f(int); 17