Problem with tag_function

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Problem with tag_function

Gabriel Konat
I'm trying to use tag_function and boost::bind to fill in a default
parameter for a member function without using a wrapper function. This
work fine (compiles and runs) with the following code:

Luabind define: .def( "SetScale", tag_function<void(Visual&, const
Ogre::Vector3&)>( boost::bind( &Visual::setScale, _1, _2,
(RakNet::RPC3*)0 ) ) )
Function signature: void setScale( const Ogre::Vector3& rScale,
RakNet::RPC3* pRPC3 )

But when I try to do the same using another function I get a lot of errors.

Luabind define: .def( "SetPositionOffset", tag_function<void(Visual&,
const Ogre::Vector3&, const std::string&)>( boost::bind(
&Visual::setPositionOffset, _1, _2, _3, (RakNet::RPC3*)0 ) ) )
Function signature: void setPositionOffset( const Ogre::Vector3&
rOffset, const std::string& rEntityName, RakNet::RPC3* pRPC3 )

The main error I get is:
: error C2440: 'argument' : cannot convert from 'const
MultiVerse::Server::Visual *' to 'MultiVerse::Server::Visual *const '
The rest of the errors can be found here:

I've tried a lot of things to fix this but I can't get it to compile
or run with the second function. I'm using luabind 0.8.1 and Visual
Studio 2008 SP1.
Does anyone know how to get this working?

Gabriel Konat

This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers 
luabind-user mailing list
[hidden email]