Showing results for C++20 - C++ Team Blog

Jun 5, 2024
4
0

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

Cameron DaCamara Zachary Henkel
Cameron,
Zachary

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
6
2

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

Cameron DaCamara Zachary Henkel
Cameron,
Zachary

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
Sep 12, 2022
5
9

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

Cameron DaCamara Zachary Henkel
Cameron,
Zachary

.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
2
0

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

Cameron DaCamara
Cameron DaCamara

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
19
2

Moving a project to C++ named Modules

Cameron DaCamara
Cameron DaCamara

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
3
0

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

Cameron DaCamara
Cameron DaCamara

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++
Sep 14, 2020
37
0

Standard C++20 Modules support with MSVC in Visual Studio 2019 version 16.8

Cameron DaCamara
Cameron DaCamara

Please see our Visual Studio 2019 version 16.8 Preview 3 release notes for more of our latest features. It has been some time since our last update regarding C++ Modules conformance. The toolset, project system, and IDE teams have been hard at work to create a first class C++ Modules experience in Visual Studio 2019. There is a lot to share, so ...

C++Announcement
Aug 13, 2020
11
0

Introducing source dependency reporting with MSVC in Visual Studio 2019 version 16.7

Cameron DaCamara
Cameron DaCamara

C++20 demands a lot more from the ecosystem than ever before. With C++20 Modules on the horizon the compiler needs to work closely with project systems in order to provide rich information for build dependency gathering and making iterative builds faster for inner-loop development. The compiler and project teams have acknowledged the new relationsh...

C++Announcement
Jan 22, 2020
12
0

C++ Modules conformance improvements with MSVC in Visual Studio 2019 16.5

Cameron DaCamara
Cameron DaCamara

C++20 is right around the corner. Along with the new standard comes the much anticipated Modules feature! The compiler team initially announced that we were working on the Modules TS back in 2017 and since then we have been hard at work improving the feature and improving compiler conformance around this feature. We finally feel it is time to share...

Announcement
Jun 27, 2019
10
1

Simplify Your Code With Rocket Science: C++20’s Spaceship Operator

Cameron DaCamara
Cameron DaCamara

This post is part of a regular series of posts where the C++ product team here at Microsoft and other guests answer questions we have received from customers. The questions can be about anything C++ related: MSVC toolset, the standard language and library, the C++ standards committee, isocpp.org, CppCon, etc. Today's post is by Cameron DaCamara. ...

C++ Q&A SeriesGeneral C++ Series