summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/Modules')
-rw-r--r--clang/test/Modules/Inputs/Module.framework/Headers/Buried/Treasure.h1
-rw-r--r--clang/test/Modules/Inputs/Module.framework/Headers/Module.h3
-rw-r--r--clang/test/Modules/Inputs/Module.framework/Headers/Sub.h2
-rw-r--r--clang/test/Modules/inferred-submodules.c15
4 files changed, 21 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/Module.framework/Headers/Buried/Treasure.h b/clang/test/Modules/Inputs/Module.framework/Headers/Buried/Treasure.h
new file mode 100644
index 00000000000..6e81adcb2b6
--- /dev/null
+++ b/clang/test/Modules/Inputs/Module.framework/Headers/Buried/Treasure.h
@@ -0,0 +1 @@
+unsigned *Buried_Treasure;
diff --git a/clang/test/Modules/Inputs/Module.framework/Headers/Module.h b/clang/test/Modules/Inputs/Module.framework/Headers/Module.h
index 9bf6a27edf6..be88bb5adc2 100644
--- a/clang/test/Modules/Inputs/Module.framework/Headers/Module.h
+++ b/clang/test/Modules/Inputs/Module.framework/Headers/Module.h
@@ -14,4 +14,7 @@ const char *getModuleVersion(void);
#define MODULE_H_MACRO 1
#__private_macro__ MODULE_H_MACRO
+#include <Module/Sub.h>
+#include <Module/Buried/Treasure.h>
+
#endif // MODULE_H
diff --git a/clang/test/Modules/Inputs/Module.framework/Headers/Sub.h b/clang/test/Modules/Inputs/Module.framework/Headers/Sub.h
new file mode 100644
index 00000000000..64be702fdc5
--- /dev/null
+++ b/clang/test/Modules/Inputs/Module.framework/Headers/Sub.h
@@ -0,0 +1,2 @@
+int *Module_Sub;
+
diff --git a/clang/test/Modules/inferred-submodules.c b/clang/test/Modules/inferred-submodules.c
new file mode 100644
index 00000000000..9c164d8c52b
--- /dev/null
+++ b/clang/test/Modules/inferred-submodules.c
@@ -0,0 +1,15 @@
+// RUN: rm -rf %t
+// RUN: %clang_cc1 -x objective-c -Wauto-import -fmodule-cache-path %t -fauto-module-import -F %S/Inputs %s -verify
+
+__import_module__ Module.Sub;
+
+void test_Module_Sub() {
+ int *ip = Module_Sub;
+}
+
+__import_module__ Module.Buried.Treasure;
+
+void dig() {
+ unsigned *up = Buried_Treasure;
+}
+
OpenPOWER on IntegriCloud