
----- Original Message -----
From: Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> To: boost@lists.boost.org Cc: Sent: Monday, September 24, 2012 3:01 PM Subject: Re: [boost] [fusion][tuple] Is there a plan to have a C++11 compliant and portable tuple library on Boost?
Le 24/09/12 00:42, Joel de Guzman a écrit :
On 9/23/12 10:41 PM, Vicente J. Botet Escriba wrote:
Hi,
In order to implement some features in Boost.thread I need a tuple that supports move semantics for its arguments. I see that there is an effort to provide move semantics when rvalue references are supported by the compiler.
Is there a plan to have a C++11 compliant tuple library on Boost that uses the Boost.Move library on compilers that don't support rvalue references?
I am not sure about Boost.tuple, but fusion has already started C++11 development. Right now, we have 2 containers with move semantics: vector and deque. I am incrementally adding more support. I'd welcome any volunteers.
I'm seeing that some libraries are providing move semantics in their interfaces without using Boost.Move and provide them only for C++11 compilers. Another example is the recent commit on Boost.Function. Another will be the work I'm doing in Boost.Thread, as I prefer to provide more features when the compiler/library helps me.
I find that unfortunate, as the features provided will depend on the compiler, but if the basic building blocks in Boost don't provide move semantic for c++98 compilers using Boost.Move, I don't find a better alternative.
The problem with using Boost.Move in older libraries is it can unexpectingly break user code that currently compiles.