Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / SemaObjC / property-and-ivar-use.m
bloba9974945b2c0d0f2f8f470a3a7c01aa82a9b4341
1 // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
2 // expected-no-diagnostics
3 // Do not issue error if 'ivar' used previously belongs to the inherited class
4 // and has same name as @dynalic property in current class.
6 typedef signed char BOOL;
8 @protocol IDEBuildable
9 @property (readonly) BOOL hasRecursiveDependencyCycle;
10 @end
12 @protocol IDEBuildableProduct <IDEBuildable>
13 @end
15 @interface IDEBuildableSupportMixIn 
16 @property (readonly) BOOL hasRecursiveDependencyCycle;
17 @end
19 @interface Xcode3TargetBuildable <IDEBuildable>
21   IDEBuildableSupportMixIn *_buildableMixIn;
23 @end
25 @interface Xcode3TargetProduct : Xcode3TargetBuildable <IDEBuildableProduct>
26 @end
28 @implementation Xcode3TargetBuildable
29 - (BOOL)hasRecursiveDependencyCycle
31     return [_buildableMixIn hasRecursiveDependencyCycle];
33 @end
35 @implementation Xcode3TargetProduct
36 @dynamic hasRecursiveDependencyCycle;
37 @end