aboutsummaryrefslogtreecommitdiff
path: root/test/Analysis/malloc.cpp
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2013-02-06 00:01:14 +0000
committerAnna Zaks <ganna@apple.com>2013-02-06 00:01:14 +0000
commitb98c6fe8877b809d4da3020692c9b38f972b92cf (patch)
tree134159df94127a6c4471f0e45fa49b67c6cb69f6 /test/Analysis/malloc.cpp
parent40a94e299eadc5b80bd1dabf948d25d7c8cc4aa5 (diff)
[analyzer]Revert part of r161511; suppresses leak false positives in C++
This is a "quick fix". The underlining issue is that when a const pointer to a struct is passed into a function, we do not invalidate the pointer fields. This results in false positives that are common in C++ (since copy constructors are prevalent). (Silences two llvm false positives.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174468 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Analysis/malloc.cpp')
-rw-r--r--test/Analysis/malloc.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/test/Analysis/malloc.cpp b/test/Analysis/malloc.cpp
index 58b94ea774..a7c365289f 100644
--- a/test/Analysis/malloc.cpp
+++ b/test/Analysis/malloc.cpp
@@ -60,3 +60,10 @@ namespace PR13751 {
}
}
+struct X { void *a; };
+
+struct X get() {
+ struct X result;
+ result.a = malloc(4);
+ return result; // no-warning
+}