1*67e74705SXin Li #include "a.h" 2*67e74705SXin Li #ifndef _LIBCPP_VECTOR 3*67e74705SXin Li template <class, class _Allocator> 4*67e74705SXin Li class __vector_base { 5*67e74705SXin Li protected: 6*67e74705SXin Li _Allocator __alloc() const; 7*67e74705SXin Li __vector_base(_Allocator); 8*67e74705SXin Li }; 9*67e74705SXin Li 10*67e74705SXin Li template <class _Tp, class _Allocator = allocator> 11*67e74705SXin Li class vector : __vector_base<_Tp, _Allocator> { 12*67e74705SXin Li public: 13*67e74705SXin Li vector() noexcept(is_nothrow_default_constructible<_Allocator>::value); 14*67e74705SXin Li vector(const vector &); 15*67e74705SXin Li vector(vector &&) 16*67e74705SXin Li noexcept(is_nothrow_move_constructible<_Allocator>::value); 17*67e74705SXin Li }; 18*67e74705SXin Li 19*67e74705SXin Li #endif GetUniquePtrType()20*67e74705SXin Livoid GetUniquePtrType() { vector<char> v; } 21*67e74705SXin Li 22