mirror of
https://github.com/boostorg/math.git
synced 2026-01-19 04:22:09 +00:00
Improve check for incomplete <execution> header
All versions of libc++ currently include a useless <execution> header by default, not just the version shipped with Apple Clang. For example, IBM Open XL C/C++ 17.1.3 on AIX is affected as well.
This commit is contained in:
@@ -84,6 +84,8 @@
|
||||
|
||||
#else // Things from boost/config that are required, and easy to replicate
|
||||
|
||||
#include <version>
|
||||
|
||||
#define BOOST_MATH_PREVENT_MACRO_SUBSTITUTION
|
||||
#define BOOST_MATH_NO_REAL_CONCEPT_TESTS
|
||||
#define BOOST_MATH_NO_DISTRIBUTION_CONCEPT_TESTS
|
||||
@@ -102,9 +104,9 @@
|
||||
#if ((__cplusplus > 201700L) || (defined(_MSVC_LANG) && (_MSVC_LANG > 201700L)))
|
||||
#define BOOST_MATH_IF_CONSTEXPR if constexpr
|
||||
|
||||
// Clang on mac provides the execution header with none of the functionality. TODO: Check back on this
|
||||
// libc++ currently provides the execution header with none of the functionality.
|
||||
// https://en.cppreference.com/w/cpp/compiler_support "Standardization of Parallelism TS"
|
||||
# if !__has_include(<execution>) || (defined(__APPLE__) && defined(__clang__))
|
||||
# if !__has_include(<execution>) || !defined(__cpp_lib_execution) || (__cpp_lib_execution < 201603L)
|
||||
# define BOOST_MATH_NO_CXX17_HDR_EXECUTION
|
||||
# endif
|
||||
#else
|
||||
|
||||
Reference in New Issue
Block a user