Definition
Plain language
A tool that wraps a program with tripwires to catch when it touches memory it shouldn't.
As stated in the literature
A compiler-instrumented runtime memory error detector that flags out-of-bounds accesses, use-after-frees, and related violations with a stack trace.
Why it matters: Memory bugs are notoriously hard to diagnose from a crash alone, and AddressSanitizer turns silent corruption into actionable error reports.
For example, if a C program reads one byte past the end of an array, AddressSanitizer will halt and print exactly where the bad access happened.
Heard on the show
“You compile the unmodified, original project source with AddressSanitizer turned on.”Episode 014 — Why a Constrained Pipeline Beat a Full Coding Agent at Finding Bugs 30-to-1