aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/std/deque
diff options
context:
space:
mode:
authorEdward Smith-Rowland <3dw4rd@verizon.net>2018-11-29 13:43:55 +0000
committerEdward Smith-Rowland <emsr@gcc.gnu.org>2018-11-29 13:43:55 +0000
commita62b871d65a5c7ce3114ac095fa5490050f2037d (patch)
tree3d5aa40f2cd2506559da59dbbad9bce72a825f2e /libstdc++-v3/include/std/deque
parent154fb72b6d8e35b1a97fd665dd43c4f215aea1b1 (diff)
downloadgcc-a62b871d65a5c7ce3114ac095fa5490050f2037d.zip
gcc-a62b871d65a5c7ce3114ac095fa5490050f2037d.tar.gz
gcc-a62b871d65a5c7ce3114ac095fa5490050f2037d.tar.bz2
Fix erasure goofs.
2018-11-29 Edward Smith-Rowland <3dw4rd@verizon.net> Fix erasure goofs. * include/experimental/deque: Make inline. * include/std/deque: Include bits/stl_algo.h. (erase, erase_if): Make inline. * include/std/string: Include bits/stl_algo.h. * include/std/unordered_set: Add erase, erase_if! * include/std/vector: Include bits/stl_algo.h. * testsuite/21_strings/basic_string/erasure.cc: Add { dg-options "-std=gnu++2a" }. * 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: r266616
Diffstat (limited to 'libstdc++-v3/include/std/deque')
-rw-r--r--libstdc++-v3/include/std/deque5
1 files changed, 3 insertions, 2 deletions
diff --git a/libstdc++-v3/include/std/deque b/libstdc++-v3/include/std/deque
index c577e80..764e1f1 100644
--- a/libstdc++-v3/include/std/deque
+++ b/libstdc++-v3/include/std/deque
@@ -58,6 +58,7 @@
#pragma GCC system_header
#include <bits/stl_algobase.h>
+#include <bits/stl_algo.h> // For remove and remove_if
#include <bits/allocator.h>
#include <bits/stl_construct.h>
#include <bits/stl_uninitialized.h>
@@ -92,7 +93,7 @@ namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Tp, typename _Alloc, typename _Predicate>
- void
+ inline void
erase_if(deque<_Tp, _Alloc>& __cont, _Predicate __pred)
{
__cont.erase(std::remove_if(__cont.begin(), __cont.end(), __pred),
@@ -100,7 +101,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
template<typename _Tp, typename _Alloc, typename _Up>
- void
+ inline void
erase(deque<_Tp, _Alloc>& __cont, const _Up& __value)
{
__cont.erase(std::remove(__cont.begin(), __cont.end(), __value),