~/talk

Undefined Behavior in 2017 (part 1 of 2)

Talkat CppCon 2017 · 2017-09-24..09-29· [compilers-and-language-design, c-and-cpp]
slides:none on file

Undefined behavior (UB) lets compilers assume impossible conditions, and modern optimizers increasingly turn those assumptions into surprising breakage: GCC/Clang reorders or deletes code, a past Google Native Client refactor dropped a mask when shifting by 32 and weakened its sandbox, and UB makes realloc and memcpy uses silently invalid. Tooling gets better—Purify/Valgrind-era tools evolve into UBSan and fuzzers and projects like Csmith (≈500 compiler bugs found)—but sound static analysis is rare and appendix J lists ~200 UBs to watch for.

AI-written summary · about

  1. 0:00Introduction to UB
  2. 7:17Evolution and consequences
  3. 19:22Analysis and mitigation
  4. 48:45Conclusion and next steps
~/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.