18 lines · c
1namespace A {2inline3namespace __1 {4 template <class _Tp> class allocator;5 template <class _Tp, class _Alloc = allocator<_Tp>> class list;6 template <class _VoidPtr> class __list_iterator {7 template <class> friend class list;8 template <class, class> friend class list;9 };10 template <class _Tp, class _Alloc> class __list_imp {};11 template <class _Tp, class _Alloc> class list : __list_imp<_Tp, _Alloc> {12 public:13 list() {}14 };15 template <class _Tp> void f(list<_Tp>);16}17}18