Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2006-07-10 11:51:01


Timo Geusch <timo_at_[hidden]> writes:

> Good afternoon,
> I've so far managed to make decent progress on building RC 1.34's
> Boost.Python on this OS/Compiler combination using jam v1 with the
> patches I submitted earlier.
>
> Unfortunately I now seem to have hit a brick wall in file
> pickle_support.cpp. The offending lines of code are line 57, which
> reads:
>
> static object result(&instance_reduce);
>
> If I replace this line with plain static object result; the file will
> compile, however the above line produces the following error message
> from the compiler:
>
> sunpro-C++-action
> bin/boost/libs/python/build/libboost_python.so/sunpro/debug/pickle_support.o
> "./boost/python/converter/arg_to_python.hpp", line 215: Error: Could not
> find
> boost::python::converter::detail::arg_to_python_base::arg_to_python_base(boost::python::tuple(*)(boost::python::api::object), const boost::python::converter::registration) to initialize base class.
> "./boost/python/object_core.hpp", line 309: Where: While
> instantiating
> "boost::python::api::object_base_initializer<boost::python::tuple(*)(boost::python::api::object)>(boost::python::tuple(*const)(boost::python::api::object)&)".
> "./boost/python/object_core.hpp", line 309: Where: Instantiated from
> non-template code.
> 1 Error(s) detected
>
> I think I'm missing something obvious here but I'm not familiar enough
> with the Boost.Python code to work out what it is.
>
> I'd appreciate if someone who is would be able to have a closer look as
> this is the last file that doesn't build here.

All I can tell you is this:

on line 120 of boost/python/converter/arg_to_python.hpp, there's a
test for is_pointer_to_function<T>. That test is returning false when
it should be true for the given argument, which according to the error
message, is of type

     boost::python::tuple(*)(boost::python::api::object)

The is_pointer test is succeeding, though, which is why we end up in
the ctor of pointer_deep_arg_to_python on line 215. If you can figure
out how to fix is_pointer_to_function for SunPro, it should start
working again.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk