3 // Copyright (C) 2004 Free Software Foundation
4 // Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
6 // Nested class template of class template as friend
8 template<class T> struct A
10 template <T t> struct B
18 template<class T> template <T t> friend struct A<T>::B;
21 template<class T> struct A<T*>
23 template <T* t> struct B
29 template<> struct A<char>
31 template <char t> struct B
37 template<class T> template <T t> void A<T>::B<t>::f()
43 template<class T> template <T* t> void A<T*>::B<t>::f()
49 template <char t> void A<char>::B<t>::f()
55 template <> void A<char>::B<'b'>::f()