This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/49836] [C++0x] vector<T>::push_back() should not require T to be (move-)assignable
- From: "paolo at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 25 Jul 2011 17:08:58 +0000
- Subject: [Bug libstdc++/49836] [C++0x] vector<T>::push_back() should not require T to be (move-)assignable
- Auto-submitted: auto-generated
- References: <bug-49836-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49836
--- Comment #3 from paolo at gcc dot gnu.org <paolo at gcc dot gnu.org> 2011-07-25 17:08:53 UTC ---
Author: paolo
Date: Mon Jul 25 17:08:48 2011
New Revision: 176761
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176761
Log:
2011-07-25 Paolo Carlini <paolo.carlini@oracle.com>
Nathan Ridge <zeratul976@hotmail.com>
PR libstdc++/49836
* include/bits/stl_vector.h (vector<>::_M_emplace_back_aux):
Declare.
(vector<>::push_back(const value_type&)): Use it.
* include/bits/vector.tcc: Define.
(vector<>::emplace_back(_Args&&...)): Use it.
* testsuite/util/testsuite_tr1.h (CopyConsOnlyType, MoveConsOnlyType):
Add.
* testsuite/23_containers/vector/modifiers/push_back/49836.cc: New.
* testsuite/23_containers/deque/modifiers/push_back/49836.cc:
Likewise.
* testsuite/23_containers/deque/modifiers/push_front/49836.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
Added:
trunk/libstdc++-v3/testsuite/23_containers/deque/modifiers/push_back/
trunk/libstdc++-v3/testsuite/23_containers/deque/modifiers/push_back/49836.cc
trunk/libstdc++-v3/testsuite/23_containers/deque/modifiers/push_front/
trunk/libstdc++-v3/testsuite/23_containers/deque/modifiers/push_front/49836.cc
trunk/libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/
trunk/libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/49836.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/stl_vector.h
trunk/libstdc++-v3/include/bits/vector.tcc
trunk/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/assign_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc
trunk/libstdc++-v3/testsuite/23_containers/vector/requirements/dr438/insert_neg.cc
trunk/libstdc++-v3/testsuite/util/testsuite_tr1.h