diff --git a/libcxx/include/__split_buffer b/libcxx/include/__split_buffer --- a/libcxx/include/__split_buffer +++ b/libcxx/include/__split_buffer @@ -17,17 +17,8 @@ _LIBCPP_BEGIN_NAMESPACE_STD -template -class __split_buffer_common -{ -protected: - _LIBCPP_NORETURN void __throw_length_error() const; - _LIBCPP_NORETURN void __throw_out_of_range() const; -}; - template > struct __split_buffer - : private __split_buffer_common { private: __split_buffer(const __split_buffer&); diff --git a/libcxx/include/deque b/libcxx/include/deque --- a/libcxx/include/deque +++ b/libcxx/include/deque @@ -908,31 +908,8 @@ return __r; } -template -class __deque_base_common -{ -protected: - _LIBCPP_NORETURN void __throw_length_error() const; - _LIBCPP_NORETURN void __throw_out_of_range() const; -}; - -template -void -__deque_base_common<__b>::__throw_length_error() const -{ - _VSTD::__throw_length_error("deque"); -} - -template -void -__deque_base_common<__b>::__throw_out_of_range() const -{ - _VSTD::__throw_out_of_range("deque"); -} - template class __deque_base - : protected __deque_base_common { __deque_base(const __deque_base& __c); __deque_base& operator=(const __deque_base& __c); @@ -1873,7 +1850,7 @@ deque<_Tp, _Allocator>::at(size_type __i) { if (__i >= __base::size()) - __base::__throw_out_of_range(); + _VSTD::__throw_out_of_range("deque"); size_type __p = __base::__start_ + __i; return *(*(__base::__map_.begin() + __p / __base::__block_size) + __p % __base::__block_size); } @@ -1884,7 +1861,7 @@ deque<_Tp, _Allocator>::at(size_type __i) const { if (__i >= __base::size()) - __base::__throw_out_of_range(); + _VSTD::__throw_out_of_range("deque"); size_type __p = __base::__start_ + __i; return *(*(__base::__map_.begin() + __p / __base::__block_size) + __p % __base::__block_size); }