(Edit: An earlier version of this blog post had the wrong version number 17.4, the correct version is 17.14)

After having converted our C++20 sources to use modules months ago, I now installed the newly released version 17.14 of Microsoft Visual Studio Community 2022.

To our surprise, we now noticed - caused by the mere upgrade of the compiler to version 17.14! - a significant reduction in build time from ~3 min to 2:26 min for a full build of our application.

We have a branch where we use the language option “latest” (/std:c++latest) and “import std”. The full build for this branch is now down to 2:04 min (was ~2:30 min before).

An impressive improvement!

We are currently aggregating classes into a bit bigger partitions, moving away from our pre-module style where we had lots of small header files.

The first module compiler bug I reported, which calls the wrong destructor for a class, apparently has been fixed, but has not made it into 17.14. We’re looking forward to seeing this fix arriving at our computers.

There is another annoying bug which blocks forward declaring a class in an internal partition and defining the class in a different internal partition of the same module. Hopefully this will get fixed soon too!

Thank you to the folks at Microsoft for compiling our code!