diff options
author | Edward Smith-Rowland <3dw4rd@verizon.net> | 2018-11-30 16:12:13 +0000 |
---|---|---|
committer | Edward Smith-Rowland <emsr@gcc.gnu.org> | 2018-11-30 16:12:13 +0000 |
commit | 0b44b4b807a2d7bee4d2a0e4c37794db2aeeb44f (patch) | |
tree | f98bd7fce12f723b38ecedc523dcb4ccfc3763ec /libstdc++-v3/include/std/set | |
parent | ef33afebf3351fe9f5032ebb735f4ec988e29f06 (diff) | |
download | gcc-0b44b4b807a2d7bee4d2a0e4c37794db2aeeb44f.zip gcc-0b44b4b807a2d7bee4d2a0e4c37794db2aeeb44f.tar.gz gcc-0b44b4b807a2d7bee4d2a0e4c37794db2aeeb44f.tar.bz2 |
Pre-emptively support P0646R1 for std container erasure.
2018-11-30 Edward Smith-Rowland <3dw4rd@verizon.net>
Pre-emptively support P0646R1 for std container erasure.
* include/bits/erase_if.h: Accumulate and return number of erased nodes.
* include/std/forward_list (): Return number of erased items.
* include/std/list (): Ditto.
* include/std/map (): Ditto.
* include/std/set (): Ditto.
* include/std/string (): Ditto.
* include/std/unordered_map (): Ditto.
* include/std/unordered_set (): Ditto.
* include/std/vector (): Ditto.
* testsuite/21_strings/basic_string/erasure.cc: Test number of erasures.
* testsuite/23_containers/deque/erasure.cc: Ditto.
* testsuite/23_containers/forward_list/erasure.cc: Ditto.
* testsuite/23_containers/list/erasure.cc: Ditto.
* testsuite/23_containers/map/erasure.cc: Ditto.
* testsuite/23_containers/set/erasure.cc: Ditto.
* testsuite/23_containers/unordered_map/erasure.cc: Ditto.
* testsuite/23_containers/unordered_set/erasure.cc: Ditto.
* testsuite/23_containers/vector/erasure.cc: Ditto.
From-SVN: r266672
Diffstat (limited to 'libstdc++-v3/include/std/set')
-rw-r--r-- | libstdc++-v3/include/std/set | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libstdc++-v3/include/std/set b/libstdc++-v3/include/std/set index 432af90..2423b2f 100644 --- a/libstdc++-v3/include/std/set +++ b/libstdc++-v3/include/std/set @@ -93,15 +93,15 @@ namespace std _GLIBCXX_VISIBILITY(default) _GLIBCXX_BEGIN_NAMESPACE_VERSION template<typename _Key, typename _Compare, typename _Alloc, typename _Predicate> - inline void + inline typename set<_Key, _Compare, _Alloc>::size_type erase_if(set<_Key, _Compare, _Alloc>& __cont, _Predicate __pred) - { __detail::__erase_nodes_if(__cont, __pred); } + { return __detail::__erase_nodes_if(__cont, __pred); } template<typename _Key, typename _Compare, typename _Alloc, typename _Predicate> - inline void + inline typename multiset<_Key, _Compare, _Alloc>::size_type erase_if(multiset<_Key, _Compare, _Alloc>& __cont, _Predicate __pred) - { __detail::__erase_nodes_if(__cont, __pred); } + { return __detail::__erase_nodes_if(__cont, __pred); } _GLIBCXX_END_NAMESPACE_VERSION } // namespace std #endif // C++20 |