46 lines · plain
1// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc -fobjc-runtime=macosx-fragile-10.5 %s -o %t-rw.cpp2// RUN: %clang_cc1 -fsyntax-only -Wno-address-of-temporary -D"SEL=void*" -D"id=void*" -D"__declspec(X)=" %t-rw.cpp3 4@protocol NSPortDelegate;5@interface NSConnection @end6 7@interface NSMessagePort8- (void) clone;9@end10 11@implementation NSMessagePort12- (void) clone {13 NSConnection <NSPortDelegate> *conn = 0;14 id <NSPortDelegate> *idc = 0;15}16@end17 18@protocol Proto1, Proto2;19 20@protocol Proto21@end22 23unsigned char func(id<Proto1, Proto2> inProxy);24 25id bar(id);26 27void f() {28 id a;29 id b = bar((id <Proto>)a);30}31 32@protocol NSObject @end33@class NSRunLoop;34 35@protocol CoreDAVTaskManager <NSObject> 36 @property (retain) NSRunLoop *workRunLoop; 37@end38 39@protocol some_protocol;40 41void foo (int n)42{43 id<some_protocol> array[n];44}45 46