Fwd: Bug#245893: Boost.Python looks broken on debian/arm

hello there, this is the the last important bug debian packages of Boost 1.31.0 have. this is copy of the message i already sent to debian-arm ml and Boost.Python ml with no response. i'm forwarding it here, on boost developers ml, as last chance to settle this out and finally make 1.31.0 reach debian sarge. it may also look like a problem in MPL. cheers domenico ----- Forwarded message from Domenico Andreoli <cavok@debian.org> ----- Date: Mon, 26 Apr 2004 23:46:10 +0200 From: Domenico Andreoli <cavok@debian.org> To: c++-sig@python.org, debian-arm@lists.debian.org Cc: 245893@bugs.debian.org Subject: Bug#245893: Boost.Python looks broken on debian/arm hi all, debian arm autobuilder fails to build the only two applications in main archive which make use Boost.Python, they are kdeedu [0] and regina-normal [1]. i'm trying to understand where the chain of errors reported in debian bug #245893 [2] really starts, problem is that i still have no simple program to reproduce this bug and not arm machine to play with. i'm asking to debian-arm mailing list some help reproducing the bug and to Boost.Python mailing list some help understanding the outcome. here follows what i think is the culprit error... /usr/include/boost/python/detail/def_helper.hpp: At global scope: /usr/include/boost/python/detail/def_helper.hpp: In instantiation of `boost::mpl::apply1<boost::python::detail::is_reference_to_member_function_pointer<boost::mpl::_1>, const char* const&>': /usr/include/boost/python/detail/def_helper.hpp:78: instantiated from `boost::python::detail::tuple_extract_base_select<boost::tuples::tuple<const char* const&, const boost::python::detail::not_specified&, const boost::python::detail::not_specified&, const boost::python::detail::not_specified&, boost::python::default_call_policies, boost::python::detail::keywords<0>, const char*, void (boost::python::detail::not_specified::*)(), boost::tuples::null_type, boost::tuples::null_type>, boost::python::detail::is_reference_to_member_function_pointer<boost::mpl::_1> >' /usr/include/boost/python/detail/def_helper.hpp:173: instantiated from `boost::python::detail::tuple_extract<boost::tuples::tuple<const char* const&, const boost::python::detail::not_specified&, const boost::python::detail::not_specified&, const boost::python::detail::not_specified&, boost::python::default_call_policies, boost::python::detail::keywords<0>, const char*, void (boost::python::detail::not_specified::*)(), boost::tuples::null_type, boost::tuples::null_type>, boost::python::detail::is_reference_to_member_function_pointer<boost::mpl::_1> >' /usr/include/boost/python/detail/def_helper.hpp:173: instantiated from `boost::python::detail::default_implementation_extract<boost::tuples::tuple<const char* const&, const boost::python::detail::not_specified&, const boost::python::detail::not_specified&, const boost::python::detail::not_specified&, boost::python::default_call_policies, boost::python::detail::keywords<0>, const char*, void (boost::python::detail::not_specified::*)(), boost::tuples::null_type, boost::tuples::null_type> >' /usr/include/boost/python/detail/def_helper.hpp:173: instantiated from `boost::python::detail::def_helper<const char*, boost::python::detail::not_specified, boost::python::detail::not_specified, boost::python::detail::not_specified>' /usr/include/boost/python/class.hpp:304: instantiated from `boost::python::class_<T, X1, X2, X3>& boost::python::class_<T, X1, X2, X3>::def(const char*, F) [with F = void (PythonOutputStream::*)(), T = PythonOutputStream, X1 = boost::noncopyable, X2 = boost::python::detail::not_specified, X3 = boost::python::detail::not_specified]' pythoninterpreter.cpp:89: instantiated from here /usr/include/boost/python/detail/def_helper.hpp:78: error: no class template named `apply' in `struct boost::python::detail::is_reference_to_member_function_pointer<boost::mpl::_1> ' any hint? thanks domenico [0] http://buildd.debian.org/fetch.php?&pkg=kdeedu&ver=4%3A3.2.2-1&arch=arm&stamp=1082667643&file=log&as=raw [1] http://buildd.debian.org/fetch.php?&pkg=regina-normal&ver=4.1.1-1&arch=arm&stamp=1082790357&file=log&as=raw [2] http://bugs.debian.org/245893 ----- End forwarded message ----- -----[ Domenico Andreoli, aka cavok --[ http://people.debian.org/~cavok/gpgkey.asc ---[ 3A0F 2F80 F79C 678A 8936 4FEE 0677 9033 A20E BC50

Domenico Andreoli <cavok@tiscali.it> writes:
hello there,
this is the the last important bug debian packages of Boost 1.31.0 have.
this is copy of the message i already sent to debian-arm ml and Boost.Python ml with no response.
Sorry; been swamped.
i'm forwarding it here, on boost developers ml, as last chance to settle this out and finally make 1.31.0 reach debian sarge.
What compiler are you using? Can you post a small reproducible test case for this issue?
it may also look like a problem in MPL.
Yes, as far as I can tell you may be right about that. template <class Tuple, class Predicate> struct tuple_extract : tuple_extract_base_select< Tuple , typename mpl::lambda<Predicate>::type ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >::type { }; Is supposed to transform the Predicate, boost::python::detail::is_reference_to_member_function_pointer<boost::mpl::_1> into a metafunction class (something with a nested ::apply template) if it is not already such a beast. Instead it seems to be returning the Predicate intact. I can think of some possible workarounds (in the Boost.Python code), but without a reproducible case I'd be loathe to vouch for any of them.
[0] http://buildd.debian.org/fetch.php?&pkg=kdeedu&ver=4%3A3.2.2-1&arch=arm&stamp=1082667643&file=log&as=raw [1] http://buildd.debian.org/fetch.php?&pkg=regina-normal&ver=4.1.1-1&arch=arm&stamp=1082790357&file=log&as=raw [2] http://bugs.debian.org/245893
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com

On Tue, May 25, 2004 at 10:01:09AM -0400, David Abrahams wrote:
Domenico Andreoli <cavok@tiscali.it> writes:
i'm forwarding it here, on boost developers ml, as last chance to settle this out and finally make 1.31.0 reach debian sarge.
What compiler are you using? Can you post a small reproducible test case for this issue?
gcc 3.3.3 on debian unstable.
it may also look like a problem in MPL.
Yes, as far as I can tell you may be right about that.
template <class Tuple, class Predicate> struct tuple_extract : tuple_extract_base_select< Tuple , typename mpl::lambda<Predicate>::type ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >::type { };
Is supposed to transform the Predicate, boost::python::detail::is_reference_to_member_function_pointer<boost::mpl::_1> into a metafunction class (something with a nested ::apply template) if it is not already such a beast. Instead it seems to be returning the Predicate intact.
I can think of some possible workarounds (in the Boost.Python code), but without a reproducible case I'd be loathe to vouch for any of them.
debian arm machine is currently out of luck, i've never been able to reproduce and size down the test case :( i'll post it as soon as i have back the arm machine. cheers domenico -----[ Domenico Andreoli, aka cavok --[ http://people.debian.org/~cavok/gpgkey.asc ---[ 3A0F 2F80 F79C 678A 8936 4FEE 0677 9033 A20E BC50
participants (2)
-
David Abrahams
-
Domenico Andreoli