diff options
author | Ted Kremenek <kremenek@apple.com> | 2010-10-28 02:50:32 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2010-10-28 02:50:32 +0000 |
commit | eaae1adb9492401df049fd9047fd1ad74cf7c7dd (patch) | |
tree | 15edcd5f43af942189d025b04d660777bad59dc6 | |
parent | 071df46743b99ea40e2cc6d5ce0d044082dd9f75 (diff) | |
download | bcm5719-llvm-eaae1adb9492401df049fd9047fd1ad74cf7c7dd.tar.gz bcm5719-llvm-eaae1adb9492401df049fd9047fd1ad74cf7c7dd.zip |
Add test case for <rdar://problem/8356342>.
llvm-svn: 117525
-rw-r--r-- | clang/test/Analysis/retain-release.m | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/clang/test/Analysis/retain-release.m b/clang/test/Analysis/retain-release.m index 064165aaf9e..c9760de2bb2 100644 --- a/clang/test/Analysis/retain-release.m +++ b/clang/test/Analysis/retain-release.m @@ -1367,3 +1367,22 @@ void r8272168() { GetAClassThatImplementsProt_R8272168(); } +// Test case for <rdar://problem/8356342>, which in the past triggered +// a false positive. +@interface RDar8356342 +- (NSDate*) rdar8356342:(NSDate *)inValue; +@end + +@implementation RDar8356342 +- (NSDate*) rdar8356342:(NSDate*)inValue { + NSDate *outValue = inValue; + if (outValue == 0) + outValue = [[NSDate alloc] init]; // no-warning + + if (outValue != inValue) + [outValue autorelease]; + + return outValue; +} +@end + |