~/talk

Lessons from 20 years of Debugging C++ Code

Talkat ACCU 2023 · 2023-04-19..04-22· [c-and-cpp]
slides:none on file

Twenty years of C++ debugging distills to concrete steps: gather crash dumps and deploy crash-reporting, make intermittent bugs reproducible with sanitizers and stress tests, use tracepoints/data-breakpoints and disassembly to find where copies or indexing go wrong, and prefer the ideal design but ship the smallest correct patch. Real fixes include replacing a file-lock assumption with proper thread synchronization, detecting 32/64-bit shared-memory layout mismatches with static_assert, catching memory issues with address sanitizer, and always notify under mutex to avoid racey teardown.

AI-written summary · about

  1. 0:00Start
  2. 7:12Learning from a single occurrence?
  3. 12:45Debugging Process
  4. 13:30Reproduction
  5. 22:11Finding the problem
  6. 29:36Quiz
  7. 34:39Classify bug
  8. 38:04Fixing bugs
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.