aboutsummaryrefslogtreecommitdiff
path: root/test/Analysis/malloc-annotations.c
diff options
context:
space:
mode:
authorJordan Rose <jordan_rose@apple.com>2012-11-15 19:11:43 +0000
committerJordan Rose <jordan_rose@apple.com>2012-11-15 19:11:43 +0000
commit63bc186d6ac0b44ba4ec6fccb5f471b05c79b666 (patch)
tree9002c9a95686003fd8a0ed2875fe5b114d4c4bde /test/Analysis/malloc-annotations.c
parentf34a5791c5c9df0348714e275adb09b8cf858460 (diff)
[analyzer] Report leaks at the closing brace of a function body.
This fixes a few cases where we'd emit path notes like this: +---+ 1| v p = malloc(len); ^ |2 +---+ In general this should make path notes more consistent and more correct, especially in cases where the leak happens on the false branch of an if that jumps directly to the end of the function. There are a couple places where the leak is reported farther away from the cause; these are usually cases where there are several levels of nested braces before the end of the function. This still matches our current behavior for when there /is/ a statement after all the braces, though. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168070 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Analysis/malloc-annotations.c')
-rw-r--r--test/Analysis/malloc-annotations.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/test/Analysis/malloc-annotations.c b/test/Analysis/malloc-annotations.c
index 2a078b6f82..3a260c3aef 100644
--- a/test/Analysis/malloc-annotations.c
+++ b/test/Analysis/malloc-annotations.c
@@ -63,8 +63,8 @@ void af1() {
}
void af1_b() {
- int *p = my_malloc(12); // expected-warning{{Memory is never released; potential leak}}
-}
+ int *p = my_malloc(12);
+} // expected-warning{{Memory is never released; potential leak}}
void af1_c() {
myglobalpointer = my_malloc(12); // no-warning
@@ -72,8 +72,8 @@ void af1_c() {
void af1_d() {
struct stuff mystuff;
- mystuff.somefield = my_malloc(12); // expected-warning{{Memory is never released; potential leak}}
-}
+ mystuff.somefield = my_malloc(12);
+} // expected-warning{{Memory is never released; potential leak}}
// Test that we can pass out allocated memory via pointer-to-pointer.
void af1_e(void **pp) {