summaryrefslogtreecommitdiffstats
path: root/clang/test/Modules
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/Modules')
-rw-r--r--clang/test/Modules/Inputs/private3/private.h7
-rw-r--r--clang/test/Modules/Inputs/private3/public.h11
-rw-r--r--clang/test/Modules/private.modulemap35
3 files changed, 53 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/private3/private.h b/clang/test/Modules/Inputs/private3/private.h
new file mode 100644
index 00000000000..cf34b14c2e5
--- /dev/null
+++ b/clang/test/Modules/Inputs/private3/private.h
@@ -0,0 +1,7 @@
+#ifndef PRIVATE_H
+#define PRIVATE_H
+
+void priv();
+
+#endif
+
diff --git a/clang/test/Modules/Inputs/private3/public.h b/clang/test/Modules/Inputs/private3/public.h
new file mode 100644
index 00000000000..2cf9d214d34
--- /dev/null
+++ b/clang/test/Modules/Inputs/private3/public.h
@@ -0,0 +1,11 @@
+#ifndef PUBLIC_H
+#define PUBLIC_H
+
+#include "private.h"
+
+void pub() {
+ priv();
+}
+
+#endif
+
diff --git a/clang/test/Modules/private.modulemap b/clang/test/Modules/private.modulemap
new file mode 100644
index 00000000000..f8b150447b0
--- /dev/null
+++ b/clang/test/Modules/private.modulemap
@@ -0,0 +1,35 @@
+// RUN: rm -rf %t
+// RUN: cd %S
+// RUN: %clang_cc1 -fmodules -x c++ -std=c++11 -fmodules-cache-path=%t \
+// RUN: -I%S/Inputs/private3 -emit-module -fmodule-name=A -o %t/m.pcm %s
+// RUN: %clang_cc1 -fmodules -x c++ -std=c++11 -fmodules-cache-path=%t \
+// RUN: -I%S/Inputs/private3 -emit-module -fmodule-name=B -o %t/m.pcm %s
+// RUN: %clang_cc1 -fmodules -x c++ -std=c++11 -fmodules-cache-path=%t \
+// RUN: -I%S/Inputs/private3 -emit-module -fmodule-name=C -o %t/m.pcm %s
+// RUN: %clang_cc1 -fmodules -x c++ -std=c++11 -fmodules-cache-path=%t \
+// RUN: -I%S/Inputs/private3 -emit-module -fmodule-name=D -o %t/m.pcm %s
+
+module A {
+ header "Inputs/private3/public.h"
+ private header "Inputs/private3/private.h"
+}
+module B {
+ header "Inputs/private3/public.h"
+ module "private.h" {
+ private header "Inputs/private3/private.h"
+ }
+}
+module C {
+ module "public.h" {
+ header "Inputs/private3/public.h"
+ }
+ private header "Inputs/private3/private.h"
+}
+module D {
+ module "public.h" {
+ header "Inputs/private3/public.h"
+ }
+ module "private.h" {
+ private header "Inputs/private3/private.h"
+ }
+}
OpenPOWER on IntegriCloud