aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2014-03-21 18:54:06 +0000
committerJonathan Wakely <redi@gcc.gnu.org>2014-03-21 18:54:06 +0000
commit72d1f255ae34d00e29189d58eda27250f8a9ff0e (patch)
tree4f7628858105e6cecedd5d7a5be9c8a910ee8da7 /gcc
parent084721e0122aadd61c87c44119d65d745d3194e9 (diff)
downloadgcc-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