aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/ext/rc_string_base.h
diff options
context:
space:
mode:
authorPaolo Carlini <pcarlini@suse.de>2007-10-16 15:20:09 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2007-10-16 15:20:09 +0000
commit053cc3801ba748081d63afd85a582ebd63b89f0a (patch)
tree19d71ff75f7fa20a2104542c30cc458cc069e0c5 /libstdc++-v3/include/ext/rc_string_base.h
parent215b063c9d8700616d5c189cd12eef4e748de5fe (diff)
downloadgcc-053cc3801ba748081d63afd85a582ebd63b89f0a.zip
gcc-053cc3801ba748081d63afd85a582ebd63b89f0a.tar.gz
gcc-053cc3801ba748081d63afd85a582ebd63b89f0a.tar.bz2
vstring.h (__versa_string<>:: __versa_string(__versa_string&&), [...]): Add.
2007-10-16 Paolo Carlini <pcarlini@suse.de> * include/ext/vstring.h (__versa_string<>:: __versa_string(__versa_string&&), __versa_string<>::operator=(__versa_string&&, swap(__versa_string<>&&, __versa_string<>&), swap(__versa_string<>(&, __versa_string<>&&)): Add. (__versa_string<>::swap(__versa_string&&)): Adjust for C++0x. * include/ext/sso_string_base.h (__sso_string_base(__sso_string_base&&)): Add. (__sso_string_base()): Use _Alloc_hider(_CharT*). * include/ext/rc_string_base.h (__rc_string_base(__rc_string_base&&)): Add. (__rc_string_base()): Use _Alloc_hider(_CharT*). * include/ext/vstring_util.h (_Alloc_hider::_Alloc_hider(_CharT*)): Add. * testsuite/ext/vstring/moveable.cc: Add. * include/bits/stl_tree.h (_Rb_tree(_Rb_tree&&)): Add. * include/bits/stl_map.h (map<>::map(map&&)): Forward to the latter. * include/bits/stl_set.h (set<>::set(set&&)): Likewise. * include/bits/stl_multimap.h (multimap<>::multimap(multimap&&)): Likewise. * include/bits/stl_multiset.h (multiset<>::multiset(multiset&&)): Likewise. * include/bits/stl_deque.h (_Deque_base<>::_Deque_base(_Deque_base&&)): Add. (deque<>::deque(deque&&)): Forward to the latter. * include/bits/stl_list.h (_List_base<>::_List_base(_List_base&&)): Add. (list<>::list(list&&)): Forward to the latter. * include/bits/stl_vector.h (_Vector_base<>::_Vector_base(_Vector_base&&)): Add. (vector<>::vector(vector&&)): Forward to the latter. * include/bits/stl_bvector.h (_Bvector_base<>::_Bvector_base(_Bvector_base&&)): Add. (vector<bool>::vector(vector&&)): Forward to the latter. * testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Adjust dg-error lines. * 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. * testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/deque/requirements/dr438/ constructor_2_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_1_neg.cc: Likewise. * testsuite/23_containers/list/requirements/dr438/ constructor_2_neg.cc: Likewise. From-SVN: r129381
Diffstat (limited to 'libstdc++-v3/include/ext/rc_string_base.h')
-rw-r--r--libstdc++-v3/include/ext/rc_string_base.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/libstdc++-v3/include/ext/rc_string_base.h b/libstdc++-v3/include/ext/rc_string_base.h
index 49128aa..81dc7ea 100644
--- a/libstdc++-v3/include/ext/rc_string_base.h
+++ b/libstdc++-v3/include/ext/rc_string_base.h
@@ -301,12 +301,18 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
{ _M_rep()->_M_set_length(__n); }
__rc_string_base()
- : _M_dataplus(_Alloc(), _S_empty_rep._M_refcopy()) { }
+ : _M_dataplus(_S_empty_rep._M_refcopy()) { }
__rc_string_base(const _Alloc& __a);
__rc_string_base(const __rc_string_base& __rcs);
+#ifdef __GXX_EXPERIMENTAL_CXX0X__
+ __rc_string_base(__rc_string_base&& __rcs)
+ : _M_dataplus(__rcs._M_get_allocator(), __rcs._M_data())
+ { __rcs._M_data(_S_empty_rep._M_refcopy()); }
+#endif
+
__rc_string_base(size_type __n, _CharT __c, const _Alloc& __a);
template<typename _InputIterator>