http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58982
--- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> --- Author: redi Date: Sat Nov 9 12:38:00 2013 New Revision: 204615 URL: http://gcc.gnu.org/viewcvs?rev=204615&root=gcc&view=rev Log: PR libstdc++/58982 * include/bits/stl_algobase.h (__copy_move::__copy_m): Use assertion to prevent using memmove() on non-assignable types. (__copy_move_backward::__copy_move_b): Likewise. * include/bits/stl_uninitialized.h (uninitialized_copy uninitialized_copy_n, uninitialized_fill, uninitialized_fill_n, __uninitialized_default, __uninitialized_default_n): Check for assignable as well as trivial. * testsuite/20_util/specialized_algorithms/uninitialized_copy/ 58982.cc: New. * testsuite/20_util/specialized_algorithms/uninitialized_copy_n/ 58982.cc: New. * testsuite/20_util/specialized_algorithms/uninitialized_fill/ 58982.cc: New. * testsuite/20_util/specialized_algorithms/uninitialized_fill_n/ 58982.cc: New. * testsuite/25_algorithms/copy/58982.cc: New. * testsuite/25_algorithms/copy_n/58982.cc: New. Added: trunk/libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_copy/58982.cc trunk/libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_copy_n/58982.cc trunk/libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_fill/58982.cc trunk/libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_fill_n/58982.cc trunk/libstdc++-v3/testsuite/25_algorithms/copy/58982.cc trunk/libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc Modified: trunk/libstdc++-v3/ChangeLog trunk/libstdc++-v3/include/bits/stl_algobase.h trunk/libstdc++-v3/include/bits/stl_uninitialized.h