Re: [Boost-bugs] [Boost C++ Libraries] #8674: Futures as local named objects can't be returned with implicit move.

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #8674: Futures as local named objects can't be returned with implicit move.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-06-09 10:24:57


#8674: Futures as local named objects can't be returned with implicit move.
-------------------------------+----------------------
  Reporter: mjklaim@… | Owner: viboes
      Type: Bugs | Status: assigned
 Milestone: To Be Determined | Component: thread
   Version: Boost 1.53.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+----------------------

Comment (by viboes):

 Replying to [comment:2 mjklaim@…]:
> I copy/pasted the <future> file code into the attached one. It's the one
 provided with VS2012 U2. I don't use the community betas.
>
> Note that the problem might be a VS compiler bug that might be fixed in
 the community beta. If someone can test the same code with the community
 beta it would help.


 I wonder if the following constructor is the one that is been used by the
 compiler.


 {{{
 1126 future(const _Mybase& _State)
 1127 : _Mybase(_State, true)
 1128 { // construct from associated asynchronous
 state object
 1129 }
 }}}

 This will clearly be a compiler bug (and indirectly a library bug).

 Could you try adding this public constructor to Boost.Thread to confirm it

 {{{
         BOOST_THREAD_FUTURE(base_type const& b):
           base_type(b.future_)
         {
         }
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8674#comment:6>
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:13 UTC