Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / Rewriter / property-dot-syntax.mm
blobbbc30e3a80b4a440964a0f6927cde14a30ded0da
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.cpp
2 // RUN: %clang_cc1 -fsyntax-only -std=gnu++98 -fblocks -Wno-address-of-temporary -D"id=void*" -D"SEL=void*" -D"__declspec(X)=" %t-rw.cpp
4 void *sel_registerName(const char *);
6 @class NSString;
8 @protocol CoreDAVAccountInfoProvider
9 - (NSString *)userAgentHeader;
10 @end
12 @interface CoreDAVTask
14   id<CoreDAVAccountInfoProvider> _accountInfoProvider;
16 - (void)METHOD;
17 @end
19 @implementation CoreDAVTask
20 - (void)METHOD {
21   if ([_accountInfoProvider userAgentHeader]) {
22   }
23   if (_accountInfoProvider.userAgentHeader) {
24   }
26 @end
28 @interface A { }
29 @property (retain) NSString *scheme;
30 @end
32 @interface B : A {
33         NSString* _schemeName;
35 @end
38 @implementation B
39 -(void) test {
40  B *b;
41  b.scheme = _schemeName; // error because of this line
43 @end