leak_test.c 683 B

12345678910111213141516171819202122232425
  1. #include "leak_detector.h"
  2. int main(void) {
  3. int *p[10];
  4. int i;
  5. GC_set_find_leak(1); /* for new collect versions not compiled */
  6. /* with -DFIND_LEAK. */
  7. GC_INIT(); /* Needed if thread-local allocation is enabled. */
  8. /* FIXME: This is not ideal. */
  9. for (i = 0; i < 10; ++i) {
  10. p[i] = (int*)malloc(sizeof(int)+i);
  11. }
  12. CHECK_LEAKS();
  13. for (i = 1; i < 10; ++i) {
  14. free(p[i]);
  15. }
  16. for (i = 0; i < 9; ++i) {
  17. p[i] = (int*)malloc(sizeof(int)+i);
  18. }
  19. CHECK_LEAKS();
  20. CHECK_LEAKS();
  21. CHECK_LEAKS();
  22. return 0;
  23. }