Back to Basics: Debugging in Cpp
Talkat CppCon 2023 · on Monday, 2023-10-02· at 11:00· Maple 3/4/5, 6700 North Gaylord Rockies Boulevard·
summary
Claims concrete debugging wins: use GDB (layout source, pretty‑printers, GDB dashboard, dynamic printf) for stepping and core inspection, run Valgrind when you can (heavy but no recompile), enable AddressSanitizer in CI (catch one‑past‑end and UB cheaply, ~2–3x slowdown), use thread sanitizer for races, add assertions and prefer panic unless error paths are tested, and try time‑travel recording to reverse‑step nondeterministic failures. The demos actually reproduce a buffer overflow, locate the stray write, and show fixes plus regression tests.
AI-written summary · about
chapters (8)
- 0:00Welcome
- 3:59Debugging advice
- 20:21Linux debugging tools
- 38:09GDB and LLDB deep dive
- 47:27Valgrind and sanitizers
- 50:22System call tracing
- 54:36Time travel debugging
- 1:00:00Q&A
related talks
01h 01mBack to Basics: Debugging and Testing in C++ Software Development
01h 05mBack To Basics: Debugging Techniques
52mNobody Can Program Correctly - Lessons From 20 Years of Debugging C++ Code
14mDebugging debuggers!!!
01h 01mBack to Basics: Test-driven Development
15mGive me 15 minutes & I'll change your view of GDB
40mLessons from two decades of writing bad code
54mDebugging Effectively
