diff options
| author | Anna Zaks <ganna@apple.com> | 2012-02-23 22:53:29 +0000 |
|---|---|---|
| committer | Anna Zaks <ganna@apple.com> | 2012-02-23 22:53:29 +0000 |
| commit | 4b062cb9047629ae3d75dff047da8bb0ae583cac (patch) | |
| tree | 287e4960df835ff2caa5a23f4f607678c4662ff6 /clang/test/Analysis/keychainAPI.m | |
| parent | 86f8266b9f6dc2452176ae5a8edca52ce785a424 (diff) | |
[analyzer] KeyChainAPI: unique the leaks by allocation site.
(Very similar to the previous change in malloc.)
llvm-svn: 151297
Diffstat (limited to 'clang/test/Analysis/keychainAPI.m')
| -rw-r--r-- | clang/test/Analysis/keychainAPI.m | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/clang/test/Analysis/keychainAPI.m b/clang/test/Analysis/keychainAPI.m index a98ebfdf42af..c91982fef0dc 100644 --- a/clang/test/Analysis/keychainAPI.m +++ b/clang/test/Analysis/keychainAPI.m @@ -370,9 +370,18 @@ void allocAndFree1() { my_FreeParam(ptr, outData); } -void allocNoFree2() { +void consumeChar(char); + +void allocNoFree2(int x) { OSStatus st = 0; - void *outData = my_AllocateReturn(&st); // expected-warning{{Allocated data is not released:}} + void *outData = my_AllocateReturn(&st); + if (x) { + consumeChar(*(char*)outData); // expected-warning{{Allocated data is not released:}} + return; + } else { + consumeChar(*(char*)outData); + } + return; } void allocAndFree2(void *attrList) { |
