1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
template<typename T> class Vector; template<typename T> class List { public: void push_back(T); }; namespace A { class Y { template <typename T> friend class WhereAmI; }; } template <typename T> class A::WhereAmI { public: static void func() {} };