mirror of
https://github.com/boostorg/optional.git
synced 2025-07-29 12:07:21 +02:00
hopefully fixed the libstdc++ 4.9 problem (thanks Jonathan)
This commit is contained in:
@ -14,6 +14,7 @@
|
|||||||
|
|
||||||
#include <boost/config.hpp>
|
#include <boost/config.hpp>
|
||||||
#include <boost/detail/workaround.hpp>
|
#include <boost/detail/workaround.hpp>
|
||||||
|
#include <boost/predef.h>
|
||||||
#include <boost/type_traits.hpp>
|
#include <boost/type_traits.hpp>
|
||||||
|
|
||||||
// The condition to use POD implementation
|
// The condition to use POD implementation
|
||||||
@ -38,11 +39,16 @@
|
|||||||
# define BOOST_OPTIONAL_DETAIL_NO_SPEC_FOR_TRIVIAL_TYPES
|
# define BOOST_OPTIONAL_DETAIL_NO_SPEC_FOR_TRIVIAL_TYPES
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// GCC 5 or higher, or clang with libc++ or clang with libstdc++ 5 or higher
|
||||||
#if __cplusplus >= 201103L
|
#if __cplusplus >= 201103L
|
||||||
# if BOOST_WORKAROUND(BOOST_GCC, >= 50000)
|
# if BOOST_WORKAROUND(BOOST_GCC, >= 50000)
|
||||||
# define BOOST_OPTIONAL_DETAIL_USE_STD_TYPE_TRAITS
|
# define BOOST_OPTIONAL_DETAIL_USE_STD_TYPE_TRAITS
|
||||||
# elif (defined BOOST_CLANG)
|
# elif (defined BOOST_CLANG)
|
||||||
# define BOOST_OPTIONAL_DETAIL_USE_STD_TYPE_TRAITS
|
# if BOOST_LIB_STD_CXX > 0
|
||||||
|
# define BOOST_OPTIONAL_DETAIL_USE_STD_TYPE_TRAITS
|
||||||
|
# elif BOOST_LIB_STD_GNU >= 441200023 && BOOST_LIB_STD_GNU != 450600023 && BOOST_LIB_STD_GNU != 450600026 && BOOST_LIB_STD_GNU != 460800003
|
||||||
|
# define BOOST_OPTIONAL_DETAIL_USE_STD_TYPE_TRAITS
|
||||||
|
# endif
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -23,6 +23,7 @@ import testing ;
|
|||||||
[ run optional_test_convert_from_T.cpp ]
|
[ run optional_test_convert_from_T.cpp ]
|
||||||
[ run optional_test_empty_braces.cpp ]
|
[ run optional_test_empty_braces.cpp ]
|
||||||
[ run optional_test_make_optional.cpp ]
|
[ run optional_test_make_optional.cpp ]
|
||||||
|
#[ run optional_test_flat_map.cpp ]
|
||||||
[ run optional_test_map.cpp ]
|
[ run optional_test_map.cpp ]
|
||||||
[ run optional_test_tie.cpp ]
|
[ run optional_test_tie.cpp ]
|
||||||
[ run optional_test_ref_assign_portable_minimum.cpp ]
|
[ run optional_test_ref_assign_portable_minimum.cpp ]
|
||||||
@ -72,7 +73,7 @@ import testing ;
|
|||||||
[ run optional_test_static_properties.cpp ]
|
[ run optional_test_static_properties.cpp ]
|
||||||
[ compile optional_test_maybe_uninitialized_warning.cpp ]
|
[ compile optional_test_maybe_uninitialized_warning.cpp ]
|
||||||
[ compile optional_test_deleted_default_ctor.cpp ]
|
[ compile optional_test_deleted_default_ctor.cpp ]
|
||||||
[ run optional_xconfig_HACK_TO_LIST_PREDEFINED_MACROS.cpp ]
|
#[ run optional_xconfig_HACK_TO_LIST_PREDEFINED_MACROS.cpp ]
|
||||||
[ run optional_xconfig_NO_PROPER_ASSIGN_FROM_CONST_INT_pass.cpp ]
|
[ run optional_xconfig_NO_PROPER_ASSIGN_FROM_CONST_INT_pass.cpp ]
|
||||||
[ run-fail optional_xconfig_NO_PROPER_ASSIGN_FROM_CONST_INT_fail.cpp ]
|
[ run-fail optional_xconfig_NO_PROPER_ASSIGN_FROM_CONST_INT_fail.cpp ]
|
||||||
[ run optional_xconfig_NO_PROPER_CONVERT_FROM_CONST_INT_pass.cpp ]
|
[ run optional_xconfig_NO_PROPER_CONVERT_FROM_CONST_INT_pass.cpp ]
|
||||||
|
Reference in New Issue
Block a user