On 10/19/2010 05:10 AM, Nat Linden wrote:
On Thu, Oct 14, 2010 at 1:17 PM, Bryant Gipson <gipso...@yahoo.com
<mailto:gipso...@yahoo.com>> wrote:

    C++:

    void mySlightlyHelpfulFunction(cppmodule::A &a)
    {
       ...
    }

    Python:
    a = mod.A()
    myModule.mySlightlyHelpfulFunction(a)
         myModule.mySlightlyHelpfulFunction(A)
    did not match C++ signature:
         mySlightlyHelpfulFunction(mod::A {lvalue})


Just a guess, but would declaring it as:

void mySlightlyHelpfulFunction(const cppmodule::A &a)

work better? (Note insertion of "const")

The {lvalue} in the signature output suggests that the problem could be
that Boost.Python is internally constructing a C++ temporary
cppmodule::A value and trying to pass it into mySlightlyHelpfulFunction().


That would help in other, similar, similar cases, but wasn't the problem here.

The OP replied off-line; he was simply linking to the wrong Boost.Python library. Sorry I neglected to pass it on to the list!

Jim

_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

Reply via email to