[analyzer] + a couple more malloc tests.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151008 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Analysis/malloc-interprocedural.c b/test/Analysis/malloc-interprocedural.c
index 8ae6024..d3a2ea7 100644
--- a/test/Analysis/malloc-interprocedural.c
+++ b/test/Analysis/malloc-interprocedural.c
@@ -32,6 +32,12 @@
   my_malloc1(&data, 4); // expected-warning {{Memory is never released; potential memory leak}}
 }
 
+static void test11() {
+  void *data = 0;
+  my_malloc1(&data, 4);
+  my_free1(data);
+}
+
 static void test2() {
   void * data = my_malloc2(1, 4);
   data = my_malloc2(1, 4);// expected-warning {{Memory is never released; potential memory leak}}
@@ -52,3 +58,14 @@
   return *data; // expected-warning {{Use of memory after it is freed}}
 }
 
+void test6() {
+  int *data = (int *)my_malloc2(1, 4);
+  my_free1((int*)data);
+  my_free1((int*)data); // expected-warning{{Use of memory after it is freed}}
+}
+
+// TODO: We should warn here.
+void test5() {
+  int *data;
+  my_free1((int*)data);
+}