diff options
Diffstat (limited to 'clang/test')
17 files changed, 45 insertions, 0 deletions
diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both/a.h b/clang/test/Modules/Inputs/ModuleMapLocations/Both/a.h new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both/a.h diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both/b.h b/clang/test/Modules/Inputs/ModuleMapLocations/Both/b.h new file mode 100644 index 00000000000..3abbd398c7e --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both/b.h @@ -0,0 +1 @@ +void wont_be_found1(void); diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both/module.map b/clang/test/Modules/Inputs/ModuleMapLocations/Both/module.map new file mode 100644 index 00000000000..bf5aaed37ab --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both/module.map @@ -0,0 +1,3 @@ +module both { + header "b.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both/module.modulemap b/clang/test/Modules/Inputs/ModuleMapLocations/Both/module.modulemap new file mode 100644 index 00000000000..0bfa0968c45 --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both/module.modulemap @@ -0,0 +1,3 @@ +module both { + header "a.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Headers/a.h b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Headers/a.h new file mode 100644 index 00000000000..9dabfc089a1 --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Headers/a.h @@ -0,0 +1 @@ +void will_be_found2(void); diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Headers/b.h b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Headers/b.h new file mode 100644 index 00000000000..26169fa2f69 --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Headers/b.h @@ -0,0 +1 @@ +void wont_be_found2(void); diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Modules/module.modulemap b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Modules/module.modulemap new file mode 100644 index 00000000000..da49ba5392f --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/Modules/module.modulemap @@ -0,0 +1,3 @@ +framework module Both_F { + header "a.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/module.map b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/module.map new file mode 100644 index 00000000000..8fc108d3eaa --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Both_F.framework/module.map @@ -0,0 +1,3 @@ +framework module Both_F { + header "b.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Inferred.framework/Headers/Inferred.h b/clang/test/Modules/Inputs/ModuleMapLocations/Inferred.framework/Headers/Inferred.h new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Inferred.framework/Headers/Inferred.h diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap/a.h b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap/a.h new file mode 100644 index 00000000000..d571c6e4f79 --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap/a.h @@ -0,0 +1 @@ +void will_be_found1(void); diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap/module.modulemap b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap/module.modulemap new file mode 100644 index 00000000000..2ac7cc52b4f --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap/module.modulemap @@ -0,0 +1,3 @@ +module module_modulemap { + header "a.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Headers/a.h b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Headers/a.h new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Headers/a.h diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Modules/module.modulemap b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Modules/module.modulemap new file mode 100644 index 00000000000..400f3043e7a --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Modules/module.modulemap @@ -0,0 +1,3 @@ +framework module Module_ModuleMap_F { + header "a.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Modules/module.private.modulemap b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Modules/module.private.modulemap new file mode 100644 index 00000000000..25a469dafbe --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/Modules/module.private.modulemap @@ -0,0 +1,3 @@ +explicit framework module Module_ModuleMap_F.Private { + header "private.h" +} diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/PrivateHeaders/private.h b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/PrivateHeaders/private.h new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/Module_ModuleMap_F.framework/PrivateHeaders/private.h diff --git a/clang/test/Modules/Inputs/ModuleMapLocations/module.modulemap b/clang/test/Modules/Inputs/ModuleMapLocations/module.modulemap new file mode 100644 index 00000000000..a8f5d1fbf25 --- /dev/null +++ b/clang/test/Modules/Inputs/ModuleMapLocations/module.modulemap @@ -0,0 +1,2 @@ +framework module * { +} diff --git a/clang/test/Modules/modulemap-locations.m b/clang/test/Modules/modulemap-locations.m new file mode 100644 index 00000000000..9acdcd63436 --- /dev/null +++ b/clang/test/Modules/modulemap-locations.m @@ -0,0 +1,18 @@ +// RUN: rm -rf %t +// RUN: %clang_cc1 -fmodules -fmodules-cache-path=%t -I %S/Inputs/ModuleMapLocations/Module_ModuleMap -I %S/Inputs/ModuleMapLocations/Both -F %S/Inputs/ModuleMapLocations -x objective-c -fsyntax-only %s -verify + +// regular +@import module_modulemap; +@import both; +// framework +@import Module_ModuleMap_F; +@import Module_ModuleMap_F.Private; +@import Both_F; +@import Inferred; + +void test() { + will_be_found1(); + wont_be_found1(); // expected-warning{{implicit declaration of function 'wont_be_found1' is invalid in C99}} + will_be_found2(); + wont_be_found2(); // expected-warning{{implicit declaration of function 'wont_be_found2' is invalid in C99}} +} |

