
Mathias Gaunard-2 wrote
On 12/01/2011 12:34 PM, Ion GaztaƱaga wrote:
I guess there is no trivial solution for this. Options:
1) Move Boost.Move elements to boost::move:: namespace
I advise against this solution. It would break compatibility for Boost.Move users.
Boost.Thread was using boost::move since a long time as there was no thread namespace. When Boost.Move was introduced in Trunk, Boost.Thread should be adapted to use Boost.Move, but this was not done. Too late.
2) Move Boost.Thread elements to boost::thread namespace
That should be fine. Assuming the move emulation of boost thread is an implementation detail, this doesn't affect users at all.
The problem is that this is part of the interface and not an implementation detail. What I purpose for the short term (1.49) is to let the user to choose the namespace for the move function (by default Boost.Thread will use boost::), and the user could state that it should use boost::thread:: instead.
3) Modify Boost.Thread to make use of Boost.Move
That would be good, but could take more time to do than 2).
There are a lot of uses of move semantics in Boost.Thread and this will surely take some time. I don't know yet if it will be possible to provide both move semantic emulations at once without breaking the interface. I suspect that a version 2 for Boost.Thread seems necessary. Given the number of tickets related to move semantics, it seems that this last option is the long term option. Best, Vicente -- View this message in context: http://boost.2283326.n4.nabble.com/Boost-Thread-and-Boost-Move-collision-tp4... Sent from the Boost - Dev mailing list archive at Nabble.com.