Microsoft w/ C++ to Deliver Office Across Different Platforms, Part II
summary
Microsoft uses a single modern C++ source base plus VC++ and Clang/LLVM toolchains to ship Office and SQL Server PowerBI across iOS, Android, Windows, and Mac, solving concrete problems: wchar_t 16 vs 32 mismatch (rewriting or overriding wstring and CRT APIs), divergent type sizes like long, differing exception behavior and deprecated exception specs, and compiler quirks such as two‑phase lookup. Practical fixes include header interposing to patch SDK headers and a link‑time poison pill to force static CRT overrides so cross‑platform builds actually run.
AI-written summary · about
chapters (9)
- 0:00Start
- 10:46Compilers -- Exception Specifications
- 12:15Compilers - Exception Specification Handling
- 14:14Compilers - Visual C++ Exceptions std exception constructors
- 16:05Compilers -- Two-phase Qualifier Example
- 18:38Cross-platform Language Takeaways
- 19:48C++ in Practice on Apple Platforms
- 38:33Dirty Wrappers & Clean Protocols Pure Obj-C code only needs to know the prototype of the object creation function and the protocol
- 55:31Final Thoughts
related talks
01h 03mHow Microsoft Uses C++ to Deliver Office - Huge Size, Small Components
52mCross plattform C++ development is challenging
55mC++ 20 Innovations: High-Performance Cross-Platform Architecture in C++
36mUnleashing 🦀 The Ferris Within
35mMicrosoft is Getting Rusty: A Review of Successes and Challenges
01h 02mBinary compatibility 100
01h 49mKeynote: What C++ is and what it will become
01h 01mThese aren't the COM Objects you're looking for
