~/talk

Adventures In Updating A Legacy Codebase

Talkat CppCon 2014 · on Monday, 2014-09-08· at 16:45· Newton· [developer-experience]
links:none on file
slides:none on file

Codebase with 20+ years of history moves to C++11 and 64-bit: automated rewrites run with clang-modernize but one transform creates a subtle runtime crash when it inserts casts; many APIs get removed or recreated so old bugs repeat; boost usage is audited and removed all Boost usage where it fails on the real‑time platform; a custom std‑like thread and filesystem are implemented; dozens of large classes are made movable to eliminate pointer‑of‑pointer allocations and to reduce heap churn.

AI-written summary · about

  1. 0:00Start
  2. 8:43Brute force . Write your own tools
  3. 14:22Don't be blinded by your tools • Reviewing only the red rather than the whole line led to broken code
  4. 19:53Internal changes may be easier . Start with something you know
  5. 21:05What if your platform isn't an officially supported boost platform?
  6. 23:00Match the standard interfaces as much as possible for easy documentation
  7. 31:55Make it all work on a multicore system with C++11/14
~/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.