]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR libstdc++/58982 (std::vector<std::atomic<int>> vai(10); does not compile anymore)
authorJonathan Wakely <jwakely.gcc@gmail.com>
Sat, 9 Nov 2013 12:38:00 +0000 (12:38 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Sat, 9 Nov 2013 12:38:00 +0000 (12:38 +0000)
commit5275f3e54604ae1e7143cd32d2cd45eae53b5d19
tree02a44fb906ee33f23c3474e42a2d8281b25b50ed
parent1d0216c8b79931cffcc5599b8a9a4f6eaf86d2b7
re PR libstdc++/58982 (std::vector<std::atomic<int>> vai(10); does not compile anymore)

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.

From-SVN: r204615
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/stl_algobase.h
libstdc++-v3/include/bits/stl_uninitialized.h
libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_copy/58982.cc [new file with mode: 0644]
libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_copy_n/58982.cc [new file with mode: 0644]
libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_fill/58982.cc [new file with mode: 0644]
libstdc++-v3/testsuite/20_util/specialized_algorithms/uninitialized_fill_n/58982.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/copy/58982.cc [new file with mode: 0644]
libstdc++-v3/testsuite/25_algorithms/copy_n/58982.cc [new file with mode: 0644]