Subject: Re: [boost] [tuple] - Move constructors for Tuple
From: Adam Wulkiewicz (adam.wulkiewicz_at_[hidden])
Date: 2013-02-22 14:32:17
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_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?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk