From b8af090c78d706a11640bc4703eba6f7f56425be Mon Sep 17 00:00:00 2001 From: Ben Boeckel Date: Mon, 26 Feb 2024 17:36:46 -0500 Subject: Tests/CXXModules: add a test for the `CXX_MODULE_STD` property --- Tests/RunCMake/CXXModules/RunCMakeTest.cmake | 3 +++ .../examples/import-std-no-std-property-build-result.txt | 1 + .../examples/import-std-no-std-property-build-stdout.txt | 1 + .../examples/import-std-no-std-property/CMakeLists.txt | 10 ++++++++++ .../CXXModules/examples/import-std-no-std-property/main.cxx | 6 ++++++ 5 files changed, 21 insertions(+) create mode 100644 Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-result.txt create mode 100644 Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-stdout.txt create mode 100644 Tests/RunCMake/CXXModules/examples/import-std-no-std-property/CMakeLists.txt create mode 100644 Tests/RunCMake/CXXModules/examples/import-std-no-std-property/main.cxx diff --git a/Tests/RunCMake/CXXModules/RunCMakeTest.cmake b/Tests/RunCMake/CXXModules/RunCMakeTest.cmake index 75e062e..f34d935 100644 --- a/Tests/RunCMake/CXXModules/RunCMakeTest.cmake +++ b/Tests/RunCMake/CXXModules/RunCMakeTest.cmake @@ -226,6 +226,9 @@ if ("named" IN_LIST CMake_TEST_MODULE_COMPILATION) if ("cxx_std_23" IN_LIST CMAKE_CXX_COMPILE_FEATURES AND "import_std23" IN_LIST CMake_TEST_MODULE_COMPILATION) run_cxx_module_test(import-std) + set(RunCMake_CXXModules_NO_TEST 1) + run_cxx_module_test(import-std-no-std-property) + unset(RunCMake_CXXModules_NO_TEST) endif () endif () diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-result.txt b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-result.txt new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-result.txt @@ -0,0 +1 @@ +1 diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-stdout.txt b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-stdout.txt new file mode 100644 index 0000000..d473333 --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property-build-stdout.txt @@ -0,0 +1 @@ +((Clang)?module 'std' not found|(MSVC)?could not find module 'std') diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/CMakeLists.txt b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/CMakeLists.txt new file mode 100644 index 0000000..4ec4e36 --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/CMakeLists.txt @@ -0,0 +1,10 @@ +cmake_minimum_required(VERSION 3.29) +project(cxx_modules_import_std_no_std_property CXX) + +include("${CMAKE_SOURCE_DIR}/../cxx-modules-rules.cmake") + +set(CMAKE_CXX_MODULE_STD 0) + +add_executable(main + main.cxx) +target_compile_features(main PRIVATE cxx_std_23) diff --git a/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/main.cxx b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/main.cxx new file mode 100644 index 0000000..fee84f1 --- /dev/null +++ b/Tests/RunCMake/CXXModules/examples/import-std-no-std-property/main.cxx @@ -0,0 +1,6 @@ +import std; + +int main(int argc, char* argv[]) +{ + return 0; +} -- cgit v0.12