[Boost-bugs] [Boost C++ Libraries] #12319: `boost::container::flat_set` should be nothrow move constructible

Subject: [Boost-bugs] [Boost C++ Libraries] #12319: `boost::container::flat_set` should be nothrow move constructible
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2016-07-09 03:08:19


#12319: `boost::container::flat_set` should be nothrow move constructible
------------------------------+------------------------
 Reporter: beck.ct@… | Owner: igaztanaga
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: container
  Version: Boost 1.61.0 | Severity: Problem
 Keywords: |
------------------------------+------------------------
 It appears to me that in a simple oversight, `boost::container::flat_set`
 is missing a `noexcept` declaration on its move constructor.

 It is conditionally `noexcept` move assignable, assuming there are no
 allocator shenanigans.
 I'm not aware of a reason why something would be sometimes `noexcept` move
 assignable, but never move constructible.

 It appears to me that the implementation in fact does not throw, so I
 *believe* this could be fixed quite easily.

 It would help using this type with generic code in certain cases if it
 were marked thusly.
 Thank you.

 (I earlier posted this on stackoverflow here:

 http://stackoverflow.com/questions/38166063/why-is-boostcontainerflat-set-
 not-nothrow-move-constructible

 )

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/12319>
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:20 UTC