mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-04 12:15:46 +00:00
[OpenMP][libomp] Fix fallthrough attribute detection for Intel compilers
icc does not properly detect lack of fallthrough attribute since it defines __GNU__ > 7 and also icc's __has_cpp_attribute/__has_attribute feature detectors do not properly detect the lack of fallthrough attribute. Differential Revision: https://reviews.llvm.org/D126001
This commit is contained in:
parent
b7d3ba4bdb
commit
28c8da2965
@ -345,6 +345,9 @@ extern "C" {
|
||||
// Use a function like macro to imply that it must be followed by a semicolon
|
||||
#if __cplusplus > 201402L && __has_cpp_attribute(fallthrough)
|
||||
#define KMP_FALLTHROUGH() [[fallthrough]]
|
||||
// icc cannot properly tell this attribute is absent so force off
|
||||
#elif KMP_COMPILER_ICC
|
||||
#define KMP_FALLTHROUGH() ((void)0)
|
||||
#elif __has_cpp_attribute(clang::fallthrough)
|
||||
#define KMP_FALLTHROUGH() [[clang::fallthrough]]
|
||||
#elif __has_attribute(fallthrough) || __GNUC__ >= 7
|
||||
|
@ -42,6 +42,9 @@
|
||||
// Use a function like macro to imply that it must be followed by a semicolon
|
||||
#if __cplusplus > 201402L && __has_cpp_attribute(fallthrough)
|
||||
#define KMP_FALLTHROUGH() [[fallthrough]]
|
||||
// icc cannot properly tell this attribute is absent so force off
|
||||
#elif defined(__INTEL_COMPILER)
|
||||
#define KMP_FALLTHROUGH() ((void)0)
|
||||
#elif __has_cpp_attribute(clang::fallthrough)
|
||||
#define KMP_FALLTHROUGH() [[clang::fallthrough]]
|
||||
#elif __has_attribute(fallthrough) || __GNUC__ >= 7
|
||||
|
Loading…
Reference in New Issue
Block a user