diff --git a/libcxx/include/list b/libcxx/include/list --- a/libcxx/include/list +++ b/libcxx/include/list @@ -679,11 +679,6 @@ void __move_assign_alloc(__list_imp&, false_type) _NOEXCEPT {} - - _LIBCPP_INLINE_VISIBILITY - void __invalidate_all_iterators() { - std::__debug_db_invalidate_all(this); - } }; // Unlink nodes [__f, __l] @@ -746,7 +741,7 @@ __node_alloc_traits::destroy(__na, _VSTD::addressof(__np->__value_)); __node_alloc_traits::deallocate(__na, __np, 1); } - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } } diff --git a/libcxx/include/string b/libcxx/include/string --- a/libcxx/include/string +++ b/libcxx/include/string @@ -1787,7 +1787,6 @@ return *this; } - _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_AFTER_CXX17 void __invalidate_all_iterators(); _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_AFTER_CXX17 void __invalidate_iterators_past(size_type); template @@ -1860,14 +1859,6 @@ -> basic_string<_CharT, _Traits, _Allocator>; #endif -template -inline _LIBCPP_CONSTEXPR_AFTER_CXX17 -void -basic_string<_CharT, _Traits, _Allocator>::__invalidate_all_iterators() -{ - std::__debug_db_invalidate_all(this); -} - template inline _LIBCPP_CONSTEXPR_AFTER_CXX17 void @@ -2357,7 +2348,7 @@ auto __allocation = std::__allocate_at_least(__alloc(), __cap + 1); pointer __p = __allocation.ptr; __begin_lifetime(__p, __allocation.count); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); if (__n_copy != 0) traits_type::copy(std::__to_address(__p), std::__to_address(__old_p), __n_copy); @@ -2392,7 +2383,7 @@ auto __allocation = std::__allocate_at_least(__alloc(), __cap + 1); pointer __p = __allocation.ptr; __begin_lifetime(__p, __allocation.count); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); if (__n_copy != 0) traits_type::copy(std::__to_address(__p), std::__to_address(__old_p), __n_copy); @@ -3330,7 +3321,7 @@ void basic_string<_CharT, _Traits, _Allocator>::clear() _NOEXCEPT { - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); if (__is_long()) { traits_type::assign(*__get_long_pointer(), value_type()); @@ -3481,7 +3472,7 @@ } else __set_short_size(__sz); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } template diff --git a/libcxx/include/vector b/libcxx/include/vector --- a/libcxx/include/vector +++ b/libcxx/include/vector @@ -639,7 +639,7 @@ size_type __old_size = size(); __clear(); __annotate_shrink(__old_size); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } void resize(size_type __sz); @@ -670,7 +670,6 @@ __compressed_pair __end_cap_ = __compressed_pair(nullptr, __default_init_tag()); - _LIBCPP_INLINE_VISIBILITY void __invalidate_all_iterators(); _LIBCPP_INLINE_VISIBILITY void __invalidate_iterators_past(pointer __new_last); @@ -923,7 +922,7 @@ _VSTD::swap(this->__end_cap(), __v.__end_cap()); __v.__first_ = __v.__begin_; __annotate_new(size()); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } template @@ -939,7 +938,7 @@ _VSTD::swap(this->__end_cap(), __v.__end_cap()); __v.__first_ = __v.__begin_; __annotate_new(size()); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); return __r; } @@ -1364,7 +1363,7 @@ __vallocate(__recommend(__new_size)); __construct_at_end(__first, __last, __new_size); } - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } template @@ -1386,7 +1385,7 @@ __vallocate(__recommend(static_cast(__n))); __construct_at_end(__n, __u); } - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } template @@ -1996,14 +1995,6 @@ #endif // _LIBCPP_DEBUG_LEVEL == 2 -template -inline _LIBCPP_INLINE_VISIBILITY -void -vector<_Tp, _Allocator>::__invalidate_all_iterators() -{ - std::__debug_db_invalidate_all(this); -} - template inline _LIBCPP_INLINE_VISIBILITY void @@ -2327,7 +2318,6 @@ // Precondition: __n > 0 // Postcondition: capacity() >= __n // Postcondition: size() == 0 - _LIBCPP_INLINE_VISIBILITY void __invalidate_all_iterators(); _LIBCPP_HIDE_FROM_ABI void __vallocate(size_type __n) { if (__n > max_size()) __throw_length_error(); @@ -2417,13 +2407,6 @@ friend struct _LIBCPP_TEMPLATE_VIS hash; }; -template -inline _LIBCPP_INLINE_VISIBILITY -void -vector::__invalidate_all_iterators() -{ -} - template void vector::__vdeallocate() _NOEXCEPT @@ -2431,7 +2414,7 @@ if (this->__begin_ != nullptr) { __storage_traits::deallocate(this->__alloc(), this->__begin_, __cap()); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); this->__begin_ = nullptr; this->__size_ = this->__cap() = 0; } @@ -2604,7 +2587,7 @@ { if (__begin_ != nullptr) __storage_traits::deallocate(__alloc(), __begin_, __cap()); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); throw; } #endif // _LIBCPP_NO_EXCEPTIONS @@ -2631,7 +2614,7 @@ { if (__begin_ != nullptr) __storage_traits::deallocate(__alloc(), __begin_, __cap()); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); throw; } #endif // _LIBCPP_NO_EXCEPTIONS @@ -2706,7 +2689,7 @@ { if (__begin_ != nullptr) __storage_traits::deallocate(__alloc(), __begin_, __cap()); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } template @@ -2850,7 +2833,7 @@ } _VSTD::fill_n(begin(), __n, __x); } - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } template @@ -2904,7 +2887,7 @@ __v.__vallocate(__n); __v.__construct_at_end(this->begin(), this->end()); swap(__v); - __invalidate_all_iterators(); + std::__debug_db_invalidate_all(this); } }