From d1a7e51232db306c2cf5481389514bf15135e039 Mon Sep 17 00:00:00 2001 From: Arthur LAURENT Date: Sun, 11 May 2025 17:25:01 +0200 Subject: (C++ modules support) fix stdmodules_deps test for gcc as it doesn't implement private module fragment atm --- tests/projects/c++/modules/stdmodules_deps/src/bar.mpp | 7 +++++-- tests/projects/c++/modules/stdmodules_deps/src/foo.cpp | 3 +++ tests/projects/c++/modules/stdmodules_deps/src/foo.mpp | 6 ------ tests/projects/c++/modules/stdmodules_deps/xmake.lua | 1 + 4 files changed, 9 insertions(+), 8 deletions(-) create mode 100644 tests/projects/c++/modules/stdmodules_deps/src/foo.cpp (limited to 'tests/projects/c++/modules/stdmodules_deps') diff --git a/tests/projects/c++/modules/stdmodules_deps/src/bar.mpp b/tests/projects/c++/modules/stdmodules_deps/src/bar.mpp index 79d91a393..001cd7c2d 100644 --- a/tests/projects/c++/modules/stdmodules_deps/src/bar.mpp +++ b/tests/projects/c++/modules/stdmodules_deps/src/bar.mpp @@ -4,8 +4,11 @@ import std; export auto my_sum2(std::size_t a, std::size_t b) -> std::size_t; +#if defined(__GNUC__) && !defined(__clang__) +inline +#else module :private; - -auto my_sum2(std::size_t a, std::size_t b) -> std::size_t { +#endif + auto my_sum2(std::size_t a, std::size_t b) -> std::size_t { return a + a + b + b; } diff --git a/tests/projects/c++/modules/stdmodules_deps/src/foo.cpp b/tests/projects/c++/modules/stdmodules_deps/src/foo.cpp new file mode 100644 index 000000000..c1e34dec6 --- /dev/null +++ b/tests/projects/c++/modules/stdmodules_deps/src/foo.cpp @@ -0,0 +1,3 @@ +module foo; + +auto my_sum(std::size_t a, std::size_t b) -> std::size_t { return a + b; } diff --git a/tests/projects/c++/modules/stdmodules_deps/src/foo.mpp b/tests/projects/c++/modules/stdmodules_deps/src/foo.mpp index 17a3795b7..b0aab2fee 100644 --- a/tests/projects/c++/modules/stdmodules_deps/src/foo.mpp +++ b/tests/projects/c++/modules/stdmodules_deps/src/foo.mpp @@ -3,9 +3,3 @@ export module foo; import std; export auto my_sum(std::size_t a, std::size_t b) -> std::size_t; - -module :private; - -auto my_sum(std::size_t a, std::size_t b) -> std::size_t { - return a + b; -} diff --git a/tests/projects/c++/modules/stdmodules_deps/xmake.lua b/tests/projects/c++/modules/stdmodules_deps/xmake.lua index 7ee801b8c..6c53ff594 100644 --- a/tests/projects/c++/modules/stdmodules_deps/xmake.lua +++ b/tests/projects/c++/modules/stdmodules_deps/xmake.lua @@ -3,6 +3,7 @@ set_languages("c++latest") target("foo") set_kind("static") + add_files("src/foo.cpp") add_files("src/foo.mpp", {public = true}) target("bar") -- cgit v1.3.1