OSDN Git Service

2011-06-07 Paolo Carlini <paolo.carlini@oracle.com>
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Jun 2011 16:11:36 +0000 (16:11 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 Jun 2011 16:11:36 +0000 (16:11 +0000)
commitb74d2ad58c85878d3e05286f32bbd2fbf5f0fa13
tree44f8b32ca92b13801daecdae7376732bd875fb7c
parent0b7ad90050c73f17b9cd6048f1565e970979279f
2011-06-07  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/move.h (struct __move_if_noexcept_cond): Add.
(move_if_noexcept): Use the latter.
* include/bits/stl_iterator.h (__make_move_if_noexcept_iterator,
_GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR): Add.
* include/bits/stl_uninitialized.h
(__uninitialized_move_if_noexcept_a): Add.
* include/bits/vector.tcc (vector<>::reserve): Use
_GLIBCXX_MAKE_MOVE_IF_NOEXCEPT_ITERATOR.
(vector<>::_M_insert_aux, _M_fill_insert, _M_default_append,
_M_range_insert): Use __uninitialized_move_if_noexcept_a.
* testsuite/23_containers/vector/modifiers/moveable2.cc: New.
* testsuite/23_containers/vector/capacity/resize/moveable2.cc:
Likewise.
* testsuite/23_containers/vector/capacity/reserve/moveable2.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174756 138bc75d-0d04-0410-961f-82ee72b054a4
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/move.h
libstdc++-v3/include/bits/stl_iterator.h
libstdc++-v3/include/bits/stl_uninitialized.h
libstdc++-v3/include/bits/vector.tcc
libstdc++-v3/testsuite/23_containers/vector/capacity/reserve/moveable2.cc [new file with mode: 0644]
libstdc++-v3/testsuite/23_containers/vector/capacity/resize/moveable2.cc [new file with mode: 0644]
libstdc++-v3/testsuite/23_containers/vector/modifiers/moveable2.cc [new file with mode: 0644]
libstdc++-v3/testsuite/util/testsuite_rvalref.h