Standard Library Compatibility Guidelines (SD-8)
summary
A new standing document SD-8 records that the committee reserves the right to add names, members, overloads, default arguments and change return types in <std>, so code that: injects symbols into std, uses using namespace std, makes unqualified snake_case calls (hit by argument-dependent lookup), forward-declares std types, takes addresses of std functions, or defines iostream/hash for std types risks build breaks, ODR hell, or silent behavioral changes; Clang-Tidy checks and Abseil-style compatibility rules are planned to help.
AI-written summary · about
chapters (8)
- 0:00Introduction and upgrade challenges
- 7:51SD-8 overview and purpose
- 11:43Adding names to std namespace
- 20:46ADL and unqualified calls
- 28:04New methods and overloads in std
- 35:01ODR violations and operator overloads
- 45:53Hyrum's Law and future direction
- 52:27Q&A session
related talks
57mHow To Implement the C++ Standard Library - (Part 1 of 2)
01h 02mC++ Committee's Library Evolution Working Group Panel
08mISO/IEC 14882
58mKnockin' on Header's Door: An Overview of C++ Modules
33mMSVC C++20/23 Update
59mHow to Implement the C++ Standard Library (Part 2): An Excursion into libc++
59mThe Best Parts of C++
48mDesign by Introspection
