forward_list.h (_Fwd_list_base(const _Node_alloc_type&)): Change parameter to rvalue...
authorJonathan Wakely <jwakely@redhat.com>
Wed, 17 Jun 2015 17:45:45 +0000 (18:45 +0100)
committerJonathan Wakely <redi@gcc.gnu.org>
Wed, 17 Jun 2015 17:45:45 +0000 (18:45 +0100)
commit21bdef94b1e8c178e932cb5b560726c2c8c00323
tree86bc0511ca3b5bdc6195116ae2e7545cb0516f94
parent41571b55b1c023158fda594eafa431e943c87819
forward_list.h (_Fwd_list_base(const _Node_alloc_type&)): Change parameter to rvalue-reference.

* include/bits/forward_list.h
(_Fwd_list_base(const _Node_alloc_type&)): Change parameter to
rvalue-reference.
(_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Likewise.
(forward_list(const _Alloc&)): Split default constructor out to
separate function.
(forward_list(forward_list&&, const _Alloc&)): Move elements if base
class didn't do so.
(forward_list::_M_move_assign(forward_list&&, true_type)): Replace
swap call with two assignments.
* include/bits/forward_list.tcc
(_Fwd_list_base(_Fwd_list_base&&, const _Node_alloc_type&)): Don't
move elements when allocators are not equal.
* include/debug/forward_list (forward_list(const allocator_type&)):
Split default constructor out to separate function.
* include/profile/forward_list (forward_list(const _Alloc&)):
Likewise.

From-SVN: r224566
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/forward_list.h
libstdc++-v3/include/bits/forward_list.tcc
libstdc++-v3/include/debug/forward_list
libstdc++-v3/include/profile/forward_list