forked from boostorg/fusion
More constexpr and noexcept support.
Note 1: Forwarding functions are specified as a C++14 constexpr since std::forward is not a constexpr within C++11. Note 2: Though I'm not sure why it doesn't compile, some declarations are specified as a C++14 constexpr or non-constexpr. Note 3: Boost.Tuple adaptation and TR1-based tuple implementations are not constexpr.
This commit is contained in:
@ -8,6 +8,7 @@
|
||||
#if !defined(FUSION_SEQUENCE_BASE_04182005_0737)
|
||||
#define FUSION_SEQUENCE_BASE_04182005_0737
|
||||
|
||||
#include <boost/config.hpp>
|
||||
#include <boost/fusion/support/config.hpp>
|
||||
#include <boost/mpl/begin_end_fwd.hpp>
|
||||
|
||||
@ -22,22 +23,22 @@ namespace boost { namespace fusion
|
||||
template <typename Sequence>
|
||||
struct sequence_base
|
||||
{
|
||||
BOOST_FUSION_GPU_ENABLED
|
||||
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
||||
Sequence const&
|
||||
derived() const
|
||||
derived() const BOOST_NOEXCEPT
|
||||
{
|
||||
return static_cast<Sequence const&>(*this);
|
||||
}
|
||||
|
||||
BOOST_FUSION_GPU_ENABLED
|
||||
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
||||
Sequence&
|
||||
derived()
|
||||
derived() BOOST_NOEXCEPT
|
||||
{
|
||||
return static_cast<Sequence&>(*this);
|
||||
}
|
||||
|
||||
BOOST_FUSION_GPU_ENABLED
|
||||
operator detail::from_sequence_convertible_type()const
|
||||
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
|
||||
operator detail::from_sequence_convertible_type() const BOOST_NOEXCEPT
|
||||
{
|
||||
return detail::from_sequence_convertible_type();
|
||||
}
|
||||
|
Reference in New Issue
Block a user