From f18418b17a0b88644b1bac9ed5d9b5323f75db75 Mon Sep 17 00:00:00 2001 From: Justin LaPolla Date: Tue, 12 Dec 2017 13:06:18 -0600 Subject: [PATCH] Work through tests with 'cray.hpp' - Almost everything is passing. The only thing that's failing is 'limits_test.cpp', which is failing tests on lines 160 and 161 (shown below). if(lim::is_iec559) { BOOST_TEST(! (qnan == qnan)); # __LINE__ == 160 BOOST_TEST(qnan != qnan); # __LINE__ == 161 } --- include/boost/config/compiler/cray.hpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/include/boost/config/compiler/cray.hpp b/include/boost/config/compiler/cray.hpp index 8e797831..217007fc 100644 --- a/include/boost/config/compiler/cray.hpp +++ b/include/boost/config/compiler/cray.hpp @@ -45,6 +45,13 @@ # define BOOST_COMPILER "Cray C++ version " BOOST_STRINGIZE(_RELEASE_MAJOR) "." BOOST_STRINGIZE(_RELEASE_MINOR) "." BOOST_STRINGIZE(_RELEASE_PATCHLEVEL) #endif +// We have to emulate some GCC macros in order to enable some Boost.Config +// tests. + +#if __cplusplus >= 201103L && defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__) +# define __GXX_EXPERIMENTAL_CXX0X__ +#endif // __GNUC__ + //// //// Parameter validation //// @@ -214,12 +221,28 @@ // #if BOOST_CRAY_VERSION >= 80605 + +#if __cplusplus == 201402L +#define BOOST_NO_CXX11_HDR_ATOMIC +#define BOOST_NO_CXX11_HDR_REGEX +#define BOOST_NO_CXX11_HDR_TYPEINDEX +#define BOOST_NO_CXX11_LOCAL_CLASS_TEMPLATE_PARAMETERS +#define BOOST_NO_CXX14_DIGIT_SEPARATORS +#define BOOST_NO_COMPLETE_VALUE_INITIALIZATION +#define BOOST_NO_TEMPLATE_TEMPLATES +#endif // __cplusplus == 201402L + #endif // BOOST_CRAY_VERSION >= 80605 //// //// Remove temporary macros //// +// I've commented out some '#undef' statements to signify that we purposely +// want to keep certain macros. + +//#undef __GXX_EXPERIMENTAL_CXX0X__ +//#undef BOOST_COMPILER #undef BOOST_GCC_VERSION #undef BOOST_CRAY_VERSION