mirror of
https://github.com/boostorg/fusion.git
synced 2025-07-29 12:07:36 +02:00
Remove invalid odr-usages of boost::declval.
This commit is contained in:
@ -36,7 +36,6 @@
|
|||||||
#include <boost/core/enable_if.hpp>
|
#include <boost/core/enable_if.hpp>
|
||||||
#include <boost/mpl/int.hpp>
|
#include <boost/mpl/int.hpp>
|
||||||
#include <boost/mpl/bool.hpp>
|
#include <boost/mpl/bool.hpp>
|
||||||
#include <boost/type_traits/declval.hpp>
|
|
||||||
#include <boost/type_traits/is_same.hpp>
|
#include <boost/type_traits/is_same.hpp>
|
||||||
#include <boost/type_traits/is_convertible.hpp>
|
#include <boost/type_traits/is_convertible.hpp>
|
||||||
#include <boost/type_traits/remove_cv.hpp>
|
#include <boost/type_traits/remove_cv.hpp>
|
||||||
@ -272,8 +271,8 @@ namespace boost { namespace fusion
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <std::size_t N, typename U>
|
template <std::size_t N, typename U>
|
||||||
static BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
static BOOST_FUSION_GPU_ENABLED
|
||||||
U value_at_impl(store<N, U>*) { return boost::declval<U>(); }
|
U value_at_impl(store<N, U>*);
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename V, typename... T>
|
template <typename V, typename... T>
|
||||||
|
@ -17,9 +17,6 @@
|
|||||||
#include <boost/fusion/algorithm/iteration/fold.hpp>
|
#include <boost/fusion/algorithm/iteration/fold.hpp>
|
||||||
#include <boost/type_traits/remove_reference.hpp>
|
#include <boost/type_traits/remove_reference.hpp>
|
||||||
#include <boost/type_traits/is_convertible.hpp>
|
#include <boost/type_traits/is_convertible.hpp>
|
||||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
|
||||||
#include <boost/type_traits/declval.hpp>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
namespace boost { namespace fusion
|
namespace boost { namespace fusion
|
||||||
{
|
{
|
||||||
@ -62,12 +59,9 @@ namespace boost { namespace fusion
|
|||||||
// never called, but needed for decltype-based result_of (C++0x)
|
// never called, but needed for decltype-based result_of (C++0x)
|
||||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||||
template<typename StrictestSoFar, typename Next>
|
template<typename StrictestSoFar, typename Next>
|
||||||
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
BOOST_FUSION_GPU_ENABLED
|
||||||
typename result<strictest_traversal_impl(StrictestSoFar, Next)>::type
|
typename result<strictest_traversal_impl(StrictestSoFar, Next)>::type
|
||||||
operator()(StrictestSoFar&&, Next&&) const
|
operator()(StrictestSoFar&&, Next&&) const;
|
||||||
{
|
|
||||||
return boost::declval<typename result<strictest_traversal_impl(StrictestSoFar, Next)>::type>();
|
|
||||||
}
|
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user