re PR libstdc++/34595 (std::copy copies the output iterator before assigning)
authorPaolo Carlini <pcarlini@suse.de>
Wed, 26 Dec 2007 21:58:49 +0000 (21:58 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Wed, 26 Dec 2007 21:58:49 +0000 (21:58 +0000)
commit5f6d5f0af6d71c61fc06e2d0435babc4a5a4502a
tree2945204b1ef2d8252e1890c5d77161474f662035
parent3dfb41c56409dcba9febba4cec9a42f1c2b0a3a3
re PR libstdc++/34595 (std::copy copies the output iterator before assigning)

2007-12-26  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/34595
* include/bits/stl_algobase.h (struct __cm_assign): Remove.
(struct __copy_move<true, false, _Category>,
struct __copy_move<true, false, random_access_iterator_tag>,
struct __copy_move_backward<true, false, _Category>,
struct __copy_move_backward<true, false, random_access_iterator_tag>):
Add.
(struct __copy_move, struct __copy_move_backward,
struct __copy_move<false, false, random_access_iterator_tag>,
struct __copy_move_backward<false, false, random_access_iterator_tag>):
Adjust.
* testsuite/25_algorithms/copy/34595.C: New.

From-SVN: r131188
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_algobase.h
libstdc++-v3/testsuite/25_algorithms/copy/34595.C [new file with mode: 0644]