C++ Team Blog

C++ tutorials, C and C++ news, and information about Visual Studio, Visual Studio Code, and Vcpkg from the Microsoft C++ team.

How we used C++20 to eliminate an entire class of runtime bugs
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 ...
Visual Studio Code C++ December 2021 Update: clang-tidy
Visual Studio Code C++ December 2021 Update: clang-tidy
The latest insiders release of the C++ extension is here, bringing clang-tidy support to VS Code! Clang-tidy is a clang-based C++ linter tool that detects common errors in your code, like style violations and bugs that can be deduced via static analysis. Clang-tidy integration was one of our top asks on GitHub, so we’re excited to announce ...
The /fp:contract flag and changes to FP modes in VS2022
The /fp:contract flag and changes to FP modes in VS2022
The /fp:contract flag and changes to FP modes in VS2022 In this blog we will cover a new feature we have added to the MSVC version 17.0 compiler in VS2022 that impacts the generation of Floating-Point contractions such as Fused Multiply Add (FMA) instructions. We will cover how FMA contractions are supported in pre-VS2022 MSVC compiler ...
Microsoft Visual Studio 2022 and Floating-point to Integer Conversions
Microsoft Visual Studio 2022 and Floating-point to Integer Conversions
Microsoft Visual Studio 2022 and Floating-point to Integer Conversions Quick Summary: See also the MSDN documentation on /fpcvt here. Introduction As some of you may be aware, Microsoft Visual Studio 2019 changed some floating-point to integer conversions for Intel Architecture (IA). When targeting ...
Embedded Software Development in Visual Studio
Embedded Software Development in Visual Studio
In this post we will walk you through Visual Studio installation of the embedded workload, how to acquire embedded tool dependencies with vcpkg, then demonstrate edit, build, deploy, and debugging directly in Visual Studio with new peripheral register and RTOS object views. We will demonstrate all of this with an Azure RTOS ThreadX project.
Bootstrap your dev environment with vcpkg artifacts
Bootstrap your dev environment with vcpkg artifacts
We are happy to announce a new experience for acquiring artifacts using vcpkg. We define an artifact as a set of packages required for a working development environment. Examples of relevant packages include compilers, linkers, debuggers, build systems, and platform SDKs. With this important change, vcpkg can not only download and build your ...
Makefile Tools December 2021 Update: Problem Matchers and Compilation Database Generation
Makefile Tools December 2021 Update: Problem Matchers and Compilation Database Generation
The December 2021 update of the Makefile Tools extension for Visual Studio Code is here, bringing you support for problem matchers (to easily view errors and warnings in the editor), the ability to generate a compile_commands.json file for your project, and a bunch of other enhancements and bug fixes! To find out more about all the ...
Comments are closed.0C++
C++ build throughput investigation and tune up
C++ build throughput investigation and tune up
Building C++ code is a complex process, launching many build tools in parallel and often running for a long time. It is always desirable to make it faster, but also a challenge to understand what the most effective way would be to achieve this. We’d like to share some techniques we use to get a "bigger" picture of the build, as well as ...