Loading...
Searching...
No Matches
Go to the documentation of this file.
14#if !(defined(_MSC_VER) && __cplusplus == 199711L) && !defined(__INTEL_COMPILER)
15#if __cplusplus >= 201402L
17#if __cplusplus >= 201703L
19#if __cplusplus > 201703L
24#elif defined(_MSC_VER) && __cplusplus == 199711L
27#if _MSVC_LANG >= 201402L
29#if _MSVC_LANG > 201402L && _MSC_VER >= 1910
31#if _MSVC_LANG > 201703L && _MSC_VER >= 1910
38#if defined(CLI11_CPP14)
39#define CLI11_DEPRECATED(reason) [[deprecated(reason)]]
40#elif defined(_MSC_VER)
41#define CLI11_DEPRECATED(reason) __declspec(deprecated(reason))
43#define CLI11_DEPRECATED(reason) __attribute__((deprecated(reason)))
47#if !defined(CLI11_CPP17) || \
48 (defined(__GNUC__) && !defined(__llvm__) && !defined(__INTEL_COMPILER) && __GNUC__ < 10 && __GNUC__ > 4)
49#define CLI11_NODISCARD
51#define CLI11_NODISCARD [[nodiscard]]
55#ifndef CLI11_USE_STATIC_RTTI
56#if(defined(_HAS_STATIC_RTTI) && _HAS_STATIC_RTTI)
57#define CLI11_USE_STATIC_RTTI 1
58#elif defined(__cpp_rtti)
59#if(defined(_CPPRTTI) && _CPPRTTI == 0)
60#define CLI11_USE_STATIC_RTTI 1
62#define CLI11_USE_STATIC_RTTI 0
64#elif(defined(__GCC_RTTI) && __GXX_RTTI)
65#define CLI11_USE_STATIC_RTTI 0
67#define CLI11_USE_STATIC_RTTI 1
72#if defined CLI11_CPP17 && defined __has_include && !defined CLI11_HAS_FILESYSTEM
73#if __has_include(<filesystem>)
75#if defined __MAC_OS_X_VERSION_MIN_REQUIRED && __MAC_OS_X_VERSION_MIN_REQUIRED < 101500
76#define CLI11_HAS_FILESYSTEM 0
77#elif defined(__wasi__)
79#define CLI11_HAS_FILESYSTEM 0
82#if defined __cpp_lib_filesystem && __cpp_lib_filesystem >= 201703
83#if defined _GLIBCXX_RELEASE && _GLIBCXX_RELEASE >= 9
84#define CLI11_HAS_FILESYSTEM 1
85#elif defined(__GLIBCXX__)
87#define CLI11_HAS_FILESYSTEM 0
89#define CLI11_HAS_FILESYSTEM 1
92#define CLI11_HAS_FILESYSTEM 0
99#if defined(__GNUC__) && !defined(__llvm__) && !defined(__INTEL_COMPILER) && __GNUC__ < 5
100#define CLI11_HAS_CODECVT 0
102#define CLI11_HAS_CODECVT 1
108#define CLI11_DIAGNOSTIC_PUSH _Pragma("GCC diagnostic push")
109#define CLI11_DIAGNOSTIC_POP _Pragma("GCC diagnostic pop")
111#define CLI11_DIAGNOSTIC_IGNORE_DEPRECATED _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
113#elif defined(_MSC_VER)
114#define CLI11_DIAGNOSTIC_PUSH __pragma(warning(push))
115#define CLI11_DIAGNOSTIC_POP __pragma(warning(pop))
117#define CLI11_DIAGNOSTIC_IGNORE_DEPRECATED __pragma(warning(disable : 4996))
120#define CLI11_DIAGNOSTIC_PUSH
121#define CLI11_DIAGNOSTIC_POP
123#define CLI11_DIAGNOSTIC_IGNORE_DEPRECATED
131#define CLI11_INLINE inline