diff options
author | François Dumont <fdumont@gcc.gnu.org> | 2011-10-01 19:21:57 +0000 |
---|---|---|
committer | François Dumont <fdumont@gcc.gnu.org> | 2011-10-01 19:21:57 +0000 |
commit | cdfa3dbb8668adefd4e67f5dd16ebdb680b697ab (patch) | |
tree | 7e94155ff948635fa120c0e2692ba0fa81ccd010 | |
parent | e323640fb2d6fc3f9ed467b7dad246ce953441f8 (diff) | |
download | gcc-cdfa3dbb8668adefd4e67f5dd16ebdb680b697ab.zip gcc-cdfa3dbb8668adefd4e67f5dd16ebdb680b697ab.tar.gz gcc-cdfa3dbb8668adefd4e67f5dd16ebdb680b697ab.tar.bz2 |
vector (vector<>::erase(iterator, iterator): Check iterators equality using normal iterators.
2011-10-01 François Dumont <fdumont@gcc.gnu.org>
* include/debug/vector (vector<>::erase(iterator, iterator): Check
iterators equality using normal iterators.
* include/debug/deque (deque<>::erase(iterator, iterator): Likewise.
From-SVN: r179414
-rw-r--r-- | libstdc++-v3/ChangeLog | 6 | ||||
-rw-r--r-- | libstdc++-v3/include/debug/deque | 2 | ||||
-rw-r--r-- | libstdc++-v3/include/debug/vector | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 8a15c8c..a03f1af 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,9 @@ +2011-10-01 François Dumont <fdumont@gcc.gnu.org> + + * include/debug/vector (vector<>::erase(iterator, iterator): Check + iterators equality using normal iterators. + * include/debug/deque (deque<>::erase(iterator, iterator): Likewise. + 2011-09-29 Paolo Carlini <paolo.carlini@oracle.com> * include/bits/hashtable.h (_Hashtable<>::_Hashtable(_Hashtable&&)): diff --git a/libstdc++-v3/include/debug/deque b/libstdc++-v3/include/debug/deque index 2bce992..07b332b 100644 --- a/libstdc++-v3/include/debug/deque +++ b/libstdc++-v3/include/debug/deque @@ -465,7 +465,7 @@ namespace __debug // 151. can't currently clear() empty container __glibcxx_check_erase_range(__first, __last); - if (__first == __last) + if (__first.base() == __last.base()) return __first; else if (__first.base() == _Base::begin() || __last.base() == _Base::end()) diff --git a/libstdc++-v3/include/debug/vector b/libstdc++-v3/include/debug/vector index 865c275..0f252a0 100644 --- a/libstdc++-v3/include/debug/vector +++ b/libstdc++-v3/include/debug/vector @@ -499,7 +499,7 @@ namespace __debug // 151. can't currently clear() empty container __glibcxx_check_erase_range(__first, __last); - if (__first != __last) + if (__first.base() != __last.base()) { difference_type __offset = __first.base() - _Base::begin(); _Base_iterator __res = _Base::erase(__first.base(), |