diff --git a/include/boost/fusion/container/list/detail/build_cons.hpp b/include/boost/fusion/container/list/detail/build_cons.hpp index befbd4e9..d6b8738d 100644 --- a/include/boost/fusion/container/list/detail/build_cons.hpp +++ b/include/boost/fusion/container/list/detail/build_cons.hpp @@ -48,7 +48,8 @@ namespace boost { namespace fusion { namespace detail static type call(First const& f, Last const& l) { - return type(*f, next_build_cons::call(fusion::next(f), l)); + typename result_of::value_of::type v = *f; + return type(v, next_build_cons::call(fusion::next(f), l)); } };