diff options
-rw-r--r-- | Modules/CMakeCUDACompilerId.cu.in | 18 | ||||
-rw-r--r-- | Modules/CMakeHIPCompilerId.hip.in | 19 | ||||
-rw-r--r-- | Modules/CMakeOBJCCompilerId.m.in | 17 | ||||
-rw-r--r-- | Modules/CMakeOBJCXXCompilerId.mm.in | 17 |
4 files changed, 52 insertions, 19 deletions
diff --git a/Modules/CMakeCUDACompilerId.cu.in b/Modules/CMakeCUDACompilerId.cu.in index d5a3b03..170b6b4 100644 --- a/Modules/CMakeCUDACompilerId.cu.in +++ b/Modules/CMakeCUDACompilerId.cu.in @@ -16,16 +16,24 @@ char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; @CMAKE_CUDA_COMPILER_ID_PLATFORM_CONTENT@ @CMAKE_CUDA_COMPILER_ID_ERROR_FOR_TEST@ +#define CXX_STD_11 201103L +#define CXX_STD_14 201402L +#define CXX_STD_17 201703L +#define CXX_STD_20 202002L +#define CXX_STD_23 202302L + +#define CXX_STD __cplusplus + const char* info_language_standard_default = "INFO" ":" "standard_default[" -#if __cplusplus > 202002L +#if CXX_STD > CXX_STD_20 "23" -#elif __cplusplus > 201703L +#elif CXX_STD > CXX_STD_17 "20" -#elif __cplusplus >= 201703L +#elif CXX_STD > CXX_STD_14 "17" -#elif __cplusplus >= 201402L +#elif CXX_STD > CXX_STD_11 "14" -#elif __cplusplus >= 201103L +#elif CXX_STD >= CXX_STD_11 "11" #else "03" diff --git a/Modules/CMakeHIPCompilerId.hip.in b/Modules/CMakeHIPCompilerId.hip.in index 4ac0f30..f1bd120 100644 --- a/Modules/CMakeHIPCompilerId.hip.in +++ b/Modules/CMakeHIPCompilerId.hip.in @@ -16,16 +16,25 @@ char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; @CMAKE_HIP_COMPILER_ID_PLATFORM_CONTENT@ @CMAKE_HIP_COMPILER_ID_ERROR_FOR_TEST@ +#define CXX_STD_98 199711L +#define CXX_STD_11 201103L +#define CXX_STD_14 201402L +#define CXX_STD_17 201703L +#define CXX_STD_20 202002L +#define CXX_STD_23 202302L + +#define CXX_STD __cplusplus + const char* info_language_standard_default = "INFO" ":" "standard_default[" -#if __cplusplus > 202002L +#if CXX_STD > CXX_STD_20 "23" -#elif __cplusplus > 201703L +#elif CXX_STD > CXX_STD_17 "20" -#elif __cplusplus >= 201703L +#elif CXX_STD > CXX_STD_14 "17" -#elif __cplusplus >= 201402L +#elif CXX_STD > CXX_STD_11 "14" -#elif __cplusplus >= 201103L +#elif CXX_STD >= CXX_STD_11 "11" #else "98" diff --git a/Modules/CMakeOBJCCompilerId.m.in b/Modules/CMakeOBJCCompilerId.m.in index eff4f39..e88bb6f 100644 --- a/Modules/CMakeOBJCCompilerId.m.in +++ b/Modules/CMakeOBJCCompilerId.m.in @@ -20,19 +20,28 @@ char const* qnxnto = "INFO" ":" "qnxnto[]"; @CMAKE_OBJC_COMPILER_ID_PLATFORM_CONTENT@ @CMAKE_OBJC_COMPILER_ID_ERROR_FOR_TEST@ +#define C_STD_99 199901L +#define C_STD_11 201112L +#define C_STD_17 201710L +#define C_STD_23 202311L + +#ifdef __STDC_VERSION__ +# define C_STD __STDC_VERSION__ +#endif + #if !defined(__STDC__) # if defined(__ibmxl__) || defined(__IBMC__) # define C_VERSION "90" # else # define C_VERSION # endif -#elif __STDC_VERSION__ > 201710L +#elif C_STD > C_STD_17 # define C_VERSION "23" -#elif __STDC_VERSION__ >= 201710L +#elif C_STD > C_STD_11 # define C_VERSION "17" -#elif __STDC_VERSION__ >= 201000L +#elif C_STD > C_STD_99 # define C_VERSION "11" -#elif __STDC_VERSION__ >= 199901L +#elif C_STD >= C_STD_99 # define C_VERSION "99" #else # define C_VERSION "90" diff --git a/Modules/CMakeOBJCXXCompilerId.mm.in b/Modules/CMakeOBJCXXCompilerId.mm.in index 23c25c5..265cc75 100644 --- a/Modules/CMakeOBJCXXCompilerId.mm.in +++ b/Modules/CMakeOBJCXXCompilerId.mm.in @@ -23,18 +23,25 @@ char const* qnxnto = "INFO" ":" "qnxnto[]"; @CMAKE_OBJCXX_COMPILER_ID_PLATFORM_CONTENT@ @CMAKE_OBJCXX_COMPILER_ID_ERROR_FOR_TEST@ +#define CXX_STD_98 199711L +#define CXX_STD_11 201103L +#define CXX_STD_14 201402L +#define CXX_STD_17 201703L +#define CXX_STD_20 202002L +#define CXX_STD_23 202302L + #define CXX_STD __cplusplus const char* info_language_standard_default = "INFO" ":" "standard_default[" -#if CXX_STD > 202002L +#if CXX_STD > CXX_STD_20 "23" -#elif CXX_STD > 201703L +#elif CXX_STD > CXX_STD_17 "20" -#elif CXX_STD >= 201703L +#elif CXX_STD > CXX_STD_14 "17" -#elif CXX_STD >= 201402L +#elif CXX_STD > CXX_STD_11 "14" -#elif CXX_STD >= 201103L +#elif CXX_STD >= CXX_STD_11 "11" #else "98" |