Skip to content

Instantly share code, notes, and snippets.

@kikairoya
Created March 16, 2011 11:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kikairoya/872321 to your computer and use it in GitHub Desktop.
Save kikairoya/872321 to your computer and use it in GitHub Desktop.
diff --git a/boost/range/detail/indirect_functor_invoke_pp.hpp b/boost/range/detail/indirect_functor_invoke_pp.hpp
index 4680e0c..efd5132 100644
--- a/boost/range/detail/indirect_functor_invoke_pp.hpp
+++ b/boost/range/detail/indirect_functor_invoke_pp.hpp
@@ -15,14 +15,14 @@
#define BOOST_RANGE_DETAIL_INDIRECT_FUNCTOR_INVOKE_HELPER(n,arg_seq) \
template <BOOST_PP_ENUM_PARAMS(BOOST_PP_EXPAND(BOOST_PP_SEQ_SIZE(arg_seq)), class A)> \
- typename boost::result_of<indirected_functor_type(BOOST_PP_ENUM_PARAMS(BOOST_PP_EXPAND(BOOST_PP_SEQ_SIZE(arg_seq)), A))>::type \
+ typename boost::result_of<indirected_functor_type(BOOST_PP_SEQ_FOR_EACH_I(BOOST_RANGE_DETAIL_INDIRECT_FUNCTOR_ARG, 0, arg_seq))>::type \
operator()(BOOST_PP_SEQ_FOR_EACH_I(BOOST_RANGE_DETAIL_INDIRECT_FUNCTOR_ARG, 0, arg_seq)) \
{ \
return (*f)(BOOST_PP_ENUM_PARAMS(BOOST_PP_EXPAND(BOOST_PP_SEQ_SIZE(arg_seq)), a)); \
} \
\
template <BOOST_PP_ENUM_PARAMS(BOOST_PP_EXPAND(BOOST_PP_SEQ_SIZE(arg_seq)), class A)> \
- typename boost::result_of<indirected_functor_type(BOOST_PP_ENUM_PARAMS(BOOST_PP_EXPAND(BOOST_PP_SEQ_SIZE(arg_seq)), A))>::type \
+ typename boost::result_of<indirected_functor_type(BOOST_PP_SEQ_FOR_EACH_I(BOOST_RANGE_DETAIL_INDIRECT_FUNCTOR_ARG, 0, arg_seq))>::type \
operator()(BOOST_PP_SEQ_FOR_EACH_I(BOOST_RANGE_DETAIL_INDIRECT_FUNCTOR_ARG, 0, arg_seq)) const \
{ \
return (*f)(BOOST_PP_ENUM_PARAMS(BOOST_PP_EXPAND(BOOST_PP_SEQ_SIZE(arg_seq)), a)); \
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment