C++ Team Blog
The latest in C++, Visual Studio, VS Code, and vcpkg from the MSFT C++ team
Latest posts
A Multitude of Updates in Visual Studio 2019 version 16.8 Preview 3
Visual Studio 2019 version 16.8 Preview 3 comes with a huge collection of updates for C++ programmers. Download today to try out new additions in conformance, performance, and productivity. C++20 We’ve improved support for major C++20 features across our compiler, standard library, and IDE. You can now use Modules, Concepts, Coroutines, and (some of) Ranges all in the same project! C++20 Coroutines are now feature-complete and available under /std:c++latest. When using C++20 Coroutines you should include the <coroutine> header. Support for our legacy behaviour is available under <experimental/corout...
Debug Linux core dumps in Visual Studio
In Visual Studio 2019 version 16.8 Preview 3 we added the ability to debug Linux core dumps on the Windows Subsystem for Linux (WSL) or a remote Linux system directly from Visual Studio. This support is specific to the “Native Only" debugger type for unmanaged C++ code. We understand that some teams develop on Windows but deploy to both Windows and Linux (or just Linux!) and rely on a CI system to catch Linux-specific errors. This feature will make your life easier if you run a Windows shop but deploy to Linux servers and want to debug crashes in a familiar environment. To get started, select Debug > Ot...
C++ Coroutines in Visual Studio 2019 Version 16.8
Please see our Visual Studio 2019 version 16.8 Preview 3 release notes for more of our latest features. It's been a long journey for coroutines in C++ and in MSVC. We announced an early preview of resumable functions in 2013, followed up by the switch and initial C++ standardization proposals in 2014, to proposal revisions in 2015, and have continued tracking the Coroutines TS (Technical Specification) progress through Visual Studio 2017 and 2019. With the adoption of coroutines into the C++ standard in 2019, we are now pleased to announce feature completion of C++20 coroutines in Visual Studio 2019 version 1...
Standard C++20 Modules support with MSVC in Visual Studio 2019 version 16.8
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 let's get right into it: What's new? Implies C++ Modules Since MSVC began down the path of implementing the Modules TS the toolset has always required the use of on any compilation. Since the merge of Modules into the C++20 standard (we ...
C11 and C17 Standard Support Arriving in MSVC
Please see our Visual Studio 2019 version 16.8 Preview 3 release notes for more of our latest features. Update: Windows 10 SDK version 2104 has been released, which includes the changes needed for C11 and C17 as well as the conformant preprocessor. It can be downloaded here. To use this SDK, follow the instructions from step 3. Our team is happy to announce that C11 and C17 are becoming supported language versions in the MSVC compiler toolset starting with Visual Studio 2019 version 16.8 Preview 3! For many years Visual Studio has only supported C to the extent of it being required for C++. Things are ab...
vcpkg: Accelerate your team development environment with binary caching and manifests
This post was updated on September 21, 2020 to add more information on the GitHub Packages binary caching example. Please see our Visual Studio 2019 version 16.8 Preview 3 release notes for more of our latest features. September is the biggest month for us in the Microsoft C++ team as it’s CppCon month! Our team has many exciting announcements for you this week, including a significant update to the vcpkg library manager for C/C++. We are excited to announce support for vcpkg binary caching and manifest files. These are key features that have been requested by our users from the beginning, and are intended ...
Microsoft C++ Team at CppCon 2020
The Microsoft C++ team has an exciting lineup of sessions at CppCon 2020. Many of us will also be present at our team’s booth in the virtual exhibition hall throughout the conference. Come say hi and let us know if you have any questions about our talks, products, or anything else! We’ll be making a few exciting announcements about Visual Studio and Visual Studio Code. We’re also running a survey on the C++ ecosystem and giving away five copies of Microsoft Flight Simulator 2020 (one each day of the conference) to survey participants. If you have a moment, please take our survey, it's quick. Here’s the ...
New safety rules in C++ Core Check
Rust and C++ are two popular systems programming languages. For years, the focus of C++ has been on performance. We are increasingly hearing calls from customers and security researchers that C++ should have stronger safety guarantees in the language. C++ often falls behind Rust when it comes to programming safety. Visual Studio 2019 version 16.7 contains four new rules in C++ Core Check to incorporate some safety features from Rust into C++. For more detailed information on C++ Core Check, please see the C++ Core Guidelines Checker Reference documentation. If you’re just getting started with native code ana...
<bit> in Visual Studio 2019 version 16.8 Preview 2
Bit twiddling: “bit rotating and counting functions” and “integral power of two operations”.