blob: 3d3ef3e6c9afc7938a0a9770e5500778c55b13f7 [file] [log] [blame]
Fariborz Jahanian0dded8a2013-09-24 17:03:07 +00001// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp
Fariborz Jahanianabc11aa2011-08-29 22:21:46 +00002// RUN: %clang_cc1 -fsyntax-only -fblocks -Wno-address-of-temporary -D"id=void*" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp
3
4extern "C" {
5@class XX;
6@class YY, ZZ, QQ;
7@class ISyncClient, SMSession, ISyncManager, ISyncSession, SMDataclassInfo, SMClientInfo,
8 DMCConfiguration, DMCStatusEntry;
9
10@interface QQ
11
12@end
13
14@interface SMDataclassInfo : QQ
15- (XX*) Meth;
16- (DMCStatusEntry*)Meth2;
17@end
18
19@implementation SMDataclassInfo
20- (XX*) Meth { return 0; }
21- (DMCStatusEntry*)Meth2 { return 0; }
22@end
23
24@interface YY
25{
26 ISyncClient *p1;
27 ISyncSession *p2;
28}
29@property (copy) ISyncClient *p1;
30@end
31
32@implementation YY
33@synthesize p1;
34@end
35
36extern "C" {
37@class CCC;
38@class Protocol, P , Q;
39int I,J,K;
40};
41
42};
43
44
Fariborz Jahanian0dded8a2013-09-24 17:03:07 +000045// rdar://15027032
46@interface ISDPropertyChangeGroup
47@end
48
49@implementation ISDPropertyChangeGroup
50@class ISDClientState;
51- (id)lastModifiedGeneration : (ISDClientState *) obj
52{
53 return obj ;
54}
55@end