What I Learned About C++ Recently
summary
Work on standardising Contracts reveals three surprising language edges: adding pre/postconditions exposes tri-evaluation where whether an integer is a compile time expression depends on parameter-dependent evaluation, creating undefined compiler behavior; modules and templates force a strange notion of first declaration reachable via modules so which declaration wins depends on instantiation order; and return-value lifetime rules and destruction order create a subtle guarantee that can break for trivially copyable types when optimised.
AI-written summary · about
related talks
01h 21mProgramming with Contracts in C++20
01h 02mContracts in C++26 - An Insider's Overview
01h 22mContracts, Safety and Correctness in C++
01h 03mCpp Contracts - How Contracts in C++26 Can Improve C++ Code Safety and Correctness
01h 30mContracts, Safety, and the Art of Cat Herding
01h 11mThree Cool Things in C++26: Safety, Reflection & std::execution
56mCute C++ Tricks (and what you can learn from them): Part 2 of N
01h 17mFunction Contracts in Practice using C++
