Sanitize your C++ code
summary
Concrete claims and hard numbers: AddressSanitizer finds buffer overflows and use‑after‑free, ThreadSanitizer detects data races and deadlocks, MemorySanitizer is bit‑level and finds uninitialized reads. Reports include stack traces and allocation traces, Chrome/Chromium yields ~3,000 bugs found, typical slowdowns range ~2× for ASan and 4–10× for TSan with memory costs 2×–8×, MSan doubles cost with origins. Tooling requires recompiling with clang/GCC, has platform limits (TSan/MSan mainly x86_64 Linux), and needs annotated or rebuilt libraries for complete coverage.
AI-written summary · about
chapters (11)
- 0:00Introduction and C++ Bugs
- 1:48Address Sanitizer (ASan)
- 9:02ASan Implementation
- 14:24ASan Performance and Usage
- 20:13Thread Sanitizer (TSan)
- 30:49TSan Limitations
- 32:37Memory Sanitizer (MSan)
- 39:11MSan Origin Tracking
- 46:57Undefined Behavior Sanitizer
- 49:03Tool Deployment Challenges
- 52:13Future of C++ Tooling
related talks
01h 00mSanitize for your Sanity: Sanitizers tools for Modern C++
59mBeyond Sanitizers...
50mAddressSanitizer/ThreadSanitizer for Linux Kernel
40mAddressSanitizer, or How to Make C/C++ Programs More Reliable and Secure
36mCode Analysis: Empowering developers to write performant, reliable, and safe C++
50mC++ Sanitizers & Fuzzing for the Windows Platform Using New Compilers...
01h 29mAddressSanitizer on Windows
14mSANRAZOR: Reducing Redundant Sanitizer Checks in C/C++ Programs
