teak-llvm/clang/test/SemaObjC/access-property-getter.m
Fariborz Jahanian 323ddf97ba [Objective-C]. Modern property getters have side-effects.
So, place warning about property getter should not be used for side-effect
under its own group so warning can be turned off.
rdar://19137815

llvm-svn: 224479
2014-12-18 00:30:54 +00:00

54 lines
1.1 KiB
Objective-C

// RUN: %clang_cc1 -verify %s
@protocol NSObject
- (oneway void)release;
@end
@protocol XCOutputStreams <NSObject>
@end
@interface XCWorkQueueCommandInvocation
{
id <XCOutputStreams> _outputStream;
}
@end
@interface XCWorkQueueCommandSubprocessInvocation : XCWorkQueueCommandInvocation
@end
@interface XCWorkQueueCommandLocalSubprocessInvocation : XCWorkQueueCommandSubprocessInvocation
@end
@interface XCWorkQueueCommandDistributedSubprocessInvocation : XCWorkQueueCommandSubprocessInvocation
@end
@interface XCWorkQueueCommandCacheFetchInvocation : XCWorkQueueCommandSubprocessInvocation
@end
@implementation XCWorkQueueCommandCacheFetchInvocation
- (id)harvestPredictivelyProcessedOutputFiles
{
_outputStream.release; // expected-warning {{property access result unused - getters should not be used for side effects}}
return 0;
}
@end
// rdar://19137815
#pragma clang diagnostic ignored "-Wunused-getter-return-value"
@interface NSObject @end
@interface I : NSObject
@property (copy) id window;
@end
@implementation I
- (void) Meth {
[self window];
self.window;
}
@end