| namespace A { |
| inline |
| namespace __1 { |
| template <class _Tp> class allocator; |
| template <class _Tp, class _Alloc = allocator<_Tp>> class list; |
| template <class _VoidPtr> class __list_iterator { |
| //template <class> friend class list; // causes another crash in ASTDeclReader::attachPreviousDecl |
| template <class, class> friend class list; |
| }; |
| template <class _Tp, class _Alloc> class __list_imp {}; |
| template <class _Tp, class _Alloc> class list : __list_imp<_Tp, _Alloc> { |
| public: |
| list() {} |
| }; |
| template <class _Tp> void f(list<_Tp>); |
| } |
| } |