Opened 12 years ago
Closed 12 years ago
#4417 closed Bugs (fixed)
boost\interprocess\file_mapping compilation errors
Reported by: | anonymous | Owned by: | Ion Gaztañaga |
---|---|---|---|
Milestone: | Boost 1.45.0 | Component: | interprocess |
Version: | Boost Development Trunk | Severity: | Problem |
Keywords: | vc2010 | Cc: |
Description
Compilation errors with Visual Studio 2010:
...\ext_libs\boost\boost\interprocess\detail\move.hpp(358): error C2440: 'return' : cannot convert from 'boost::interprocess::file_mapping' to 'boost::interprocess::file_mapping &&' 1> You cannot bind an lvalue to an rvalue reference 1> ...\ext_libs\boost\boost\interprocess\file_mapping.hpp(62) : see reference to function template instantiation 'boost::interprocess::file_mapping &&boost::interprocess::move<boost::interprocess::file_mapping&>(T)' being compiled 1> with 1> [ 1> T=boost::interprocess::file_mapping & 1> ] 1>...\ext_libs\boost\boost\interprocess\detail\move.hpp(358): error C2440: 'return' : cannot convert from 'boost::interprocess::mapped_region' to 'boost::interprocess::mapped_region &&' 1> You cannot bind an lvalue to an rvalue reference 1> ...\ext_libs\boost\boost\interprocess\mapped_region.hpp(159) : see reference to function template instantiation 'boost::interprocess::mapped_region &&boost::interprocess::move<boost::interprocess::mapped_region&>(T)' being compiled 1> with 1> [ 1> T=boost::interprocess::mapped_region & 1> ] 2>...\filesystem\filesystem.h(39): warning C4018: '<' : signed/unsigned mismatch 2>...\filesystem\filesystem.h(52): warning C4018: '<' : signed/unsigned mismatch 2>...\ext_libs\boost\boost\interprocess\detail\move.hpp(358): error C2440: 'return' : cannot convert from 'boost::interprocess::file_mapping' to 'boost::interprocess::file_mapping &&' 2> You cannot bind an lvalue to an rvalue reference 2> ...\ext_libs\boost\boost\interprocess\file_mapping.hpp(62) : see reference to function template instantiation 'boost::interprocess::file_mapping &&boost::interprocess::move<boost::interprocess::file_mapping&>(T)' being compiled 2> with 2> [ 2> T=boost::interprocess::file_mapping & 2> ] 2>...\ext_libs\boost\boost\interprocess\detail\move.hpp(358): error C2440: 'return' : cannot convert from 'boost::interprocess::mapped_region' to 'boost::interprocess::mapped_region &&' 2> You cannot bind an lvalue to an rvalue reference 2> ...\ext_libs\boost\boost\interprocess\mapped_region.hpp(159) : see reference to function template instantiation 'boost::interprocess::mapped_region &&boost::interprocess::move<boost::interprocess::mapped_region&>(T)' being compiled 2> with 2> [ 2> T=boost::interprocess::mapped_region & 2> ]
Change History (3)
comment:1 by , 12 years ago
comment:2 by , 12 years ago
Milestone: | Boost 1.44.0 → Boost-1.45.0 |
---|
Fixed for Boost 1.45 in release branch
comment:3 by , 12 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Solution:
+++ boost/interprocess/detail/move.hpp @@ -355,7 +355,7 @@
-{ return t; } +{ return static_cast<typename remove_reference<T>::type&&>(t); }
@@ -968,4 +968,4 @@
-#endif #ifndef BOOST_MOVE_HPP +#endif #ifndef BOOST_MOVE_HPP