summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/include/debug/unordered_map
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2010-02-10 16:09:42 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2010-02-10 16:09:42 +0000
commit73e1eac5f56ff2de695704895b6ad2cb8faf8225 (patch)
tree88ec53b5787238bd38592fc81959492719765e0c /libstdc++-v3/include/debug/unordered_map
parent5b0b615625dfd3508b2e891413adf3a2c8dd270c (diff)
downloadppe42-gcc-73e1eac5f56ff2de695704895b6ad2cb8faf8225.tar.gz
ppe42-gcc-73e1eac5f56ff2de695704895b6ad2cb8faf8225.zip
2010-02-10 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/hashtable.h: Fold in include/tr1_impl/hashtable.h for C++0x use. * include/bits/hashtable_policy.h: New, copy and adjust for C++0x use, include/tr1_impl/hashtable_policy.h; fix erase and insert member functions per n3000. * include/bits/unordered_map.h: Likewise for include/tr1_impl/ unordered_map. * include/bits/unordered_set.h: Likewise for include/tr1_impl/ unordered_set. * include/Makefile.am: Adjust. * include/Makefile.in: Regenerate. * include/tr1/unordered_map: Adjust. * include/tr1/unordered_set: Likewise. * include/tr1_impl/unordered_map: Adjust, now used only by tr1. * include/tr1_impl/hashtable: Likewise. * include/tr1_impl/hashtable_policy.h: Likewise. * include/tr1_impl/unordered_set: Likewise. * include/std/unordered_map: Adjust and simplify includes. * include/std/unordered_set: Likewise. * include/debug/unordered_map: Adjuse erase and insert members. * include/debug/unordered_set: Likewise. * include/profile/unordered_map: Likewise. * include/profile/unordered_set: Likewise. * testsuite/util/exception/safety.h: Fix for the updated erase and insert member functions of the unordered_containers. * testsuite/23_containers/unordered_map/erase/1.cc: New. * testsuite/23_containers/unordered_map/erase/24061-map.cc: Likewise. * testsuite/23_containers/unordered_map/insert/map_single.cc: Likewise. * testsuite/23_containers/unordered_map/insert/array_syntax.cc: Likewise. * testsuite/23_containers/unordered_map/insert/24061-map.cc: Likewise. * testsuite/23_containers/unordered_map/insert/map_range.cc: Likewise. * testsuite/23_containers/set/operators/1_neg.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multimap/erase/ 24061-multimap.cc: Likewise. * testsuite/23_containers/unordered_multimap/insert/ 24061-multimap.cc: Likewise. * testsuite/23_containers/unordered_multimap/insert/ multimap_range.cc: Likewise. * testsuite/23_containers/unordered_multimap/insert/ multimap_single.cc: Likewise. * testsuite/23_containers/unordered_set/erase/1.cc: Likewise. * testsuite/23_containers/unordered_set/erase/24061-set.cc: Likewise. * testsuite/23_containers/unordered_set/insert/set_single.cc: Likewise. * testsuite/23_containers/unordered_set/insert/24061-set.cc: Likewise. * testsuite/23_containers/unordered_set/insert/set_range.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/1.cc: Likewise. * testsuite/23_containers/unordered_multiset/erase/ 24061-multiset.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/ 24061-multiset.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/ multiset_range.cc: Likewise. * testsuite/23_containers/unordered_multiset/insert/ multiset_single.cc: Likewise. * testsuite/23_containers/set/operators/1_neg.cc: Tweak dg-errors to avoid spurious fails in debug-mode. * testsuite/23_containers/map/operators/1_neg.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@156661 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/debug/unordered_map')
-rw-r--r--libstdc++-v3/include/debug/unordered_map70
1 files changed, 8 insertions, 62 deletions
diff --git a/libstdc++-v3/include/debug/unordered_map b/libstdc++-v3/include/debug/unordered_map
index 63b292b49f2..53ce7c09619 100644
--- a/libstdc++-v3/include/debug/unordered_map
+++ b/libstdc++-v3/include/debug/unordered_map
@@ -183,19 +183,11 @@ namespace __debug
}
iterator
- insert(iterator, const value_type& __obj)
- {
- typedef std::pair<typename _Base::iterator, bool> __pair_type;
- __pair_type __res = _Base::insert(__obj);
- return iterator(__res.first, this);
- }
-
- const_iterator
insert(const_iterator, const value_type& __obj)
{
typedef std::pair<typename _Base::iterator, bool> __pair_type;
__pair_type __res = _Base::insert(__obj);
- return const_iterator(__res.first, this);
+ return iterator(__res.first, this);
}
void
@@ -252,35 +244,14 @@ namespace __debug
}
iterator
- erase(iterator __it)
- {
- __glibcxx_check_erase(__it);
- __it._M_invalidate();
- return iterator(_Base::erase(__it.base()), this);
- }
-
- const_iterator
erase(const_iterator __it)
{
__glibcxx_check_erase(__it);
__it._M_invalidate();
- return const_iterator(_Base::erase(__it.base()), this);
+ return iterator(_Base::erase(__it.base()), this);
}
iterator
- erase(iterator __first, iterator __last)
- {
- __glibcxx_check_erase_range(__first, __last);
- for (iterator __tmp = __first; __tmp != __last;)
- {
- iterator __victim = __tmp++;
- __victim._M_invalidate();
- }
- return iterator(_Base::erase(__first.base(),
- __last.base()), this);
- }
-
- const_iterator
erase(const_iterator __first, const_iterator __last)
{
__glibcxx_check_erase_range(__first, __last);
@@ -289,8 +260,8 @@ namespace __debug
const_iterator __victim = __tmp++;
__victim._M_invalidate();
}
- return const_iterator(_Base::erase(__first.base(),
- __last.base()), this);
+ return iterator(_Base::erase(__first.base(),
+ __last.base()), this);
}
_Base&
@@ -453,12 +424,8 @@ namespace __debug
{ return iterator(_Base::insert(__obj), this); }
iterator
- insert(iterator, const value_type& __obj)
- { return iterator(_Base::insert(__obj), this); }
-
- const_iterator
insert(const_iterator, const value_type& __obj)
- { return const_iterator(_Base::insert(__obj), this); }
+ { return iterator(_Base::insert(__obj), this); }
void
insert(std::initializer_list<value_type> __l)
@@ -514,35 +481,14 @@ namespace __debug
}
iterator
- erase(iterator __it)
- {
- __glibcxx_check_erase(__it);
- __it._M_invalidate();
- return iterator(_Base::erase(__it.base()), this);
- }
-
- const_iterator
erase(const_iterator __it)
{
__glibcxx_check_erase(__it);
__it._M_invalidate();
- return const_iterator(_Base::erase(__it.base()), this);
+ return iterator(_Base::erase(__it.base()), this);
}
iterator
- erase(iterator __first, iterator __last)
- {
- __glibcxx_check_erase_range(__first, __last);
- for (iterator __tmp = __first; __tmp != __last;)
- {
- iterator __victim = __tmp++;
- __victim._M_invalidate();
- }
- return iterator(_Base::erase(__first.base(),
- __last.base()), this);
- }
-
- const_iterator
erase(const_iterator __first, const_iterator __last)
{
__glibcxx_check_erase_range(__first, __last);
@@ -551,8 +497,8 @@ namespace __debug
const_iterator __victim = __tmp++;
__victim._M_invalidate();
}
- return const_iterator(_Base::erase(__first.base(),
- __last.base()), this);
+ return iterator(_Base::erase(__first.base(),
+ __last.base()), this);
}
_Base&
OpenPOWER on IntegriCloud