re PR libstdc++/61086 (ubsan detects undefined behaviour in the standard library)
commitbbf264c9b26694e0665f64d67417fc2e7d0e550a
authorJonathan Wakely <jwakely@redhat.com>
Wed, 7 May 2014 14:43:22 +0000 (7 15:43 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Wed, 7 May 2014 14:43:22 +0000 (7 15:43 +0100)
treee4583c5961ca8fdbf421cd6f31d97e91e4b417af
parentef2662bf65271c7723e797a11891d8085cd01fa5
re PR libstdc++/61086 (ubsan detects undefined behaviour in the standard library)

PR libstdc++/61086
* include/bits/stl_iterator.h (__normal_iterator::_M_const_cast):
Remove.
* include/bits/stl_vector.h (vector::insert, vector::erase): Use
arithmetic to obtain a mutable iterator from const_iterator.
* include/bits/vector.tcc (vector::insert): Likewise.
* include/debug/vector (vector::erase): Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r210162
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_iterator.h
libstdc++-v3/include/bits/stl_vector.h
libstdc++-v3/include/bits/vector.tcc
libstdc++-v3/include/debug/vector
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc
libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc