Le 17/01/13 03:34, Jeffrey Lee Hellrung, Jr. a écrit :
On Wed, Jan 16, 2013 at 10:06 AM, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
Le 16/01/13 18:38, Jeffrey Lee Hellrung, Jr. a écrit :
On Wed, Jan 16, 2013 at 1:27 AM, Igor R <boost.lists@gmail.com> wrote:
>> I forgot to mention, but the above code compiles under MSVC10 and iOS
>> gcc toolchain...
>
>
> ...which have rvalue references?

Yes, you're right, it turns out that while the above compilers have
c++11 enabled by default, in ndk gcc4.7 it's disabled by default...

One suggestion: lobby for Boost.Thread to adopt Boost.Move rather than its own internal move emulation machinery (or, better yet, supply a patch!), and additionally use the Boost.Container data structures, which are Boost.Move-aware AFAIK.


Boost.Thread make use of Boost.Move when BOOST_THREAD_USES_MOVE is defined and can be used with Boost.Container or any standard c++ container. The problem is that it doesn't provides both emulations at once.

Remind me what the limitation of Boost.Move's emulation are wrt Boost.Thread, and how Boost.Thread's internal emulation avoids that limitation?

You misunderstood my  concern. Boost.Move has no specific limitations with respect to Boost.Thread. Boost.Thread internal(old) emulation has more troubles than the one provided by Boost.Move.

I forgot to tell that BOOST_THREAD_USES_MOVE is defined by default when BOOST_THREAD_VERSION >= 3. As the default version has not been changed to version 3 in 1.53 as planned BOOST_THREAD_USES_MOVE is still not defined. 
I'm all for defining BOOST_THREAD_USES_MOVE even for version 2, but this will changes the interface.

Comments of those that were against moving to version 3.

Best,
Vicente