Fixed vector compile error with C-style array

This commit is contained in:
Kohei Takahashi
2018-04-18 22:31:35 +09:00
parent 79262831ef
commit e962c1abb5

View File

@ -23,6 +23,7 @@
///////////////////////////////////////////////////////////////////////////////
#include <boost/fusion/container/vector/vector_fwd.hpp>
#include <boost/type_traits/declval.hpp>
#include <boost/mpl/identity.hpp>
namespace boost { namespace fusion
{
@ -35,7 +36,7 @@ namespace boost { namespace fusion
template <std::size_t N, typename U>
static inline BOOST_FUSION_GPU_ENABLED
U value_at_impl(store<N, U> const volatile*);
mpl::identity<U> value_at_impl(store<N, U> const volatile*);
}
namespace extension
@ -49,8 +50,8 @@ namespace boost { namespace fusion
template <typename Sequence, typename N>
struct apply
{
typedef
decltype(vector_detail::value_at_impl<N::value>(boost::declval<Sequence*>()))
typedef typename
decltype(vector_detail::value_at_impl<N::value>(boost::declval<Sequence*>()))::type
type;
};
};