id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 4521,Error using boost::move on packaged_task (MSVC 10),ZenJu,viboes,"Hi, the example code on futures is broken on MSVC 10 http://www.boost.org/doc/libs/1_43_0/doc/html/thread/synchronization.html#thread.synchronization.futures {{{ int calculate_the_answer_to_life_the_universe_and_everything() { return 42; } boost::packaged_task pt(calculate_the_answer_to_life_the_universe_and_everything); boost::unique_future fi=pt.get_future(); boost::thread task(boost::move(pt)); // launch task on a thread }}} However it works if BOOST_NO_RVALUE_REFERENCES is defined. Reproducible on v1.43 and 1.44 beta1 Error: {{{ 1>shared\check_exist.cpp(16): error C2665: 'boost::move' : none of the 2 overloads could convert all the argument types 1> C:\Program Files\C++\Boost\boost/thread/detail/thread.hpp(359): could be 'boost::thread &&boost::move(boost::thread &)' 1> C:\Program Files\C++\Boost\boost/thread/detail/thread.hpp(363): or 'boost::thread &&boost::move(boost::thread &&)' }}} Regards, ZenJu ",Bugs,closed,Boost 1.50.0,thread,Boost 1.44.0,Showstopper,fixed,move,viboes