Subject: Re: [boost] [tuple] - Move constructors for Tuple
From: Adam Wulkiewicz (adam.wulkiewicz_at_[hidden])
Date: 2013-02-22 21:00:12
Adam Wulkiewicz wrote:
> paul Fultz wrote:
>> Im sorry, it should be something like this:
>> struct foo
>> tuple<int> x;
>> foo a;
>> a = foo();
>> Because of this issue here:
> It compiles now, thanks. Checked on clang (98, 11), gcc (98, 11), mingw,
> vs2010, for tuples and tuple::cons.
> - in c++98 copy assignment is called
> - in c++11 move assignment is called
> - in vc2010 copy assignment is called, it probably just doesn't generate
> implicit move assignment for foo.
> Btw, I saw the ticket. Everything that needs to be done is adding
> explicitly defined copy assignment taking const ref if
> BOOST_NO_CXX11_RVALUE_REFERENCES. Boost.Move
> BOOST_COPYABLE_AND_MOVABLE() macro adds only non-const ref version. If
> the const version was added as well it would probably fix all issues
> described in the ticket. Is there a reason why this isn't there?
And it now supports storing references also in c++11.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk