From: Ted Kremenek Date: Thu, 22 May 2008 23:46:11 +0000 (+0000) Subject: Additional retain/release checker regression tests. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=bd2a69411d0a5a070545a012bea174b95bfbe752;p=clang Additional retain/release checker regression tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@51454 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Analysis-Apple/NSString.m b/test/Analysis-Apple/NSString.m index 93e51ab730..284131fcaf 100644 --- a/test/Analysis-Apple/NSString.m +++ b/test/Analysis-Apple/NSString.m @@ -43,3 +43,20 @@ NSString* f7(NSString* s1, NSString* s2, NSString* s3) { CFRetain(s4); return s4; // expected-warning{{leak}} } + +NSMutableArray* f8() { + + NSString* s = [[NSString alloc] init]; + NSMutableArray* a = [[NSMutableArray alloc] initWithCapacity:2]; + [a addObject:s]; + [s release]; // no-warning + return a; +} + +void f9() { + + NSString* s = [[NSString alloc] init]; + NSString* q = s; + [s release]; + [q release]; // expected-warning {{used after it is released}} +}