1 | In file included from ./boost/phoenix/core/detail/preprocessed/function_eval.hpp:12:0,
|
---|
2 | from ./boost/phoenix/core/detail/function_eval.hpp:14,
|
---|
3 | from ./boost/phoenix/function/function.hpp:13,
|
---|
4 | from ./boost/phoenix/function.hpp:11,
|
---|
5 | from ./boost/phoenix/phoenix.hpp:12,
|
---|
6 | from ./boost/phoenix.hpp:11,
|
---|
7 | from ./phoenix_non_const_ref.cpp:2:
|
---|
8 | ./boost/phoenix/core/detail/preprocessed/function_eval_10.hpp: In instantiation of ‘struct boost::phoenix::detail::function_eval::result<boost::phoenix::detail::function_eval(const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>&, const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> >&, const boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>&)>’:
|
---|
9 | ./boost/phoenix/core/detail/preprocessed/function_eval_10.hpp:95:13: required by substitution of ‘template<class F, class A0, class Context> typename boost::phoenix::detail::function_eval::result<boost::phoenix::detail::function_eval(F&, A0&, const Context&)>::type boost::phoenix::detail::function_eval::operator()(F&, A0&, const Context&) const [with F = const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>; A0 = const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> >; Context = boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>]’
|
---|
10 | ./boost/utility/detail/result_of_iterate.hpp:140:51: required from ‘struct boost::detail::cpp0x_result_of<boost::phoenix::detail::function_eval(const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>&, const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> >&, boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>)>’
|
---|
11 | ./boost/utility/detail/result_of_iterate.hpp:42:8: required from ‘struct boost::result_of<boost::phoenix::detail::function_eval(const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>&, const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> >&, boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>)>’
|
---|
12 | ./boost/phoenix/core/detail/preprocessed/call_10.hpp:65:17: required from ‘struct boost::phoenix::detail::call_impl<boost::phoenix::detail::function_eval, const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&, 2l>’
|
---|
13 | ./boost/phoenix/core/call.hpp:60:16: required from ‘struct boost::phoenix::call<boost::phoenix::detail::function_eval>::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>’
|
---|
14 | ./boost/proto/transform/when.hpp:186:16: required from ‘struct boost::proto::when<boost::phoenix::detail::rule::function_eval, boost::proto::external_transform>::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>’
|
---|
15 | ./boost/proto/matches.hpp:834:16: required from ‘struct boost::proto::switch_<boost::phoenix::meta_grammar>::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>’
|
---|
16 | ./boost/phoenix/core/meta_grammar.hpp:66:48: required from ‘struct boost::phoenix::evaluator::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, const boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, boost::phoenix::default_actions>&, boost::proto::envns_::empty_env>’
|
---|
17 | ./boost/phoenix/core/detail/preprocessed/actor_result_of_10.hpp:60:17: required from ‘struct boost::phoenix::result_of::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>, const int&, void, void, void, void, void, void, void, void, void, void>’
|
---|
18 | ./boost/phoenix/core/detail/preprocessed/actor_operator_10.hpp:19:1114: required by substitution of ‘template<class A0> typename boost::phoenix::result_of::actor<typename boost::mpl::eval_if_c<boost::mpl::or_<boost::phoenix::is_custom_terminal<Expr>, mpl_::bool_<boost::is_placeholder<Expr>::value> >::value, boost::proto::terminal<T>, boost::mpl::identity<T> >::type::proto_base_expr, const A0&>::type boost::phoenix::actor<Expr>::operator()(const A0&) [with A0 = A0; Expr = boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>] [with A0 = int]’
|
---|
19 | ./phoenix_non_const_ref.cpp:17:64: required from here
|
---|
20 | ./boost/phoenix/core/detail/preprocessed/function_eval_10.hpp:72:21: error: no type named ‘type’ in ‘struct boost::result_of<const my_func(const int&)>’
|
---|
21 | type;
|
---|
22 | ^
|
---|
23 | In file included from ./boost/phoenix/core/detail/preprocessed/call.hpp:12:0,
|
---|
24 | from ./boost/phoenix/core/detail/call.hpp:6,
|
---|
25 | from ./boost/phoenix/core/call.hpp:65,
|
---|
26 | from ./boost/phoenix/core/nothing.hpp:13,
|
---|
27 | from ./boost/phoenix/core.hpp:20,
|
---|
28 | from ./boost/phoenix/phoenix.hpp:11,
|
---|
29 | from ./boost/phoenix.hpp:11,
|
---|
30 | from ./phoenix_non_const_ref.cpp:2:
|
---|
31 | ./boost/phoenix/core/detail/preprocessed/call_10.hpp: In instantiation of ‘struct boost::phoenix::detail::call_impl<boost::phoenix::detail::function_eval, const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&, 2l>’:
|
---|
32 | ./boost/phoenix/core/call.hpp:60:16: required from ‘struct boost::phoenix::call<boost::phoenix::detail::function_eval>::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>’
|
---|
33 | ./boost/proto/transform/when.hpp:186:16: required from ‘struct boost::proto::when<boost::phoenix::detail::rule::function_eval, boost::proto::external_transform>::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>’
|
---|
34 | ./boost/proto/matches.hpp:834:16: required from ‘struct boost::proto::switch_<boost::phoenix::meta_grammar>::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>’
|
---|
35 | ./boost/phoenix/core/meta_grammar.hpp:66:48: required from ‘struct boost::phoenix::evaluator::impl<const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>&, const boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, boost::phoenix::default_actions>&, boost::proto::envns_::empty_env>’
|
---|
36 | ./boost/phoenix/core/detail/preprocessed/actor_result_of_10.hpp:60:17: required from ‘struct boost::phoenix::result_of::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>, const int&, void, void, void, void, void, void, void, void, void, void>’
|
---|
37 | ./boost/phoenix/core/detail/preprocessed/actor_operator_10.hpp:19:1114: required by substitution of ‘template<class A0> typename boost::phoenix::result_of::actor<typename boost::mpl::eval_if_c<boost::mpl::or_<boost::phoenix::is_custom_terminal<Expr>, mpl_::bool_<boost::is_placeholder<Expr>::value> >::value, boost::proto::terminal<T>, boost::mpl::identity<T> >::type::proto_base_expr, const A0&>::type boost::phoenix::actor<Expr>::operator()(const A0&) [with A0 = A0; Expr = boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l>] [with A0 = int]’
|
---|
38 | ./phoenix_non_const_ref.cpp:17:64: required from here
|
---|
39 | ./boost/phoenix/core/detail/preprocessed/call_10.hpp:65:17: error: no type named ‘type’ in ‘struct boost::result_of<boost::phoenix::detail::function_eval(const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>&, const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> >&, boost::phoenix::vector2<boost::phoenix::vector2<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval, boost::proto::argsns_::list2<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<my_func>, 0l>, boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal, boost::proto::argsns_::term<boost::phoenix::argument<1> >, 0l> > >, 2l> >*, const int&>&, const boost::phoenix::default_actions&>)>’
|
---|
40 | result_type;
|
---|
41 | ^
|
---|