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

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!

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