Modify

Ticket #4417 (closed Bugs: fixed)

Opened 4 years ago

Last modified 4 years ago

boost\interprocess\file_mapping compilation errors

Reported by: anonymous Owned by: igaztanaga
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> ]

Attachments

Change History

comment:1 Changed 4 years ago by anonymous

Solution:

+++ boost/interprocess/detail/move.hpp @@ -355,7 +355,7 @@

#else template <class T> inline typename remove_reference<T>::type&& move(T&& t)

-{ return t; } +{ return static_cast<typename remove_reference<T>::type&&>(t); }

#endif

@@ -968,4 +968,4 @@

INTERPROCESS_NAMESPACE_END } namespace boost {

-#endif #ifndef BOOST_MOVE_HPP +#endif #ifndef BOOST_MOVE_HPP

comment:2 Changed 4 years ago by igaztanaga

  • Milestone changed from Boost 1.44.0 to Boost-1.45.0

Fixed for Boost 1.45 in release branch

comment:3 Changed 4 years ago by igaztanaga

  • Status changed from new to closed
  • Resolution set to fixed
View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.