macros are always defined

This commit is contained in:
Sébastien Loriot 2022-04-28 13:59:14 +02:00
parent 8be8236918
commit ab7aa75b67
1 changed files with 9 additions and 14 deletions

View File

@ -487,20 +487,15 @@ namespace cpp11{
// http://clang.llvm.org/docs/AttributeReference.html#statement-attributes // http://clang.llvm.org/docs/AttributeReference.html#statement-attributes
// See for gcc: // See for gcc:
// https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html // https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
#if defined(__has_cpp_attribute) #if __cplusplus > 201402L && __has_cpp_attribute(fallthrough)
#if __cplusplus > 201402L && __has_cpp_attribute(fallthrough) # define CGAL_FALLTHROUGH [[fallthrough]]
# define CGAL_FALLTHROUGH [[fallthrough]] #elif __has_cpp_attribute(gnu::fallthrough)
#elif __has_cpp_attribute(gnu::fallthrough) # define CGAL_FALLTHROUGH [[gnu::fallthrough]]
# define CGAL_FALLTHROUGH [[gnu::fallthrough]] #elif __has_cpp_attribute(clang::fallthrough)
#elif __has_cpp_attribute(clang::fallthrough) # define CGAL_FALLTHROUGH [[clang::fallthrough]]
# define CGAL_FALLTHROUGH [[clang::fallthrough]] #elif __has_attribute(fallthrough) && ! __clang__
#endif # define CGAL_FALLTHROUGH __attribute__ ((fallthrough))
#elif defined(__has_attribute) #else
#if __has_attribute(fallthrough) && ! __clang__
# define CGAL_FALLTHROUGH __attribute__ ((fallthrough))
#endif
#endif
#if !defined(CGAL_FALLTHROUGH)
# define CGAL_FALLTHROUGH while(false){} # define CGAL_FALLTHROUGH while(false){}
#endif #endif