blob: 8155318fb310a02c29089aaf14216cd7c9528546 [file] [log] [blame]
Douglas Gregora30cfe52011-11-11 19:10:28 +00001// RUN: rm -rf %t
Douglas Gregor953a61f2013-02-07 19:01:24 +00002// RUN: %clang_cc1 -x objective-c -fmodules-cache-path=%t -fmodules -I %S/Inputs/normal-module-map %s -verify
Douglas Gregoradb97992011-11-16 23:02:25 +00003#include "Umbrella/umbrella_sub.h"
Douglas Gregor484535e2011-11-11 23:20:24 +00004
5int getUmbrella() {
Douglas Gregoradb97992011-11-16 23:02:25 +00006 return umbrella + umbrella_sub;
Douglas Gregor484535e2011-11-11 23:20:24 +00007}
8
Douglas Gregor1b257af2012-12-11 22:11:52 +00009@import Umbrella2;
Douglas Gregorcf70d782011-11-12 00:05:07 +000010
Douglas Gregora081da52011-11-16 20:05:18 +000011#include "a1.h"
Douglas Gregora30cfe52011-11-11 19:10:28 +000012#include "b1.h"
13#include "nested/nested2.h"
14
15int test() {
16 return a1 + b1 + nested2;
17}
Douglas Gregor77d029f2011-12-08 19:11:24 +000018
Douglas Gregor1b257af2012-12-11 22:11:52 +000019@import nested_umbrella.a;
Douglas Gregor77d029f2011-12-08 19:11:24 +000020
21int testNestedUmbrellaA() {
22 return nested_umbrella_a;
23}
24
25int testNestedUmbrellaBFail() {
Andy Gibbsb42f2002013-04-17 08:06:46 +000026 return nested_umbrella_b;
27 // expected-error@-1{{use of undeclared identifier 'nested_umbrella_b'; did you mean 'nested_umbrella_a'?}}
28 // expected-note@Inputs/normal-module-map/nested_umbrella/a.h:1{{'nested_umbrella_a' declared here}}
Douglas Gregor77d029f2011-12-08 19:11:24 +000029}
30
Douglas Gregor1b257af2012-12-11 22:11:52 +000031@import nested_umbrella.b;
Douglas Gregor77d029f2011-12-08 19:11:24 +000032
33int testNestedUmbrellaB() {
34 return nested_umbrella_b;
35}
Douglas Gregor8b48e082012-10-12 21:15:50 +000036
Douglas Gregor1b257af2012-12-11 22:11:52 +000037@import nested_umbrella.a_extras;
Douglas Gregor8b48e082012-10-12 21:15:50 +000038
Douglas Gregor1b257af2012-12-11 22:11:52 +000039@import nested_umbrella._1;
Douglas Gregor8b48e082012-10-12 21:15:50 +000040
Douglas Gregor1b257af2012-12-11 22:11:52 +000041@import nested_umbrella.decltype_;
Douglas Gregor8b48e082012-10-12 21:15:50 +000042
43int testSanitizedName() {
44 return extra_a + one + decltype_val;
45}