summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2010-10-28 02:50:32 +0000
committerTed Kremenek <kremenek@apple.com>2010-10-28 02:50:32 +0000
commiteaae1adb9492401df049fd9047fd1ad74cf7c7dd (patch)
tree15edcd5f43af942189d025b04d660777bad59dc6
parent071df46743b99ea40e2cc6d5ce0d044082dd9f75 (diff)
downloadbcm5719-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.m19
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
+
OpenPOWER on IntegriCloud