CUDA: Fix detection of default C++ standard level with MSVC host compiler
diff --git a/Modules/CMakeCUDACompilerId.cu.in b/Modules/CMakeCUDACompilerId.cu.in
index be8f1b3..cecb948 100644
--- a/Modules/CMakeCUDACompilerId.cu.in
+++ b/Modules/CMakeCUDACompilerId.cu.in
@@ -22,7 +22,15 @@
#define CXX_STD_20 202002L
#define CXX_STD_23 202302L
-#define CXX_STD __cplusplus
+#if defined(_MSC_VER) && defined(_MSVC_LANG)
+# if _MSVC_LANG > __cplusplus
+# define CXX_STD _MSVC_LANG
+# else
+# define CXX_STD __cplusplus
+# endif
+#else
+# define CXX_STD __cplusplus
+#endif
const char* info_language_standard_default = "INFO" ":" "standard_default["
#if CXX_STD > CXX_STD_23