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/mpl/int.hpp>
|
||||
#include <boost/mpl/bool.hpp>
|
||||
#include <boost/type_traits/declval.hpp>
|
||||
#include <boost/type_traits/is_same.hpp>
|
||||
#include <boost/type_traits/is_convertible.hpp>
|
||||
#include <boost/type_traits/remove_cv.hpp>
|
||||
@ -272,8 +271,8 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <std::size_t N, typename U>
|
||||
static BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
||||
U value_at_impl(store<N, U>*) { return boost::declval<U>(); }
|
||||
static BOOST_FUSION_GPU_ENABLED
|
||||
U value_at_impl(store<N, U>*);
|
||||
};
|
||||
|
||||
template <typename V, typename... T>
|
||||
|
@ -17,9 +17,6 @@
|
||||
#include <boost/fusion/algorithm/iteration/fold.hpp>
|
||||
#include <boost/type_traits/remove_reference.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
|
||||
{
|
||||
@ -62,12 +59,9 @@ namespace boost { namespace fusion
|
||||
// never called, but needed for decltype-based result_of (C++0x)
|
||||
#ifndef BOOST_NO_CXX11_RVALUE_REFERENCES
|
||||
template<typename StrictestSoFar, typename Next>
|
||||
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
||||
BOOST_FUSION_GPU_ENABLED
|
||||
typename result<strictest_traversal_impl(StrictestSoFar, Next)>::type
|
||||
operator()(StrictestSoFar&&, Next&&) const
|
||||
{
|
||||
return boost::declval<typename result<strictest_traversal_impl(StrictestSoFar, Next)>::type>();
|
||||
}
|
||||
operator()(StrictestSoFar&&, Next&&) const;
|
||||
#endif
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user