diff options
author | Anna Zaks <ganna@apple.com> | 2012-09-12 22:57:34 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2012-09-12 22:57:34 +0000 |
commit | 75cfbb60a81854368a9c7c2a7cbad70c943c68c5 (patch) | |
tree | 185be2796028c149020449d48d26e9c110375968 /clang/test/Analysis/malloc.c | |
parent | e663b80975b271696cdd5111dc243d93ed0077c5 (diff) | |
download | bcm5719-llvm-75cfbb60a81854368a9c7c2a7cbad70c943c68c5.tar.gz bcm5719-llvm-75cfbb60a81854368a9c7c2a7cbad70c943c68c5.zip |
[analyzer] Fix another false positive in malloc realloc logic.
llvm-svn: 163749
Diffstat (limited to 'clang/test/Analysis/malloc.c')
-rw-r--r-- | clang/test/Analysis/malloc.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/Analysis/malloc.c b/clang/test/Analysis/malloc.c index 52a79243ce4..b939ac36d1a 100644 --- a/clang/test/Analysis/malloc.c +++ b/clang/test/Analysis/malloc.c @@ -1020,6 +1020,16 @@ int reallocButNoMallocPR13674(struct HasPtr *a, int c, int size) { return 0; } +// Test realloc with no visible malloc. +void *test(void *ptr) { + void *newPtr = realloc(ptr, 4); + if (newPtr == 0) { + if (ptr) + free(ptr); // no-warning + } + return newPtr; +} + // ---------------------------------------------------------------------------- // False negatives. |