Subject: Re: [Boost-bugs] [Boost C++ Libraries] #11132: Boost.Variant's boost::recursive_wrapper missing noexcept specifier on move constructor
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-03-22 01:49:38
#11132: Boost.Variant's boost::recursive_wrapper missing noexcept specifier on move
constructor
-------------------------------+---------------------
Reporter: peterhuene@⦠| Owner: ebf
Type: Bugs | Status: new
Milestone: To Be Determined | Component: variant
Version: Boost 1.57.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+---------------------
Comment (by peterhuene@â¦):
Is invoking T's move constructor when the wrapper is moved really more
important than maintaining move semantics for vector<recursive_variant_>
and, by extension, the entire variant type?
I get that the wrapper is supposed to be as transparent as possible to the
user of the recursive variant (i.e. T's move constructor would normally be
invoked on move), but, in my opinion, the intent of move semantics is
still being adhered to if _p is moved instead of a new T allocated and
then moved into.
To put it another way: I think forcing copy semantics for recursive
variants with sequence containers (for the sake of complete wrapper
transparency?) to be unreasonably burdensome for users expecting their
variants to be efficiently movable.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/11132#comment:4> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:18 UTC