Skip to content

Simplify all libc++ containers without breaking the ABI, with Nikolas Klauser

Photo of Stefan Gränitz
Hosted By
Stefan G.

Details

In our June meetup Nikolas Klauser presents his work on libc++ and how it allowed him to simplify all libc++ containers without breaking the ABI.

In LLVM 20, libc++ replaced __compressed_pair with [[no_unique_address]]. __compressed_pair has been used in many containers, as well as unique_ptr and shared_ptr. Removing __compressed_pair has significantly simplified the library and reduced the size of chromium's debug builds by about 5%. I will talk about why keeping the ABI stable is important, what to look out for when modifying ABI-sensitive code, and how I managed to remove __compressed_pair from libc++.

Small snacks and drinks will be available. There is always space for outside topics and discussions. If you have specific questions, please bring them. Looking forward to meeting everyone again!

Photo of LLVM Social Berlin group
LLVM Social Berlin
See more events
echtzeit.dev Office
Rungestr. 20, Aufgang 5, 2. OG · Berlin, al
Google map of the user's next upcoming event's location
FREE