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 to start using registries with vcpkg
How to start using registries with vcpkg
For many users of vcpkg, the built-in repository of packages is completely sufficient. If you only need public, non-experimental libraries, the default vcpkg registry is completely fine. However, once you go outside of this world - once you have company-internal libraries, or you want to use experimental libraries, the recommended solution is ...
Comments are closed.0C++
All vcpkg enterprise features now generally available: versioning, binary caching, manifests and registries
All vcpkg enterprise features now generally available: versioning, binary caching, manifests and registries
We are announcing today that all major vcpkg enterprise features are no longer experimental. The latest vcpkg release makes versioning, binary caching, manifests and registries generally available to any developer, team or enterprise. We have steadily been adding to vcpkg over the years. What started as a small open source project to ...
Microsoft C++ Code Analysis supports SARIF 2.1
Microsoft C++ Code Analysis supports SARIF 2.1
Starting with Visual Studio 16.8, MSVC Code Analysis officially supports SARIF 2.1.0 standard. SARIF is an industry standard for representing static analysis logs and we've been one of the earliest collaborators with the SARIF Technical Committee. Behind the scenes, analysis log files in the SARIF format powers Visual Studio IDE to ...
OpenMP Updates and Fixes for C++ in Visual Studio 2019 version 16.10
OpenMP Updates and Fixes for C++ in Visual Studio 2019 version 16.10
In our previous blog post about improved OpenMP support in Visual Studio, we announced the addition of the -openmp:llvm switch in Visual Studio 2019 version 16.9 to enable compiled programs to target LLVM’s OpenMP runtime library for the x64 architecture. This switch supports all the OpenMP 2.0 directives that -openmp supports, as well as ...
New Static Analysis Rule for Bounds Checking
New Static Analysis Rule for Bounds Checking
We have added a new experimental static analysis rule in Visual Studio 16.10 version Preview 3 - C26458, WARNING_PATH_SENSITIVE_USE_GSL_AT. The new warning is a more precise and less noisy version of warning C26446, WARNING_USE_GSL_AT. Both warnings analyse standard containers for unchecked element access and they both share the warning ...
2x-3x Performance Improvements for Debug Builds
2x-3x Performance Improvements for Debug Builds
We have made substantial runtime performance improvements in the x86/x64 C++ compiler for Visual Studio's default debug configuration. For Visual Studio 2019 version 16.10 Preview 2, we measure 2x - 3x speedup for programs compiled in debug mode. These improvements come from reducing the overhead introduced by runtime checks (/...
Ignoring Automatic Initialization for Code Analysis
Ignoring Automatic Initialization for Code Analysis
Reading uninitialized memory is one of the major sources of security vulnerabilities in C and C++ programs. Microsoft developed many tools to find such errors including compiler warnings, static analysis checks, and more recently: code instrumentation.  For a more detailed overview of uninitialized memory related vulnerabilities and ...
Pure Virtual C++ 2021 is Today
Pure Virtual C++ 2021 is Today
Pure Virtual C++, a free one-day virtual conference for the whole C++ community, is starting today (May 3rd) at 14:30 UTC. You can watch it and interact with the speakers at Learn TV. There'll be sessions on C++20 modules, CMake, vcpkg, and code analysis. All of our pre-conference demos, including what's new in C++20 support in MSVC, ...
Comments are closed.0C++
Pure Virtual C++ 2021 Schedule Available
Pure Virtual C++ 2021 Schedule Available
The schedule for Pure Virtual C++ 2021 is now live on the event website. Remember to sign up to be the first to access our extra on-demand C++ demos and get more virtual surprises. Schedule All times are on Monday 3rd May 2021 UTC. Abstracts and speaker bios are available on the website...