summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-05-10 16:52:15 +0000
committerTed Kremenek <kremenek@apple.com>2009-05-10 16:52:15 +0000
commit1f8e4346fac477398c2443cbe7c0289b038db2d0 (patch)
treec8ca280a3bd1f05b43e13a50b86c26b8e0260a2f /clang/test
parent004192bde38e58e2fa08ae610b24667b5bf52c8e (diff)
downloadbcm5719-llvm-1f8e4346fac477398c2443cbe7c0289b038db2d0.tar.gz
bcm5719-llvm-1f8e4346fac477398c2443cbe7c0289b038db2d0.zip
Add special warning about returning a retained object where a GC'ed object is expected.
llvm-svn: 71397
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/Analysis/retain-release-gc-only.m10
1 files changed, 7 insertions, 3 deletions
diff --git a/clang/test/Analysis/retain-release-gc-only.m b/clang/test/Analysis/retain-release-gc-only.m
index 5aa39ec0a21..70ad54f8aa4 100644
--- a/clang/test/Analysis/retain-release-gc-only.m
+++ b/clang/test/Analysis/retain-release-gc-only.m
@@ -128,13 +128,17 @@ void f3() {
// is expected.
@interface TestReturnNotOwnedWhenExpectedOwned
- (NSString*)newString;
+- (CFMutableArrayRef)newArray;
@end
@implementation TestReturnNotOwnedWhenExpectedOwned
- (NSString*)newString {
- NSString *s = [NSString stringWithUTF8String:"hello"];
- // FIXME: Should this be an error anyway?
- return s; // no-warning
+ NSString *s = [NSString stringWithUTF8String:"hello"]; // expected-warning{{Potential leak (when using garbage collection) of an object allocated on line 136 and stored into 's'}}
+ CFRetain(s);
+ return s;
+}
+- (CFMutableArrayRef)newArray{
+ return CFArrayCreateMutable(0, 10, &kCFTypeArrayCallBacks); // no-warning
}
@end
OpenPOWER on IntegriCloud