summaryrefslogtreecommitdiff
path: root/boehm-gc/tests/leak_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'boehm-gc/tests/leak_test.c')
-rw-r--r--boehm-gc/tests/leak_test.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/boehm-gc/tests/leak_test.c b/boehm-gc/tests/leak_test.c
new file mode 100644
index 000000000..bf563ac1c
--- /dev/null
+++ b/boehm-gc/tests/leak_test.c
@@ -0,0 +1,22 @@
+#include "leak_detector.h"
+
+int main() {
+ int *p[10];
+ int i;
+ GC_find_leak = 1; /* for new collect versions not compiled */
+ /* with -DFIND_LEAK. */
+ for (i = 0; i < 10; ++i) {
+ p[i] = malloc(sizeof(int)+i);
+ }
+ CHECK_LEAKS();
+ for (i = 1; i < 10; ++i) {
+ free(p[i]);
+ }
+ for (i = 0; i < 9; ++i) {
+ p[i] = malloc(sizeof(int)+i);
+ }
+ CHECK_LEAKS();
+ CHECK_LEAKS();
+ CHECK_LEAKS();
+ return 0;
+}