C++ Modules: Year 2021
summary
C++20 modules are production-ready in MSVC, present as GCC 11 experimental and on a Clang branch, with build support in Ninja, Build2, Meson and CMake experimental. Modules provide true interface/implementation separation, isolation from macros, header units and reusable .ifc metadata files that are an order of magnitude smaller than PCHs. Compilation throughput typically improves 5–10x in tests and can reach 42x in real workloads. The .ifc format is homogeneous tables plus string indexes, suitable for tooling, distribution and language bindings.
AI-written summary · about
chapters (6)
- 0:00Introduction to C++ modules
- 10:43Compiler and toolchain support
- 15:05Tooling and semantic representation
- 20:16Deep dive into IFC structure
- 24:58Call to action
- 26:40Q&A and closing
related talks
01h 10m“C++ Modules: The State of The Union"
58mKnockin' on Header's Door: An Overview of C++ Modules
01h 04mProgramming with C++ Modules: Guide for the Working
01h 11mA Practical Introduction to C++20's Modules
01h 01mC++20 Modules - Review of the Current State of C++ Modules 2024
34mPractical C++20 Modules and the future of tooling around C++ Modules
01h 01mPractical C++ Modules
01h 01mLarge Scale C++ with Modules: What You Should Know
