Image Watch is now available for Visual Studio 2017

Image Watch is a Visual Studio extension that provides a watch window for viewing in-memory bitmaps when debugging native C++ code. It comes with built-in support for OpenCV image types (e.g. cv::Mat, cv::Mat_<> , etc.). We know that, for many of you, this is an important part of your C++ debugging experience. We have received… Read more

Broken Warnings Theory

The “broken warnings theory” is a fictional theory of the norm-setting and signaling effect of coding practices and bug-checking techniques in 3rd party libraries on new bugs and design anti-patterns. The theory states that maintaining and monitoring warning levels to prevent small problems such as “signed/unsigned mismatch”, “no effect before comma”, and “non-standard extension used”… Read more

Android NDK R15C support goes in-box in Visual Studio 2017 Version 15.6 Preview

Visual Studio has provided in-box support for building C++ Android and iOS apps or libraries since VS 2015, enabling cross-platform C++ mobile development with full editing and debugging capabilities all in one single IDE. Just recently, we updated the tools to make it easier for you to work with newer versions of the Android platform…. Read more

Visual Studio Code C/C++ extension Dec 2017 update – support for more Linux distros

Happy holidays! Today we’re shipping the December 2017 update to the Visual Studio Code C/C++ extension – our last major update of this year, with out-of-box support for more Linux distros and built-in guidance on how to configure for a better IntelliSense experience. The original blog post, which provides an overview of this extension, has been updated… Read more

C++17 Feature Removals And Deprecations

Technology advances by inventing new ways of doing things and by discarding old ways. The C++ Standardization Committee is simultaneously adding new features and removing old features at a gradual pace, because we’ve discovered thoroughly better ways of writing code. While feature removals can be annoying, in the sense that programmers need to go change… Read more

MSVC code optimizer improvements in Visual Studio 2017 versions 15.5 and 15.3

In this post, we’d like to give you an update on the significant progress the Visual C++ code optimizer made in the past year, focused mostly on the features released in the 15.3 and 15.5 versions. Compared to VS2015 Update 3, VS2017 15.5 provides on average an 8.9% increase in runtime speed in the SPEC… Read more

Improving the debugging experience for std::function

fWe received a Visual Studio User Voice suggestion to make “StepInto” go directly to user code, skipping past standard library (std::function) implementation details. We recently worked on this suggestion and implemented it in the last version of Visual C++. The issue: Single-stepping through a call to an instance of std::function was a particular pain point…. Read more

MSVC conformance improvements in Visual Studio 2017 version 15.5

The MSVC toolset included in Visual Studio version 15.5 preview 4 includes many C++ conformance improvements. Throughout the VS2015 and VS2017 releases we’ve focused on conformance with C++ standards, including C++17 features. With VS2017 version 15.5, MSVC has implemented about 75% of C++17 core language and library features. These features can be enabled by using… Read more

C++ Core Check improvements in Visual Studio 2017 15.5

This post was written by Sergiy Oryekhov. In Visual Studio 2017 version 15.5 Preview 4 we have refreshed our C++ Core Guidelines Check extension for native code static analysis tools. Most of the work since 15.3 has been focused on new rules that will help developers starting new projects write safer C++ and those with… Read more

Side-by-side minor version MSVC toolsets in Visual Studio 2017

We’ve been delivering improvements to Visual Studio 2017 more frequently than ever before. Since its first release in March we’ve released four major updates to VS2017 and are currently previewing the fifth update, VS2017 version 15.5. The MSVC toolset in VS2017 is built as a minor version update to the VS2015 compiler toolset. This minor… Read more