diff options
Diffstat (limited to 'clang/test/SemaObjC/property-and-ivar-use.m')
-rw-r--r-- | clang/test/SemaObjC/property-and-ivar-use.m | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/clang/test/SemaObjC/property-and-ivar-use.m b/clang/test/SemaObjC/property-and-ivar-use.m new file mode 100644 index 0000000..5b40d85 --- /dev/null +++ b/clang/test/SemaObjC/property-and-ivar-use.m @@ -0,0 +1,36 @@ +// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s +// Do not issue error if 'ivar' used previously belongs to the inherited class +// and has same name as @dynalic property in current class. + +typedef signed char BOOL; + +@protocol IDEBuildable +@property (readonly) BOOL hasRecursiveDependencyCycle; +@end + +@protocol IDEBuildableProduct <IDEBuildable> +@end + +@interface IDEBuildableSupportMixIn +@property (readonly) BOOL hasRecursiveDependencyCycle; +@end + +@interface Xcode3TargetBuildable <IDEBuildable> +{ + IDEBuildableSupportMixIn *_buildableMixIn; +} +@end + +@interface Xcode3TargetProduct : Xcode3TargetBuildable <IDEBuildableProduct> +@end + +@implementation Xcode3TargetBuildable +- (BOOL)hasRecursiveDependencyCycle +{ + return [_buildableMixIn hasRecursiveDependencyCycle]; +} +@end + +@implementation Xcode3TargetProduct +@dynamic hasRecursiveDependencyCycle; +@end |