'checker' can help find bugs that standard tools cannot always find. The best example is memory leaks. A memory leak is a zone of memory, allocated with malloc that is not used anymore. So the memory allocated is lost. This means you program needs more memory and runs slower, since your OS might have to start swapping. It detects bad memory accesses such as: reading uninitialized memory, writing in a freed zone, writing or reading outside of a memory block, and using NULL pointers. This is particularly useful for big programs with many functions. Checker maintains bitmaps to keep track of the status of each byte of memory. The status can be writable, readable, both, or none. When memory is allocated, the new memory becomes write-only: you are not allowed to read it because it has not been initialized. But when you you write to this new block, those bytes become readable and writable. When the block is freed, the bytes become unreadable and unwritable. Red zones are unreadable and unwritable memory, so that each access to a red zone produces a warning. This project was a GNU package. It has since been decommissioned and is no longer developed.
released on 24 August 2002
|License||Verified by||Verified on||Notes|
|GPLv2||Janet Casey||1 March 2001|
Leaders and contributors
Resources and communication
|Required to use||gcc 2.8.1|
|Required to build||gcc|
This entry (in part or in whole) was last reviewed on 15 October 2009.