Expert · Module 14 · Lesson 3 of 4
The ABI: Name Mangling, Layout and Library Boundaries
Decode mangled names, track class layout and alignment, and follow inline and versioning rules that keep shipped libraries compatible.
By the end you can
- Decode mangled names and explain linkage across library boundaries
- Predict how member order and alignment change object layout
- Apply inline and versioning rules that preserve compatibility
Builds on Profiling With perf and Reading Flame Graphs.
01 · A question first
You ship a faster queue in a shared library, bump the version, and old apps crash on launch with missing symbols and shifted fields. The code passed tests, yet the boundary broke. Which name changed, which offset moved, and what rule would have kept both stable?
Make a guess before you read on.
02 · The idea
Members only
Unlock the full lesson
This lesson is part of the membership. Join to read it in full, along with every other premium deep dive.
What's inside
- Start with the problem
- How the idea works
- See mangling and layout side by side
- Why it is correct
- What it costs
- Pitfalls and variations
- Where it is used
03 · Practice
Asked in interviews
Something wrong with this lesson? Report a problem