blob: 2bb07aadc4c0ba2e01b5c0002b121850f6496aa6 [file] [log] [blame]
Douglas Gregor4ba7c2a2011-11-16 15:22:03 +00001// RUN: rm -rf %t
Douglas Gregor0bf886d2012-01-03 18:24:14 +00002// RUN: %clang_cc1 -fmodules -fmodule-cache-path %t -x objective-c -fmodule-name=category_top -emit-module %S/Inputs/module.map
3// RUN: %clang_cc1 -fmodules -fmodule-cache-path %t -x objective-c -fmodule-name=category_left -emit-module %S/Inputs/module.map
4// RUN: %clang_cc1 -fmodules -fmodule-cache-path %t -x objective-c -fmodule-name=category_right -emit-module %S/Inputs/module.map
5// RUN: %clang_cc1 -fmodules -fmodule-cache-path %t -x objective-c -fmodule-name=category_bottom -emit-module %S/Inputs/module.map
6// RUN: %clang_cc1 -fmodules -fmodule-cache-path %t %s -verify
Argyrios Kyrtzidis7d847c92011-09-01 00:58:55 +00007
Douglas Gregor22d09742012-01-03 18:04:46 +00008@import category_bottom;
Argyrios Kyrtzidis7d847c92011-09-01 00:58:55 +00009
Douglas Gregor6ac0b712011-09-01 19:02:18 +000010
Douglas Gregor4ba7c2a2011-11-16 15:22:03 +000011// in category_left.h: expected-note {{previous definition}}
Argyrios Kyrtzidis7d847c92011-09-01 00:58:55 +000012
13@interface Foo(Source)
Douglas Gregor4ba7c2a2011-11-16 15:22:03 +000014-(void)source;
Argyrios Kyrtzidis7d847c92011-09-01 00:58:55 +000015@end
16
17void test(Foo *foo, LeftFoo *leftFoo) {
18 [foo source];
19 [foo bottom];
20 [foo left];
21 [foo right1];
22 [foo right2];
23 [foo top];
24
25 [leftFoo left];
26 [leftFoo bottom];
27}