On 08/28/2018 09:00 PM, Jonathan Wakely wrote:
On 25/08/18 22:44 +0200, François Dumont wrote:
The last optimizations that get disabled when Debug mode is enable
are the algo specializations for std::deque iterators.
This patch move those algos in std namespace as they should even when
Debug mode is enable so that they get considered even when calls are
made with the namespace qualification. And it adds all the algos
Debug implementations which forward to normal implementations to
benefit from optimizations.
Please add a ChangeLog to the patch.
* include/bits/stl_deque.h
(fill, copy, copy_backward, move, move_backward): Move overloads for
std::deque iterators directly in std namespace.
* include/bits/deque.tcc: Likewise.
* include/debug/deque (fill, copy, copy_backward, move, move_backward):
New overloads for std::__debug::deque iterators. Forward to normal and
optimized implementations after proper debug checks.
* testsuite/23_containers/deque/copy.cc: New.
* testsuite/23_containers/deque/copy_backward.cc: New.
* testsuite/23_containers/deque/fill.cc: New.
* testsuite/23_containers/deque/move.cc: New.
* testsuite/23_containers/deque/move_backward.cc: New.
Ok to commit ?
François