diff --git a/hpx/util/bind_action.hpp b/hpx/util/bind_action.hpp index 3d3d185c0e3b..5286bb00483b 100644 --- a/hpx/util/bind_action.hpp +++ b/hpx/util/bind_action.hpp @@ -320,7 +320,7 @@ namespace hpx { namespace util hpx::applier::apply( \ hpx::util::detail::eval(env, arg0) \ BOOST_PP_COMMA_IF(BOOST_PP_DEC(NN)) \ - BOOST_PP_ENUM_SHIFTED(NN, HPX_UTIL_BIND_EVAL, _)).get(); \ + BOOST_PP_ENUM_SHIFTED(NN, HPX_UTIL_BIND_EVAL, _)); \ } \ template \ void operator()(BOOST_PP_ENUM(N, HPX_UTIL_BIND_FWD_REF_PARAMS, _)) const \ @@ -334,7 +334,7 @@ namespace hpx { namespace util hpx::applier::apply( \ hpx::util::detail::eval(env, arg0) \ BOOST_PP_COMMA_IF(BOOST_PP_DEC(NN)) \ - BOOST_PP_ENUM_SHIFTED(NN, HPX_UTIL_BIND_EVAL, _)).get(); \ + BOOST_PP_ENUM_SHIFTED(NN, HPX_UTIL_BIND_EVAL, _)); \ } \ /**/ BOOST_PP_REPEAT_FROM_TO( diff --git a/src/hpx_init.cpp b/src/hpx_init.cpp index bf89b91e9255..ced269bc668d 100644 --- a/src/hpx_init.cpp +++ b/src/hpx_init.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #include #include @@ -61,44 +62,6 @@ HPX_PLAIN_ACTION_EX(hpx::detail::list_component_type, list_component_type_action namespace hpx { namespace detail { - /////////////////////////////////////////////////////////////////////////// - // Functional wrapper for any action2 - template - struct action_wrapper2 - { - typedef typename boost::add_const< - typename Action::arguments_type - >::type arguments_type; - - typedef typename - boost::fusion::result_of::at_c::type - arg1_type; - typedef typename - boost::fusion::result_of::at_c::type - arg2_type; - - // default constructor is required for serialization - action_wrapper2() - {} - - action_wrapper2(naming::id_type const& target) - : target_(target) - {} - - void operator() (arg1_type s, arg2_type t) const - { - applier::apply(target_, s, t); - } - - template - void serialize(Archive& ar, unsigned /*version*/) - { - ar & target_; - } - - naming::id_type target_; - }; - /////////////////////////////////////////////////////////////////////////// // print string on the console void console_print(std::string const& name) @@ -195,9 +158,12 @@ namespace hpx { namespace detail print(std::string("List of all registered symbolic names:")); print(std::string(78, '-')); + using hpx::util::placeholders::_1; + using hpx::util::placeholders::_2; + naming::id_type console(agas::get_console_locality()); naming::get_agas_client().iterate_ids( - action_wrapper2(console)); + hpx::util::bind(console, _1, _2)); } /////////////////////////////////////////////////////////////////////////// @@ -213,9 +179,12 @@ namespace hpx { namespace detail print(std::string("List of all registered component types:")); print(std::string(78, '-')); + using hpx::util::placeholders::_1; + using hpx::util::placeholders::_2; + naming::id_type console(agas::get_console_locality()); naming::get_agas_client().iterate_types( - action_wrapper2(console)); + hpx::util::bind(console, _1, _2)); } ///////////////////////////////////////////////////////////////////////////