Re: [Boost-bugs] [Boost C++ Libraries] #6141: Compilation error when boost.thread and boost.move are used together

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #6141: Compilation error when boost.thread and boost.move are used together
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2012-01-02 02:47:10


#6141: Compilation error when boost.thread and boost.move are used together
---------------------------+------------------------------------------------
  Reporter: admin@… | Owner: anthonyw
      Type: Bugs | Status: new
 Milestone: Boost 1.49.0 | Component: thread
   Version: Boost 1.48.0 | Severity: Showstopper
Resolution: | Keywords: move
---------------------------+------------------------------------------------

Comment (by viboes):

 The following patch in boost/move/move.hpp allows to avoid the issue
 provided Boost.Thread adds the needed specializations for
 has_move_emulation_enabled_aux.


 {{{
  svn diff
 Index: move.hpp
 ===================================================================
 --- move.hpp (revision 75884)
 +++ move.hpp (working copy)
 @@ -280,6 +280,10 @@
        : BOOST_MOVE_BOOST_NS::integral_constant<bool, false>
     {};

 + template <class T>
 + struct has_move_emulation_enabled_aux
 + : has_move_emulation_enabled<T> {};
 +
     template <class T>
     struct has_nothrow_move
        : public BOOST_MOVE_BOOST_NS::integral_constant<bool, false>
 @@ -290,8 +294,9 @@
     // move()
     //
 //////////////////////////////////////////////////////////////////////////////
 +
     template <class T>
 - typename
 BOOST_MOVE_BOOST_NS::disable_if<has_move_emulation_enabled<T>, T&>::type
 move(T& x)
 + typename
 BOOST_MOVE_BOOST_NS::disable_if<has_move_emulation_enabled_aux<T>,
 T&>::type move(T& x)
     {
        return x;
     }
 }}}


 Waiting for Ion response to see if he accepts this patch.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/6141#comment:10>
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:08 UTC