diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2014-03-21 18:54:06 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2014-03-21 18:54:06 +0000 |
commit | 72d1f255ae34d00e29189d58eda27250f8a9ff0e (patch) | |
tree | 4f7628858105e6cecedd5d7a5be9c8a910ee8da7 /gcc | |
parent | 084721e0122aadd61c87c44119d65d745d3194e9 (diff) | |
download | gcc-72d1f255ae34d00e29189d58eda27250f8a9ff0e.zip gcc-72d1f255ae34d00e29189d58eda27250f8a9ff0e.tar.gz gcc-72d1f255ae34d00e29189d58eda27250f8a9ff0e.tar.bz2 |
re PR libstdc++/60587 (debug-mode -std=c++11 vector::insert(pos, begin, end) dereferences begin too eagerly)
PR libstdc++/60587
* include/debug/functions.h (_Is_contiguous_sequence): Define.
(__foreign_iterator): Accept additional iterator. Do not dispatch on
iterator category.
(__foreign_iterator_aux2): Likewise. Add overload for iterators
from different types of debug container. Use _Is_contiguous_sequence
instead of is_lvalue_reference.
(__foreign_iterator_aux3): Accept additional iterator. Avoid
dereferencing past-the-end iterator.
(__foreign_iterator_aux4): Use const value_type* instead of
potentially user-defined const_pointer type.
* include/debug/macros.h (__glibcxx_check_insert_range): Fix comment
and pass end iterator to __gnu_debug::__foreign_iterator.
(__glibcxx_check_insert_range_after): Likewise.
(__glibcxx_check_max_load_factor): Fix comment.
* include/debug/vector (_Is_contiguous_sequence): Define partial
specializations.
* testsuite/23_containers/vector/debug/57779_neg.cc: Remove
-std=gnu++11 option and unused header.
* testsuite/23_containers/vector/debug/60587.cc: New.
* testsuite/23_containers/vector/debug/60587_neg.cc: New.
From-SVN: r208755
Diffstat (limited to 'gcc')
0 files changed, 0 insertions, 0 deletions