Lightning Talk: Upgrading The Compiler Isn't Free
summary
Upgrading compilers uncovers concrete, costly failures: memset on a non-trivial class triggers new warnings, test suites fail when unordered_set iteration order reveals unspecified behavior, an enum-list left shift (a left shift of 70 bits) exposes undefined behavior that different optimizers handle differently, and standard enum comparisons produce surprising warnings about sign mismatch. Troubleshooting spans coordinating hundreds of developers and many packages; moving from gcc 83 vs gc84 changes whether code silently behaves or loudly breaks.
AI-written summary · about
chapters (6)
- 0:00Introduction
- 0:19Assumptions
- 0:49Warnings
- 2:15Undefined Behavior Example
- 3:01Compiler Bugs
- 3:40Conclusion
related talks
58m"Just switch the compiler", they said
39mFireside Chat
04mLightning Talk: The Future of C++
32mMaking Sotware Better, Despite Having Users
12mLightning Talk: Feature Flagging at Scale: Problems with Flag Cleanup
01h 42mCollective Amnesia?
32mMaking software better despite having users
06mLightning Talk: Do You Love or Hate Your C++ Build System?
