This is the mail archive of the
libstdc++-cvs@gcc.gnu.org
mailing list for the libstdc++ project.
r107547 - in /branches/libstdcxx_so_7-branch/li...
- From: paolo at gcc dot gnu dot org
- To: libstdc++-cvs at gcc dot gnu dot org
- Date: Sat, 26 Nov 2005 23:33:53 -0000
- Subject: r107547 - in /branches/libstdcxx_so_7-branch/li...
Author: paolo
Date: Sat Nov 26 23:33:52 2005
New Revision: 107547
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=107547
Log:
2005-11-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_deque.h (deque<>::_M_erase_at_end,
_M_erase_at_begin, _M_destroy_data, _M_destroy_data_dispatch,
_M_destroy_data_aux): New, optimize erase at begin() / end() and
consistently use the "segmented iterator" optimization.
(deque<>::~deque(), resize, clear, _M_assign_aux, _M_fill_assign):
Use the above.
* include/bits/deque.tcc (deque<>::operator=, _M_assign_aux): Same.
(erase(iterator, iterator)): Likewise, clean-up.
(erase(iterator)): Tweak, don't call __move unnecessarily.
(_M_destroy_data_aux): Define.
* testsuite/23_containers/deque/modifiers/erase/1.cc: New.
* testsuite/23_containers/deque/modifiers/erase/2.cc: Likewise.
* testsuite/23_containers/vector/modifiers/erase/1.cc: Extend.
Added:
branches/libstdcxx_so_7-branch/libstdc++-v3/testsuite/23_containers/deque/modifiers/erase/
branches/libstdcxx_so_7-branch/libstdc++-v3/testsuite/23_containers/deque/modifiers/erase/1.cc
branches/libstdcxx_so_7-branch/libstdc++-v3/testsuite/23_containers/deque/modifiers/erase/2.cc
Modified:
branches/libstdcxx_so_7-branch/libstdc++-v3/ChangeLog.libstdcxx_so_7-branch
branches/libstdcxx_so_7-branch/libstdc++-v3/include/bits/deque.tcc
branches/libstdcxx_so_7-branch/libstdc++-v3/include/bits/stl_deque.h
branches/libstdcxx_so_7-branch/libstdc++-v3/testsuite/23_containers/vector/modifiers/erase/1.cc