diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-05-05 17:46:22 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-05-05 17:46:22 +0000 |
commit | dad8889d627deba861ed78ad7730c68b9bfd1def (patch) | |
tree | 234b8174cb8a2e01f4f39c76aca7c9e8c71e60a3 | |
parent | 44f9d7a8f01cd5943095a2312c27bfe7ea3c682e (diff) | |
download | bcm5719-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.m | 16 |
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]; |