From 87288a38b59a0b84498af89fa063d6f4b28673d5 Mon Sep 17 00:00:00 2001 From: Eric Niebler Date: Sun, 5 Oct 2008 01:47:33 +0000 Subject: [PATCH] merged from trunk [SVN r49133] --- doc/building.html | 2 +- doc/v2/CallPolicies.html | 2 +- include/boost/python/call.hpp | 6 +++++- include/boost/python/call_method.hpp | 6 +++++- include/boost/python/detail/result.hpp | 6 +++++- include/boost/python/detail/target.hpp | 6 +++++- include/boost/python/object/make_holder.hpp | 6 +++++- include/boost/python/object/pointer_holder.hpp | 6 +++++- include/boost/python/object/value_holder.hpp | 6 +++++- include/boost/python/signature.hpp | 6 +++++- 10 files changed, 42 insertions(+), 10 deletions(-) diff --git a/doc/building.html b/doc/building.html index 9e7e6711..e2c48847 100644 --- a/doc/building.html +++ b/doc/building.html @@ -9,7 +9,7 @@
-

Boost.Python Build and Test HOWTO

+

Boost.Python Build and Test HOWTO

diff --git a/doc/v2/CallPolicies.html b/doc/v2/CallPolicies.html index f22298e3..06384a23 100644 --- a/doc/v2/CallPolicies.html +++ b/doc/v2/CallPolicies.html @@ -137,7 +137,7 @@ P::extract_return_type A model of Metafunction. + "../../../mpl/doc/refmanual/metafunction.html">Metafunction. An MPL unary Metafunction used extract the return type from a given signature. By default it is derived from mpl::front. diff --git a/include/boost/python/call.hpp b/include/boost/python/call.hpp index 9a3d974b..5d2d7d23 100644 --- a/include/boost/python/call.hpp +++ b/include/boost/python/call.hpp @@ -38,7 +38,10 @@ namespace boost { namespace python { # endif // CALL_DWA2002411_HPP -#elif BOOST_PP_ITERATION_DEPTH() == 1 +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, call.hpp) @@ -76,4 +79,5 @@ call(PyObject* callable # undef N +#endif // BOOST_PP_ITERATION_DEPTH() #endif diff --git a/include/boost/python/call_method.hpp b/include/boost/python/call_method.hpp index 0bca0610..410f6682 100644 --- a/include/boost/python/call_method.hpp +++ b/include/boost/python/call_method.hpp @@ -37,7 +37,10 @@ namespace boost { namespace python { # endif // CALL_METHOD_DWA2002411_HPP -#elif BOOST_PP_ITERATION_DEPTH() == 1 +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, call_method.hpp) @@ -76,4 +79,5 @@ call_method(PyObject* self, char const* name # undef N +#endif // BOOST_PP_ITERATION_DEPTH() #endif // BOOST_PP_IS_ITERATING diff --git a/include/boost/python/detail/result.hpp b/include/boost/python/detail/result.hpp index 80e4387f..9b8b4864 100644 --- a/include/boost/python/detail/result.hpp +++ b/include/boost/python/detail/result.hpp @@ -86,7 +86,10 @@ result(X const&, short = 0) { return 0; } # endif // RESULT_DWA2002521_HPP /* --------------- function pointers --------------- */ -#elif BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == BOOST_PYTHON_FUNCTION_POINTER +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == BOOST_PYTHON_FUNCTION_POINTER # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, result.hpp(function pointers)) @@ -128,4 +131,5 @@ boost::type* result(R (T::*)(BOOST_PP_ENUM_PARAMS_Z(1, N, A)) Q, int = 0) # undef N # undef Q +#endif // BOOST_PP_ITERATION_DEPTH() #endif diff --git a/include/boost/python/detail/target.hpp b/include/boost/python/detail/target.hpp index 5079699a..137801bb 100644 --- a/include/boost/python/detail/target.hpp +++ b/include/boost/python/detail/target.hpp @@ -37,7 +37,10 @@ T& (* target(R (T::*)) )() { return 0; } # endif // TARGET_DWA2002521_HPP /* --------------- function pointers --------------- */ -#elif BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == BOOST_PYTHON_FUNCTION_POINTER +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == BOOST_PYTHON_FUNCTION_POINTER # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, target.hpp(function_pointers)) @@ -79,4 +82,5 @@ T& (* target(R (T::*)(BOOST_PP_ENUM_PARAMS_Z(1, N, A)) Q) )() # undef N # undef Q +#endif // BOOST_PP_ITERATION_DEPTH() #endif diff --git a/include/boost/python/object/make_holder.hpp b/include/boost/python/object/make_holder.hpp index 9d5de98d..eb3c603d 100644 --- a/include/boost/python/object/make_holder.hpp +++ b/include/boost/python/object/make_holder.hpp @@ -47,7 +47,10 @@ template struct make_holder; # endif // MAKE_HOLDER_DWA20011215_HPP -#elif BOOST_PP_ITERATION_DEPTH() == 1 +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, make_holder.hpp) @@ -102,4 +105,5 @@ struct make_holder # undef N +#endif // BOOST_PP_ITERATION_DEPTH() #endif diff --git a/include/boost/python/object/pointer_holder.hpp b/include/boost/python/object/pointer_holder.hpp index 9019a185..2dc6dda9 100644 --- a/include/boost/python/object/pointer_holder.hpp +++ b/include/boost/python/object/pointer_holder.hpp @@ -170,7 +170,10 @@ void* pointer_holder_back_reference::holds(type_info dst_t, bool # endif // POINTER_HOLDER_DWA20011215_HPP /* --------------- pointer_holder --------------- */ -#elif BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == 1 +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == 1 # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, pointer_holder.hpp) @@ -212,4 +215,5 @@ void* pointer_holder_back_reference::holds(type_info dst_t, bool # undef N +#endif // BOOST_PP_ITERATION_DEPTH() #endif diff --git a/include/boost/python/object/value_holder.hpp b/include/boost/python/object/value_holder.hpp index e53866a1..f4d452ca 100644 --- a/include/boost/python/object/value_holder.hpp +++ b/include/boost/python/object/value_holder.hpp @@ -117,7 +117,10 @@ void* value_holder_back_reference::holds( // --------------- value_holder --------------- -#elif BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == 1 +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 && BOOST_PP_ITERATION_FLAGS() == 1 # if !(BOOST_WORKAROUND(__MWERKS__, > 0x3100) \ && BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3201))) # line BOOST_PP_LINE(__LINE__, value_holder.hpp(value_holder)) @@ -163,4 +166,5 @@ void* value_holder_back_reference::holds( # undef N +#endif // BOOST_PP_ITERATION_DEPTH() #endif diff --git a/include/boost/python/signature.hpp b/include/boost/python/signature.hpp index c4151814..1bb2b226 100644 --- a/include/boost/python/signature.hpp +++ b/include/boost/python/signature.hpp @@ -113,7 +113,10 @@ struct most_derived # endif // SIGNATURE_JDG20020813_HPP -#elif BOOST_PP_ITERATION_DEPTH() == 1 // defined(BOOST_PP_IS_ITERATING) +// For gcc 4.4 compatability, we must include the +// BOOST_PP_ITERATION_DEPTH test inside an #else clause. +#else // BOOST_PP_IS_ITERATING +#if BOOST_PP_ITERATION_DEPTH() == 1 // defined(BOOST_PP_IS_ITERATING) # define N BOOST_PP_ITERATION() @@ -176,4 +179,5 @@ get_signature( # undef Q # undef N +#endif // BOOST_PP_ITERATION_DEPTH() #endif // !defined(BOOST_PP_IS_ITERATING)