Using Clang for Fun & Profit: Examples from the Chromium Project
summary
Chromium adopts Clang to build Mac binaries and to automate bug finding, style enforcement and refactorings: the team writes Clang plugins to flag missing virtual/override and autoapply fixes, uses clang format to reflow millions of lines, and runs sanitizers in CI and canary builds. AddressSanitizer reports heap overflows (with ~2x runtime overhead), ThreadSanitizer finds data races reliably, and UndefinedBehaviorSanitizer catches illegal shifts and float→int overflows.
AI-written summary · about
chapters (28)
- 0:00Intro
- 1:27What is Chrome
- 2:36The Code
- 3:36ThirdParty Code
- 4:34Project Growth
- 5:15Clang
- 6:45Clang in Chromium
- 7:46Why use Clang
- 9:08Missing semicolon
- 9:58Using Clang
- 10:45GCC
- 11:28Type Correction
- 12:15Warnings
- 13:48Null Pointer
- 14:44Clang Hackability
- 15:29Style Checker
- 17:20Error
- 17:48Virtual method
- 18:27clang format
- 19:51clang format demo
- 21:23Why format
- 22:16AddressSanitizer
- 24:10Demos
- 26:17Sanitizer
- 27:21ThreadSanitizer
- 32:28Demo
- 37:03Fun Profit
- 39:53Dynamic Languages
related talks
01h 05mImprove your code with Clang Tooling
29mUsing the Clang developer tools
01h 00mAdvanced Tools for Better Productivity
52m“Tools from the C++ eco-system to save a leg”
51mCode Analysis ++
48mTooling Intuition
01h 32mClosing Keynote: C++ Development Tools: Past, Present and Future
01h 01mBetter Tools in Your Clang Toolbox
