diff --git a/include/boost/python/call.hpp b/include/boost/python/call.hpp index 6ce027ef..4edceee3 100644 --- a/include/boost/python/call.hpp +++ b/include/boost/python/call.hpp @@ -54,8 +54,8 @@ call(PyObject* callable return converter( PyEval_CallFunction( callable - , const_cast("(" BOOST_PP_REPEAT(N, BOOST_PYTHON_FIXED, "O") ")") - BOOST_PP_REPEAT(N, BOOST_PYTHON_FAST_ARG_TO_PYTHON_GET, nil) + , const_cast("(" BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_FIXED, "O") ")") + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_FAST_ARG_TO_PYTHON_GET, nil) )); } diff --git a/include/boost/python/call_method.hpp b/include/boost/python/call_method.hpp index 7c8f0e90..e8917c22 100644 --- a/include/boost/python/call_method.hpp +++ b/include/boost/python/call_method.hpp @@ -54,8 +54,8 @@ call_method(PyObject* self, char const* name PyEval_CallMethod( self , const_cast(name) - , const_cast("(" BOOST_PP_REPEAT(N, BOOST_PYTHON_FIXED, "O") ")") - BOOST_PP_REPEAT(N, BOOST_PYTHON_FAST_ARG_TO_PYTHON_GET, nil) + , const_cast("(" BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_FIXED, "O") ")") + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_FAST_ARG_TO_PYTHON_GET, nil) )); } diff --git a/include/boost/python/detail/defaults_gen.hpp b/include/boost/python/detail/defaults_gen.hpp index b1ed0125..3198baa2 100644 --- a/include/boost/python/detail/defaults_gen.hpp +++ b/include/boost/python/detail/defaults_gen.hpp @@ -41,21 +41,21 @@ struct func_stubs_base {}; #define BPL_IMPL_TYPEDEF_GEN(z, INDEX, DATA) \ typedef typename boost::python::detail::type_at \ < \ - BOOST_PP_ADD(INDEX, DATA), \ + BOOST_PP_ADD_D(1, INDEX, DATA), \ SigT \ >::type BOOST_PP_CAT(T, INDEX); \ #define BPL_IMPL_FUNC_WRAPPER_GEN(z, index, DATA) \ static RT BOOST_PP_CAT(func_, index) ( \ BOOST_PYTHON_BINARY_ENUM( \ - BOOST_PP_ADD(BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), T, arg) \ + BOOST_PP_ADD_D(1, BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), T, arg) \ ) \ { \ BOOST_PP_TUPLE_ELEM(3, 2, DATA) \ BOOST_PP_TUPLE_ELEM(3, 0, DATA) \ ( \ BOOST_PP_ENUM_PARAMS( \ - BOOST_PP_ADD(BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), \ + BOOST_PP_ADD_D(1, BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), \ arg \ ) \ ); \ @@ -83,7 +83,7 @@ struct func_stubs_base {}; ( \ BOOST_PP_INC(N_DFLTS), \ BPL_IMPL_FUNC_WRAPPER_GEN, \ - (FNAME, BOOST_PP_SUB(N_ARGS, N_DFLTS), RETURN) \ + (FNAME, BOOST_PP_SUB_D(1, N_ARGS, N_DFLTS), RETURN) \ ) \ }; \ }; \ @@ -92,14 +92,14 @@ struct func_stubs_base {}; #define BPL_IMPL_MEM_FUNC_WRAPPER_GEN(z, index, DATA) \ static RT BOOST_PP_CAT(func_, index) ( \ ClassT& obj BOOST_PP_COMMA_IF( \ - BOOST_PP_ADD(BOOST_PP_TUPLE_ELEM(3, 1, DATA), index)) \ + BOOST_PP_ADD_D(1, BOOST_PP_TUPLE_ELEM(3, 1, DATA), index)) \ BOOST_PYTHON_BINARY_ENUM( \ - BOOST_PP_ADD(BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), T, arg) \ + BOOST_PP_ADD_D(1, BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), T, arg) \ ) \ { \ BOOST_PP_TUPLE_ELEM(3, 2, DATA) obj.BOOST_PP_TUPLE_ELEM(3, 0, DATA)( \ BOOST_PP_ENUM_PARAMS( \ - BOOST_PP_ADD(BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), arg \ + BOOST_PP_ADD_D(1, BOOST_PP_TUPLE_ELEM(3, 1, DATA), index), arg \ ) \ ); \ } @@ -127,7 +127,7 @@ struct func_stubs_base {}; ( \ BOOST_PP_INC(N_DFLTS), \ BPL_IMPL_MEM_FUNC_WRAPPER_GEN, \ - (FNAME, BOOST_PP_SUB(N_ARGS, N_DFLTS), RETURN) \ + (FNAME, BOOST_PP_SUB_D(1, N_ARGS, N_DFLTS), RETURN) \ ) \ }; \ }; @@ -265,7 +265,7 @@ struct func_stubs_base {}; FNAME, \ GENERATOR_NAME, \ MAX_ARGS, \ - BOOST_PP_SUB(MAX_ARGS, MIN_ARGS) \ + BOOST_PP_SUB_D(1, MAX_ARGS, MIN_ARGS) \ ) #define BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(GENERATOR_NAME, FNAME, MIN_ARGS, MAX_ARGS) \ @@ -274,7 +274,7 @@ struct func_stubs_base {}; FNAME, \ GENERATOR_NAME, \ MAX_ARGS, \ - BOOST_PP_SUB(MAX_ARGS, MIN_ARGS) \ + BOOST_PP_SUB_D(1, MAX_ARGS, MIN_ARGS) \ ) // deprecated macro names (to be removed) diff --git a/include/boost/python/detail/make_tuple.hpp b/include/boost/python/detail/make_tuple.hpp index 41fcaa37..07cd9903 100644 --- a/include/boost/python/detail/make_tuple.hpp +++ b/include/boost/python/detail/make_tuple.hpp @@ -22,7 +22,7 @@ make_tuple(BOOST_PYTHON_BINARY_ENUM(N, A, const& a)) { tuple result((detail::new_reference)::PyTuple_New(N)); - BOOST_PP_REPEAT(N, BOOST_PYTHON_MAKE_TUPLE_ARG, _) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_MAKE_TUPLE_ARG, _) return result; } diff --git a/include/boost/python/detail/returning.hpp b/include/boost/python/detail/returning.hpp index 495a8564..9ab87c43 100644 --- a/include/boost/python/detail/returning.hpp +++ b/include/boost/python/detail/returning.hpp @@ -96,7 +96,7 @@ struct returning , PyObject*, P const* policies) { // check that each of the arguments is convertible - BOOST_PP_REPEAT(N, BOOST_PYTHON_CHECK_CONVERSION, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CHECK_CONVERSION, nil) // find the result converter typedef typename P::result_converter result_converter; @@ -104,7 +104,7 @@ struct returning if (!cr.convertible() || !policies->precall(args_)) return 0; PyObject* result = cr( - (*pf)(BOOST_PP_REPEAT(N, BOOST_PYTHON_CALL_ARGS, nil)) + (*pf)(BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CALL_ARGS, nil)) ); return policies->postcall(args_, result); } @@ -117,11 +117,11 @@ struct returning , PyObject*, P const* policies) { // check that each of the arguments is convertible - BOOST_PP_REPEAT(N, BOOST_PYTHON_CHECK_CONVERSION, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CHECK_CONVERSION, nil) if (!policies->precall(args_)) return 0; - (*pf)(BOOST_PP_REPEAT(N, BOOST_PYTHON_CALL_ARGS, nil)); + (*pf)(BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CALL_ARGS, nil)); return policies->postcall(args_, detail::none()); } # endif // returning void / non-void @@ -168,7 +168,7 @@ struct returning return 0; // unroll a loop for the rest of them - BOOST_PP_REPEAT(N, BOOST_PYTHON_CHECK_CONVERSION, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CHECK_CONVERSION, nil) // find the result converter typedef typename P::result_converter result_converter; @@ -177,7 +177,7 @@ struct returning return 0; PyObject* result = cr( ((ct(PyTuple_GET_ITEM(args_, 0))).*pmf)( - BOOST_PP_REPEAT(N, BOOST_PYTHON_CALL_ARGS, nil)) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CALL_ARGS, nil)) ); return policies->postcall(args_, result); } @@ -196,13 +196,13 @@ struct returning return 0; // unroll a loop for the rest of them - BOOST_PP_REPEAT(N, BOOST_PYTHON_CHECK_CONVERSION, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CHECK_CONVERSION, nil) if (!policies->precall(args_)) return 0; ((ct(PyTuple_GET_ITEM(args_, 0))).*pmf)( - BOOST_PP_REPEAT(N, BOOST_PYTHON_CALL_ARGS, nil)); + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_CALL_ARGS, nil)); return policies->postcall(args_, detail::none()); } # endif diff --git a/include/boost/python/init.hpp b/include/boost/python/init.hpp index 03625a1b..567e480a 100644 --- a/include/boost/python/init.hpp +++ b/include/boost/python/init.hpp @@ -310,8 +310,8 @@ template struct init : detail::check_init_params { typedef boost::mpl::type_list l0; - BOOST_PP_REPEAT - (BOOST_PP_DEC(BOOST_PYTHON_MAX_ARITY), BOOST_PYTHON_APPEND_TO_INIT, 0) + BOOST_PP_REPEAT_1ST( + BOOST_PP_DEC(BOOST_PYTHON_MAX_ARITY), BOOST_PYTHON_APPEND_TO_INIT, 0) typedef BOOST_PP_CAT(l, BOOST_PP_DEC(BOOST_PYTHON_MAX_ARITY)) sequence; diff --git a/include/boost/python/object/make_holder.hpp b/include/boost/python/object/make_holder.hpp index 429704a3..3073e83b 100644 --- a/include/boost/python/object/make_holder.hpp +++ b/include/boost/python/object/make_holder.hpp @@ -56,7 +56,7 @@ struct make_holder template struct apply { - BOOST_PP_REPEAT(N, BOOST_PYTHON_FORWARD_ARG, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_FORWARD_ARG, nil) static void execute( PyObject* p BOOST_PP_COMMA_IF(N) BOOST_PYTHON_BINARY_ENUM(N, t, a)) @@ -66,7 +66,7 @@ struct make_holder void* memory = Holder::allocate(p, offsetof(instance_t, storage), sizeof(Holder)); try { (new (memory) Holder( - p BOOST_PP_REPEAT(N, BOOST_PYTHON_DO_FORWARD_ARG, nil)))->install(p); + p BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_DO_FORWARD_ARG, nil)))->install(p); } catch(...) { Holder::deallocate(p, memory); diff --git a/include/boost/python/object/pointer_holder.hpp b/include/boost/python/object/pointer_holder.hpp index 9ead5d94..1fe20ef3 100644 --- a/include/boost/python/object/pointer_holder.hpp +++ b/include/boost/python/object/pointer_holder.hpp @@ -131,7 +131,7 @@ void* pointer_holder_back_reference::holds(type_info dst_t) # endif pointer_holder(PyObject* BOOST_PP_COMMA_IF(N) BOOST_PYTHON_BINARY_ENUM(N, A, a)) : m_p(new Value( - BOOST_PP_REPEAT(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) )) {} @@ -149,7 +149,7 @@ void* pointer_holder_back_reference::holds(type_info dst_t) pointer_holder_back_reference( PyObject* p BOOST_PP_COMMA_IF(N) BOOST_PYTHON_BINARY_ENUM(N, A, a)) : m_p(new held_type( - p BOOST_PP_COMMA_IF(N) BOOST_PP_REPEAT(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) + p BOOST_PP_COMMA_IF(N) BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) )) {} diff --git a/include/boost/python/object/value_holder.hpp b/include/boost/python/object/value_holder.hpp index ea751edc..d40d058d 100644 --- a/include/boost/python/object/value_holder.hpp +++ b/include/boost/python/object/value_holder.hpp @@ -101,7 +101,7 @@ void* value_holder_back_reference::holds( value_holder( PyObject* BOOST_PP_COMMA_IF(N) BOOST_PYTHON_BINARY_ENUM(N, A, a)) : m_held( - BOOST_PP_REPEAT(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) ) {} @@ -121,7 +121,7 @@ void* value_holder_back_reference::holds( PyObject* p BOOST_PP_COMMA_IF(N) BOOST_PYTHON_BINARY_ENUM(N, A, a)) : m_held( p BOOST_PP_COMMA_IF(N) - BOOST_PP_REPEAT(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) + BOOST_PP_REPEAT_1ST(N, BOOST_PYTHON_UNFORWARD_LOCAL, nil) ) { }