Use the official range-v3 with MSVC 2017 version 15.9

We’re happy to announce that the ongoing conformance work in the MSVC compiler has reached a new milestone: support for Eric Niebler’s range-v3 library. It’s no longer necessary to use the range-v3-vs2015 fork that was introduced for MSVC 2015 Update 3 support; true upstream range-v3 is now usable directly with MSVC 2017. The last push to achieve range-v3 support involved Microsoft-sponsored changes in… Read more

Use Boost.Hana via vcpkg with the latest MSVC compiler

Overview As we continue to work towards improving the conformance of the MSVC compiler for the C++ community, we would like to enable more C++ libraries, and today we are bringing Boost.Hana to Visual C++.  Building on our recent C++ conformance progress, customers can now use Boost.Hana with the VS2017 15.7 update after we’ve applied… Read more

C++ Unit Testing Survey (Summer 2016)

Hi everyone! The Visual Studio C++ team is conducting a survey to learn more about your C++ unit testing experiences. We’ll use the feedback to make improvements to Visual Studio in the future. The survey should take less than 10 minutes to complete. Take the C++ unit testing survey Thanks for your feedback! Cheers, Augustin Popa… Read more

C++ Edit and Continue in Visual Studio 2015 Update 3

We’ve been continuing to improve on C++ Edit and Continue (EnC) since we shipped it in Visual Studio 2015 with the default debug engine and the VC 140 toolset. We’ve addressed a fair bit of customer feedback and based on this, I’ll go over the latest developments in C++ EnC for Update 3 (download) and other… Read more

Compiler improvements in VS 2015 Update 3

The C++ compiler team is excited for you to try out the compiler in Visual Studio 2015 Update 3. We’ve made significant progress towards C++ standards conformance between the first release of Visual Studio 2015 and VS 2015 Update 3. Update 3 also has improvements in expression SFINAE, nested namespaces, and generalized range-based for loops…. Read more

New Options for Managing Character Sets in the Microsoft C/C++ Compiler

The Microsoft C/C++ compiler has evolved along with DOS, 16-bit Windows, and 32/64-bit Windows.  Its support for different characters sets, code pages, and Unicode has also changed during this time.  This post will explain how our compiler has worked in the past and also cover some new switches provided by the C/C++ compiler in Visual Studio 2015 Update… Read more

Compiler improvements in VS 2015 Update 2

The C++ compiler team is excited for you to try out the compiler in Visual Studio 2015 Update 2 CTP 1. Since Update 1 we’ve made progress on being Standards-conformant for lot of C++11 and C++14 features. One particularly big milestone is that our standard library in Update 2 supports every C++ Standard Library feature… Read more

What’s inside a PDB File?

Background We have all used the Visual Studio Debugger to step through code, in the hunt for bugs.  For C or C++ code, that Debugger relies upon a file, with the extension “.pdb”, called the “Program DataBase”, or simply “the PDB”.  The PDB is written by the Linker when you build your program; it contains line-number and symbols… Read more

Clang with Microsoft CodeGen (January 2016) released

We have just released an out-of-band update of Clang/C2 toolset that brings in some of the community fixes as well as bugs found from testing. This is one of many rapid releases to come in the future, and issues reported from customers will be addressed progressively. Here we only list the changes since the previous… Read more

Visual Studio 2015 Update 1: New Experimental Feature – MPX

Introduction This post is about Intel® Memory Protection Extensions (Intel® MPX) support in Microsoft Visual Studio* 2015; content provided by Gautham Beeraka, George Kuan, and Juan Rodriguez from Intel Corporation.    Overview Update 1 for Visual Studio 2015 was announced on November 30, 2015. This update includes experimental compiler and debugger support for Intel MPX.  Intel MPX can check… Read more