CppCon 2019 has ended
Back To Schedule
Friday, September 20 • 14:45 - 15:45
Building Modules

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

C++20 brings us modules, which, for the first time in 40 years, change the fundamental way in which we build code. In this talk we will cover the different ways C++ code using modules can be built, explore some actual build systems supporting modules, and explain the build performance implications of each method. Modules provide isolation between components to a level never before available in C++, and allow us to share the work of parsing interfaces between compile steps. At their core both headers and modules are represented by a dependency graph. Conceptually, headers resolve this graph by duplicating, pruning, and flattening it for each translation unit. Modules can avoid this duplication, but if they do they pay for it with serialization and synchronization overhead. The end result of this trade-off depends on the shape of your build.

avatar for Michael Spencer

Michael Spencer

Compiler Engineer, Apple

Friday September 20, 2019 14:45 - 15:45 MDT
Summit 8/9