forked from boostorg/variant2
is_trivially_move_assignable doesn't exist in libstdc++ 4.x
This commit is contained in:
@ -14,6 +14,7 @@
|
|||||||
#include <stdexcept>
|
#include <stdexcept>
|
||||||
|
|
||||||
using namespace boost::variant2;
|
using namespace boost::variant2;
|
||||||
|
namespace v2d = boost::variant2::detail;
|
||||||
|
|
||||||
#define STATIC_ASSERT(...) static_assert(__VA_ARGS__, #__VA_ARGS__)
|
#define STATIC_ASSERT(...) static_assert(__VA_ARGS__, #__VA_ARGS__)
|
||||||
|
|
||||||
@ -34,7 +35,7 @@ STATIC_ASSERT( std::is_nothrow_default_constructible<X1>::value );
|
|||||||
STATIC_ASSERT( std::is_nothrow_copy_constructible<X1>::value );
|
STATIC_ASSERT( std::is_nothrow_copy_constructible<X1>::value );
|
||||||
STATIC_ASSERT( std::is_nothrow_move_constructible<X1>::value );
|
STATIC_ASSERT( std::is_nothrow_move_constructible<X1>::value );
|
||||||
STATIC_ASSERT( std::is_trivially_destructible<X1>::value );
|
STATIC_ASSERT( std::is_trivially_destructible<X1>::value );
|
||||||
STATIC_ASSERT( std::is_trivially_move_assignable<X1>::value );
|
STATIC_ASSERT( v2d::is_trivially_move_assignable<X1>::value );
|
||||||
STATIC_ASSERT( std::is_nothrow_constructible<X1, E1>::value );
|
STATIC_ASSERT( std::is_nothrow_constructible<X1, E1>::value );
|
||||||
STATIC_ASSERT( !std::is_nothrow_constructible<X1, E1x>::value );
|
STATIC_ASSERT( !std::is_nothrow_constructible<X1, E1x>::value );
|
||||||
|
|
||||||
@ -83,7 +84,7 @@ STATIC_ASSERT( !std::is_nothrow_default_constructible<X3>::value );
|
|||||||
STATIC_ASSERT( !std::is_nothrow_copy_constructible<X3>::value );
|
STATIC_ASSERT( !std::is_nothrow_copy_constructible<X3>::value );
|
||||||
STATIC_ASSERT( !std::is_nothrow_move_constructible<X3>::value );
|
STATIC_ASSERT( !std::is_nothrow_move_constructible<X3>::value );
|
||||||
STATIC_ASSERT( std::is_trivially_destructible<X3>::value );
|
STATIC_ASSERT( std::is_trivially_destructible<X3>::value );
|
||||||
STATIC_ASSERT( std::is_trivially_move_assignable<X3>::value );
|
STATIC_ASSERT( v2d::is_trivially_move_assignable<X3>::value );
|
||||||
STATIC_ASSERT( std::is_nothrow_constructible<X3, E3>::value );
|
STATIC_ASSERT( std::is_nothrow_constructible<X3, E3>::value );
|
||||||
STATIC_ASSERT( !std::is_nothrow_constructible<X3, E3x>::value );
|
STATIC_ASSERT( !std::is_nothrow_constructible<X3, E3x>::value );
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user