CppCon 2019 has ended
Thursday, September 19 • 14:00 - 15:00
The C++ ABI for Dummies

Log in to save this to your schedule, view media, leave feedback and see who's attending!

The ABI (Application Binary Interface) has a huge impact on C++ libraries. But what does that mean concretely?

This talk will explain what we mean by the ABI in the context of C++. Starting from the ground up and focusing on the Itanium C++ ABI specification, we will understand what is part of the ABI and how changes in your C++ source code can result in changes to the ABI. We will also cover what ABI stability means, what use cases ABI stability enables, and what some of the costs of maintaining ABI stability are.

Keeping the point of view of a library implementer, we will see how one can control what is part of a library's ABI, using both standard and non-standard techniques like attributes. Finally, we will also see some tools that can be used to inspect parts of the ABI of a built program and detect changes to it.

avatar for Louis Dionne

Louis Dionne

C++ Standard Library Engineer, Apple
Louis is a math and computer science enthusiast who got swallowed by the C++ monster when he was a naive, unsuspecting student. He now works for Apple, where he is responsible for libc++, the Standard Library shipped with LLVM/Clang. He is a member of the C++ Standards Committee and... Read More →

Thursday September 19, 2019 14:00 - 15:00 MDT
Aurora C