Ticket #2246: Phoenix2_lazy.diff

File Phoenix2_lazy.diff, 1008 bytes (added by François Barel <frabar666@…>, 14 years ago)
  • boost/spirit/home/phoenix/core/detail/function_eval.hpp

     
    3232        template <typename Env, typename F>
    3333        struct result
    3434        {
    35             typedef typename F::template result<Env>::type function;
     35            typedef typename remove_reference< typename F::template result<Env>::type >::type function;
    3636            typedef typename function::result_type type;
    3737        };
    3838
     
    9696          , BOOST_PP_ENUM_PARAMS(N, typename A)>
    9797        struct result
    9898        {
    99             typedef typename F::template result<Env>::type function;
     99            typedef typename remove_reference< typename F::template result<Env>::type >::type function;
    100100            BOOST_PP_REPEAT(N, PHOENIX_GET_ARG, _)
    101101
    102102            typedef BOOST_PP_CAT(mpl::vector, N)