The Boehm-Weiser garbage collection package, for C and C++ - garbage collection and memory leak detection libraries. A garbage collector is something which automatically frees malloc'd memory for you by working out what parts of memory your program no longer has pointers to. As a result, garbage collectors can also inform you of memory leaks (if they find memory they can free, it means you have lost all of your pointers to it, but you didn't free it). C programs may be linked against either of these, and should run (with GC or leak detection) without change. C++ programs must include a header to use garbage collection, though leak detection should work without such source code modifications. See the man page and header files. ps: garbage collection is addictive. WWW: http://www.hboehm.info/gc/