#include #include BOOST_PARAMETER_NAME(my_param) template struct s {}; struct bogus { typedef void boost_parameter_use_template_call; template struct result: public s {}; template typename result::type operator()(Arg) const {return 0;} }; template void f(const ArgPack& ap) { const char* cs = ap[_my_param || bogus()]; } int main(int, char**) { f(_my_param = "param"); return 0; }