[Bug libstdc++/49559] [C++0x] stable_sort calls self-move-assignment operator
paolo at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Sep 27 08:31:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49559
--- Comment #24 from paolo at gcc dot gnu.org <paolo at gcc dot gnu.org> 2011-09-27 08:22:22 UTC ---
Author: paolo
Date: Tue Sep 27 08:22:07 2011
New Revision: 179242
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=179242
Log:
2011-09-27 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/49559
* include/bits/stl_algo.h (__move_merge_backward): Remove.
(__move_merge_adaptive, __move_merge_adaptive_backward): New.
(__merge_adaptive): Use the latter two.
(__rotate_adaptive): Avoid self move-assignment.
* include/bits/stl_algobase.h (move_backward): Fix comment.
* testsuite/25_algorithms/stable_sort/49559.cc: New.
* testsuite/25_algorithms/inplace_merge/49559.cc: Likewise.
* testsuite/25_algorithms/inplace_merge/moveable.cc: Extend.
* testsuite/25_algorithms/inplace_merge/moveable2.cc: Likewise.
* testsuite/util/testsuite_rvalref.h (rvalstruct::operator=
(rvalstruct&&)): Check for self move-assignment.
Added:
branches/gcc-4_6-branch/libstdc++-v3/testsuite/25_algorithms/inplace_merge/49559.cc
branches/gcc-4_6-branch/libstdc++-v3/testsuite/25_algorithms/stable_sort/49559.cc
Modified:
branches/gcc-4_6-branch/libstdc++-v3/ChangeLog
branches/gcc-4_6-branch/libstdc++-v3/include/bits/stl_algo.h
branches/gcc-4_6-branch/libstdc++-v3/include/bits/stl_algobase.h
branches/gcc-4_6-branch/libstdc++-v3/testsuite/25_algorithms/inplace_merge/moveable.cc
branches/gcc-4_6-branch/libstdc++-v3/testsuite/25_algorithms/inplace_merge/moveable2.cc
branches/gcc-4_6-branch/libstdc++-v3/testsuite/util/testsuite_rvalref.h
More information about the Gcc-bugs
mailing list