summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2009-05-05 17:46:22 +0000
committerTed Kremenek <kremenek@apple.com>2009-05-05 17:46:22 +0000
commitdad8889d627deba861ed78ad7730c68b9bfd1def (patch)
tree234b8174cb8a2e01f4f39c76aca7c9e8c71e60a3
parent44f9d7a8f01cd5943095a2312c27bfe7ea3c682e (diff)
downloadbcm5719-llvm-dad8889d627deba861ed78ad7730c68b9bfd1def.tar.gz
bcm5719-llvm-dad8889d627deba861ed78ad7730c68b9bfd1def.zip
Enhance ownership attribute tests with functions that use the attributes!
llvm-svn: 70984
-rw-r--r--clang/test/Analysis/retain-release.m16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/Analysis/retain-release.m b/clang/test/Analysis/retain-release.m
index b7b2efa7976..9ed10f812f8 100644
--- a/clang/test/Analysis/retain-release.m
+++ b/clang/test/Analysis/retain-release.m
@@ -463,6 +463,22 @@ void test_attr_1b(TestOwnershipAttr *X) {
NSString *str = [X returnsAnOwnedCFString]; // expected-warning{{leak}}
}
+__attribute__((ns_returns_owned))
+NSString* test_attr_1c(TestOwnershipAttr *X) {
+ NSString *str = [X returnsAnOwnedString]; // no-warning
+ return str;
+}
+
+void test_attr_1d_helper(NSString* str __attribute__((ns_retains)));
+
+__attribute__((ns_returns_owned))
+NSString* test_attr_1d(TestOwnershipAttr *X) {
+ NSString *str = [X returnsAnOwnedString]; // expected-warning{{leak}}
+ test_attr_1d_helper(str);
+ return str;
+}
+
+
void test_attr_2(TestOwnershipAttr *X) {
NSString *str = [X returnsAnOwnedString]; // expected-warning{{leak}}
[X myRetain:str];
OpenPOWER on IntegriCloud