aboutsummaryrefslogtreecommitdiff
path: root/test/Analysis/malloc.c
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2012-02-17 22:35:34 +0000
committerAnna Zaks <ganna@apple.com>2012-02-17 22:35:34 +0000
commitd8a8a3b6ad7c786dfcf341b080bd19b5d4b84b5b (patch)
treed66b9b6e0fd1fbcab33b0108359dbc913f780a0f /test/Analysis/malloc.c
parentf0dfc9c0f29fd82552896558c04043731d30b851 (diff)
[analyzer] Malloc Checker more tests.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150847 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Analysis/malloc.c')
-rw-r--r--test/Analysis/malloc.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/Analysis/malloc.c b/test/Analysis/malloc.c
index 09f38e5a28..b50ce1d392 100644
--- a/test/Analysis/malloc.c
+++ b/test/Analysis/malloc.c
@@ -519,6 +519,23 @@ int *testMalloc3() {
return y;
}
+void testElemRegion1() {
+ char *x = (void*)malloc(2);
+ int *ix = (int*)x;
+ free(&(x[0]));
+}
+
+void testElemRegion2(int **pp) {
+ int *p = malloc(12);
+ *pp = p;
+ free(pp[0]);
+}
+
+void testElemRegion3(int **pp) {
+ int *p = malloc(12);
+ *pp = p;
+ free(*pp);
+}
// Region escape testing.
unsigned takePtrToPtr(int **p);