summaryrefslogtreecommitdiff
path: root/tests/projects/c++/modules
diff options
context:
space:
mode:
authorruki <[email protected]>2022-12-02 08:50:09 +0800
committerGitHub <[email protected]>2022-12-02 08:50:09 +0800
commit427f36fa0fc5250bf5a37b492102736bdd80867f (patch)
tree9095ee99db223c649b102eaee4419332a2609b77 /tests/projects/c++/modules
parent831ef2d7697ceea6c83aaea75c5d7765352969fa (diff)
parent4554eaf6b7aa25027c49803dc5288fdc272c3363 (diff)
Merge pull request #3125 from Arthapz/compile-private-modules
Compile private C++20 modules
Diffstat (limited to 'tests/projects/c++/modules')
-rw-r--r--tests/projects/c++/modules/private_module/src/dep1.mpp5
-rw-r--r--tests/projects/c++/modules/private_module/src/dep2.mpp7
-rw-r--r--tests/projects/c++/modules/private_module/src/use.mpp6
-rw-r--r--tests/projects/c++/modules/private_module/test.lua1
-rw-r--r--tests/projects/c++/modules/private_module/xmake.lua6
5 files changed, 25 insertions, 0 deletions
diff --git a/tests/projects/c++/modules/private_module/src/dep1.mpp b/tests/projects/c++/modules/private_module/src/dep1.mpp
new file mode 100644
index 000000000..d23fd5172
--- /dev/null
+++ b/tests/projects/c++/modules/private_module/src/dep1.mpp
@@ -0,0 +1,5 @@
+export module dep1;
+
+export int m() {
+ return 0;
+}
diff --git a/tests/projects/c++/modules/private_module/src/dep2.mpp b/tests/projects/c++/modules/private_module/src/dep2.mpp
new file mode 100644
index 000000000..c91b33043
--- /dev/null
+++ b/tests/projects/c++/modules/private_module/src/dep2.mpp
@@ -0,0 +1,7 @@
+export module dep2;
+
+import dep1;
+
+export int i() {
+ return m();
+}
diff --git a/tests/projects/c++/modules/private_module/src/use.mpp b/tests/projects/c++/modules/private_module/src/use.mpp
new file mode 100644
index 000000000..8450c341c
--- /dev/null
+++ b/tests/projects/c++/modules/private_module/src/use.mpp
@@ -0,0 +1,6 @@
+import dep1;
+import dep2;
+
+int lib() {
+ return m() + i();
+} \ No newline at end of file
diff --git a/tests/projects/c++/modules/private_module/test.lua b/tests/projects/c++/modules/private_module/test.lua
new file mode 100644
index 000000000..7717f8049
--- /dev/null
+++ b/tests/projects/c++/modules/private_module/test.lua
@@ -0,0 +1 @@
+inherit(".test_base")
diff --git a/tests/projects/c++/modules/private_module/xmake.lua b/tests/projects/c++/modules/private_module/xmake.lua
new file mode 100644
index 000000000..1930f1188
--- /dev/null
+++ b/tests/projects/c++/modules/private_module/xmake.lua
@@ -0,0 +1,6 @@
+add_rules("mode.release", "mode.debug")
+set_languages("c++20")
+target("private_module")
+ add_rules("c++")
+ set_kind("$(kind)")
+ add_files("src/*.mpp")