[PR #15215] Enable WINRT_LEAN_AND_MEAN #30506

Open
opened 2026-01-31 09:41:15 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/15215

State: closed
Merged: Yes


WINRT_LEAN_AND_MEAN removes a bunch of less often used parts of the C++/WinRT headers:

  • std::hash specializations for every object
  • operator <<(ostream) overloads for any IStringable
  • Interface producers for interfaces that are marked "exclusive"

There's only one place where we were using even one of these.

Enabling this saves us (optimistically) 30 seconds of build time on the CI agents and shrinks our largest PCH (TerminalApp, x64, Debug) by about 150MiB.

It's not huge, but it's not nothing.

**Original Pull Request:** https://github.com/microsoft/terminal/pull/15215 **State:** closed **Merged:** Yes --- `WINRT_LEAN_AND_MEAN` removes a bunch of less often used parts of the C++/WinRT headers: - `std::hash` specializations for every object - `operator <<(ostream)` overloads for any `IStringable` - Interface producers for interfaces that are marked "exclusive" There's only one place where we were using even one of these. Enabling this saves us (optimistically) 30 seconds of build time on the CI agents and shrinks our largest PCH (TerminalApp, x64, Debug) by about 150MiB. It's not huge, but it's not nothing.
claunia added the pull-request label 2026-01-31 09:41:15 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#30506