~/talk

“dynamic_cast From Scratch”

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

Builds a complete, bug‑free reimplementation of dynamic_cast using the Itanium C++ ABI and a small set of nonportable helpers, exposes where compilers waste work (e.g. missed final optimizations), and replaces the library graph search with hand-crafted RTTI tables plus a tiny dispatch function. Tests use a Python fuzzer and end-to-end benchmarks; results show identical void* codegen and faster results for many real casts, with source and examples on GitHub.

AI-written summary · about

  1. 0:00Introduction
  2. 0:26Polymorphism basics
  3. 4:21Multiple & virtual inheritance
  4. 7:03Object layout & v-tables
  5. 12:17RTTI and v-table data
  6. 19:24Visualizing class hierarchies
  7. 25:12Dynamic cast behavior
  8. 31:44Implementing casting
  9. 37:50Runtime graph algorithms
  10. 42:06Accessibility and finalization
  11. 52:24Performance benchmarks
  12. 56:04Q&A and conclusion
~/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.