summaryrefslogtreecommitdiffstats
path: root/Tests
diff options
context:
space:
mode:
authorBen Boeckel <ben.boeckel@kitware.com>2023-12-05 14:19:32 (GMT)
committerBen Boeckel <ben.boeckel@kitware.com>2023-12-05 14:19:32 (GMT)
commite63983956d973e9f3bcc6af03eaf00bf0e3f59b5 (patch)
treecfeae9923483e0885d8fbbbdcb1694914e04b512 /Tests
parent8a658fb9ecd48492a5cf6beefad8e691649aaf76 (diff)
downloadCMake-e63983956d973e9f3bcc6af03eaf00bf0e3f59b5.zip
CMake-e63983956d973e9f3bcc6af03eaf00bf0e3f59b5.tar.gz
CMake-e63983956d973e9f3bcc6af03eaf00bf0e3f59b5.tar.bz2
Tests/CXXModules: enhance `internal-partitions` test
This test previously did not *require* that the internal partition be specified as a transitive usage because nothing from it was exposed. Plumb through usages such that the internal partitions are required.
Diffstat (limited to 'Tests')
-rw-r--r--Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx6
-rw-r--r--Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx5
-rw-r--r--Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx2
-rw-r--r--Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx5
4 files changed, 17 insertions, 1 deletions
diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx b/Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx
index 3b3d313..b180cb0 100644
--- a/Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx
+++ b/Tests/RunCMake/CXXModules/examples/internal-partitions/importable.cxx
@@ -3,6 +3,12 @@ import :internal_partition;
#include "internal-partitions_export.h"
+export struct module_struct
+{
+private:
+ partition_struct p;
+};
+
export INTERNAL_PARTITIONS_EXPORT int from_import()
{
return from_partition();
diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx b/Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx
index 1e9d108..9dc1470 100644
--- a/Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx
+++ b/Tests/RunCMake/CXXModules/examples/internal-partitions/internal.cxx
@@ -1,5 +1,10 @@
export module internal;
+export struct internal_struct
+{
+ int x;
+};
+
export int from_internal()
{
return 0;
diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx b/Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx
index feb38d2..692a470 100644
--- a/Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx
+++ b/Tests/RunCMake/CXXModules/examples/internal-partitions/main.cxx
@@ -2,5 +2,5 @@ import importable;
int main(int argc, char* argv[])
{
- return from_import();
+ return from_import() * sizeof(module_struct);
}
diff --git a/Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx b/Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx
index 3d3d92c..67ab2ff3 100644
--- a/Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx
+++ b/Tests/RunCMake/CXXModules/examples/internal-partitions/partition.cxx
@@ -1,6 +1,11 @@
module importable:internal_partition;
import internal;
+struct partition_struct
+{
+ internal_struct i;
+};
+
int from_partition()
{
return from_internal();