Posts by this author

May 6, 2025
Post comments count0
Post likes count2

C++ Language Updates in MSVC in Visual Studio 2022 17.14

Introduction In this update, we continue the tradition of bucketing bugs into helpful categories for you all to filter through along with even more notes from the compiler team as to what, exactly, was fixed. This blog is also complemented by the recent Pure Virtual C++ pre-conference talk by RanDair Porter; so please check out RanDair's talk, "MS...

C++AnnouncementFrontend
Feb 11, 2025
Post comments count0
Post likes count3

C++ Language Updates in MSVC in Visual Studio 2022 17.13

Introduction For this update, we have changed things up a little bit. We now have more distinct buckets of fixes/implemented features. This is to help guide readers who care about specific features to more easily see how the compiler front-end team is making progress on the things you care about. 17.12 notes for reference. C++23 Features As p...

AnnouncementC++Frontend
Dec 6, 2024
Post comments count0
Post likes count6

MSVC Compiler Language Updates in Visual Studio 2022 version 17.12

Introduction In alignment with the Visual Studio 2022 version 17.12 release, and based upon feedback received from the community, the MSVC compiler team would like to provide greater visibility into the C++ language-level fixes for customer-reported issues that made it into the release. This is similar to how the standard library team publishes re...

C++AnnouncementFrontend
Jun 5, 2024
Post comments count4
Post likes count0

Integrating C++ header units into Office using MSVC (3/n)

Overview Introduction In our previous two (part 1, part 2) blog posts we discussed how Office was thinking holistically about header units. In this installment we’d like to share the concrete steps taken to integrate header units into the build of Microsoft Word, and their effect on build throughput. Throughout the...

C++General C++ Seriesperformance
Sep 11, 2023
Post comments count6
Post likes count2

Integrating C++ header units into Office using MSVC (2/n)

In this follow-up blog, we will explore progress made towards getting header units working in the Office codebase. Overview Overview Last time we talked about how and why header units can be integrated into a large cross-platform codebase like Office. We discussed how header units helped surface conformance issue...

C++General C++ Series
Dec 13, 2022
Post comments count0
Post likes count3

Improving the State of Debug Performance in C++

In this blog we will explore one change the MSVC compiler has implemented in an effort to improve the codegen quality of applications in debug mode. We will highlight what the change does, and how it could be extended for the future. If debug performance is something you care about for your C++ projects, then Visual Studio 2022 version 17.5 is maki...

AnnouncementC++New Feature
Sep 12, 2022
Post comments count5
Post likes count9

Integrating C++ header units into Office using MSVC (1/n)

.cameron { color: #4472c4; } C++20 has had a lot to offer and one feature in particular requires the most thought of all when integrating into our projects: C++ modules (or C++ header units in this particular case). In this blog we will show a real world case of integrating a new C++20 feature into a large codebase that we might all...

C++General C++ Series
Jan 13, 2022
Post comments count2
Post likes count0

How we used C++20 to eliminate an entire class of runtime bugs

C++20 is here and has been supported in MSVC since 16.11, but today's post is not about how you can use it, but rather how we used it to effectively eliminate an entire class of runtime bugs by hoisting a check into compile-time. Let's get right into it! Humble beginnings In compiler design one of the very first things you need is a way to convey...

C++
Aug 10, 2021
Post comments count19
Post likes count2

Moving a project to C++ named Modules

There is a lot of hype (and perhaps restraint) to using modules in projects. The general blocker tends to be build support, but even with good build support there is a distinct lack of useful resources for practices around moving projects to using named modules (not just header units). In this blog we will take a small project I created, analyze it...

C++General C++ Series
Jul 21, 2021
Post comments count3
Post likes count0

Using C++ Modules in MSVC from the Command Line Part 1: Primary Module Interfaces

In this three-part series we will explore how to build modules and header units from the command line as well as how to use/reference them. The goal of this post is to serve as a brief tour of compiling and using primary module interfaces from the command line and the options we use. Note: This tutorial will focus primarily on dealing with IF...

C++