update for intel compiler + c++14 is the minimal supported version

This commit is contained in:
Sébastien Loriot 2022-04-25 22:46:10 +02:00
parent d14345fc25
commit f67f2094d7
1 changed files with 14 additions and 9 deletions

View File

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