test.cpp C:\local\boost_1_71_0_b1\boost/parameter/aux_/arg_list.hpp(312): error C2664: 'boost::parameter::aux::tagged_argument_list_of_1>::tagged_argument_list_of_1(const boost::parameter::aux::tagged_argument_list_of_1> &)': cannot convert argument 1 from 'const A1' to 'const double &' with [ Keyword=boost::accumulators::tag::sample ] and [ A1=boost::parameter::aux::tagged_argument_list_of_1> ] C:\local\boost_1_71_0_b1\boost/parameter/aux_/arg_list.hpp(313): note: Reason: cannot convert from 'const A1' to 'Arg' with [ A1=boost::parameter::aux::tagged_argument_list_of_1> ] and [ Arg=const double ] C:\local\boost_1_71_0_b1\boost/parameter/aux_/arg_list.hpp(312): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called C:\local\boost_1_71_0_b1\boost/parameter/aux_/arg_list.hpp(1082): note: see reference to function template instantiation 'boost::parameter::aux::arg_list>,boost::parameter::aux::arg_list,double>>>,boost::parameter::aux::arg_list_cons<>::type,std::integral_constant>,std::integral_constant>::arg_list,double>&>(boost::parameter::aux::value_type_is_not_void,const boost::parameter::aux::tagged_argument_list_of_1>&,const double&,boost::accumulators::accumulator_set,double> &)' being compiled with [ Keyword=boost::accumulators::tag::sample, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double ] C:\local\boost_1_71_0_b1\boost/parameter/aux_/arg_list.hpp(1081): note: see reference to function template instantiation 'boost::parameter::aux::arg_list>,boost::parameter::aux::arg_list,double>>>,boost::parameter::aux::arg_list_cons<>::type,std::integral_constant>,std::integral_constant>::arg_list,double>&>(boost::parameter::aux::value_type_is_not_void,const boost::parameter::aux::tagged_argument_list_of_1>&,const double&,boost::accumulators::accumulator_set,double> &)' being compiled with [ Keyword=boost::accumulators::tag::sample, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(62): note: see reference to function template instantiation 'boost::parameter::aux::flat_like_arg_list,boost::parameter::aux::flat_like_arg_tuple,double>>>,EmitsErrors>>::flat_like_arg_list,double>&>(boost::parameter::aux::value_type_is_not_void &&,const A1 &,const A0 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ TaggedArg=boost::parameter::aux::tagged_argument_list_of_1>, EmitsErrors=boost::mp11::mp_true, Keyword=boost::accumulators::tag::accumulator, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(43): note: see reference to function template instantiation 'boost::parameter::aux::flat_like_arg_list,boost::parameter::aux::flat_like_arg_tuple,double>>>,EmitsErrors>>::flat_like_arg_list,double>&>(boost::parameter::aux::value_type_is_not_void &&,const A1 &,const A0 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ TaggedArg=boost::parameter::aux::tagged_argument_list_of_1>, EmitsErrors=boost::mp11::mp_true, Keyword=boost::accumulators::tag::accumulator, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(78): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse,double>&>(const A1 &,const A0 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ ArgList=result_type, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(73): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse,double>&>(const A1 &,const A0 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ ArgList=result_type, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(78): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse,double>&>(const boost::parameter::aux::tagged_argument_list_of_1>&,const A0 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ ArgList=result_type, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double, Keyword=boost::accumulators::tag::weight ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(73): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse,double>&>(const boost::parameter::aux::tagged_argument_list_of_1>&,const A0 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ ArgList=result_type, A1=boost::parameter::aux::tagged_argument_list_of_1>, A0=double, Keyword=boost::accumulators::tag::weight ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(78): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse,double>&>(const double&,const A1 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ ArgList=result_type, A0=double, A1=boost::parameter::aux::tagged_argument_list_of_1> ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(73): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse,double>&>(const double&,const A1 &,boost::accumulators::accumulator_set,double> &)' being compiled with [ ArgList=result_type, A0=double, A1=boost::parameter::aux::tagged_argument_list_of_1> ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(275): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse<>(A0,const double &,const A1 &)' being compiled with [ ArgList=result_type, A0=boost::accumulators::accumulator_set,double> &, A1=boost::parameter::aux::tagged_argument_list_of_1> ] C:\local\boost_1_71_0_b1\boost/parameter/parameters.hpp(271): note: see reference to function template instantiation 'ArgList boost::parameter::aux::arg_list_factory::reverse<>(A0,const double &,const A1 &)' being compiled with [ ArgList=result_type, A0=boost::accumulators::accumulator_set,double> &, A1=boost::parameter::aux::tagged_argument_list_of_1> ] C:\local\boost_1_71_0_b1\boost/accumulators/framework/accumulator_set.hpp(281): note: see reference to function template instantiation 'boost::parameter::aux::flat_like_arg_list,boost::parameter::aux::flat_like_arg_tuple,double>>>,EmitsErrors>> boost::parameter::parameters,boost::parameter::optional>::operator (),double>&,const A0&,const A1&>(boost::accumulators::accumulator_set,double>&,const A0 &,const A1 &) const' being compiled with [ TaggedArg=boost::parameter::aux::tagged_argument_list_of_1>, EmitsErrors=boost::mp11::mp_true, Keyword=boost::accumulators::tag::accumulator, A0=double, A1=boost::parameter::aux::tagged_argument_list_of_1> ] C:\local\boost_1_71_0_b1\boost/accumulators/framework/accumulator_set.hpp(276): note: see reference to function template instantiation 'boost::parameter::aux::flat_like_arg_list,boost::parameter::aux::flat_like_arg_tuple,double>>>,EmitsErrors>> boost::parameter::parameters,boost::parameter::optional>::operator (),double>&,const A0&,const A1&>(boost::accumulators::accumulator_set,double>&,const A0 &,const A1 &) const' being compiled with [ TaggedArg=boost::parameter::aux::tagged_argument_list_of_1>, EmitsErrors=boost::mp11::mp_true, Keyword=boost::accumulators::tag::accumulator, A0=double, A1=boost::parameter::aux::tagged_argument_list_of_1> ] test.cpp(17): note: see reference to function template instantiation 'void boost::accumulators::accumulator_set,double>::operator ()>>(const A0 &,const A1 &)' being compiled with [ Keyword=boost::accumulators::tag::weight, A0=double, A1=boost::parameter::aux::tagged_argument_list_of_1> ] test.cpp(17): note: see reference to function template instantiation 'void boost::accumulators::accumulator_set,double>::operator ()>>(const A0 &,const A1 &)' being compiled with [ Keyword=boost::accumulators::tag::weight, A0=double, A1=boost::parameter::aux::tagged_argument_list_of_1> ]