KEYNOTE: De-fragmenting C++: Making exceptions more affordable and usable
summary
Survey finds ~52% of projects ban exceptions (3,000 responses, later 81-confirmation), so proposal targets fractured C++ error handling with four coordinated fixes: an opt-in throws keyword that returns a compact, value-based lightweight exception (std::error-like) to avoid heap alloc and RTTI, clearer rules separating recoverable errors vs bugs vs resource exhaustion, and fail-fast allocation defaults plus migration paths (prototype work and Boost/expected experience show feasibility). Claims: zero-overhead when unused, deterministic time/space for error reporting, and practical backward-compatible migration.
AI-written summary · about
chapters (7)
- 0:00Introduction and context
- 12:09Problem of C++ dialects and fragmentation
- 21:36Definition of recoverable errors
- 27:38Proposal for lightweight exceptions
- 44:02Allocation failures and correctness
- 53:01Explicit try for visible control flow
- 1:01:10Q&A and summary
related talks
01h 33mDe-fragmenting C++: Making Exceptions and RTTI More Affordable and Usable
01h 03m“What Could Possibly Go Wrong?: A Tale of Expectations and Exceptions”
44mThe Dawn of a New Error
44mError handling in C++: as easy as "use exceptions"?
01h 23mC++ Exceptions
45mTo Err is Human - Robust Error Handling in C++26
01h 28mKeynote: Safety, Security, Safety and C / C++ - C++ Evolution
01h 02mBack to Basics: Exception Handling and Exception Safety
