Updates to Expression SFINAE in VS 2017 RC

Throughout the VS 2015 cycle we’ve been focusing on the quality of our expression SFINAE implementation. Because expression SFINAE issues can be subtle and complex we’ve been using popular libraries such as Boost and Microsoft’s fork of Range-v3 to validate our implementation and find remaining bugs. As we shift the compiler team’s focus to Visual Studio… Read more

Clang with Microsoft CodeGen in VS 2015 Update 1

[This post was written by Dave Bartolomeo and the Clang/C2 feature crew] One of the challenges with developing and maintaining cross-platform C++ code is dealing with different C++ compilers for different platforms. You write some code that builds fine with the Visual C++ compiler for your Windows-targeting build, but then your Android-targeting build breaks because… Read more

Partial Support for Expression SFINAE in VS 2015 Update 1

In Visual Studio 2015 Update 1, we added partial support for C++11 core language feature Expression SFINAE. What is SFINAE? SFINAE is an acronym for ‘Substitution Failure Is Not An Error’. The idea is that when the compiler tries to specialize a function template during overload resolution, it is ok if the specialization fails as… Read more

Microsoft Virtual Academy – C++: A General Purpose Language and Library

Interested in learning the basics of C++? Next Tuesday, November 19, Kate Gregory and James McNellis will be teaching a free introductory C++ course on Microsoft Virtual Academy, “C++: A General Purpose Language and Library.” Kate is a C++ expert and long-time Microsoft Visual C++ MVP; James is a developer on the Visual C++ Libraries… Read more

Jumping Into C++: Calculating Unknowns

Last time, I wrote a C++ program to count words in text files. This time, write some code to calculate the motion of an object as an excuse to create a class, use function pointers and mess with some new containers. Thanks to my colleagues Ale Contenti and Andy Rich for providing the inspiration and… Read more

Announcing November CTP of the C++ compiler, now with more C++11

On February at the Going Native conference, we promised to work on implementing more parts of the C++11 standard. We also made a commitment to progressively roll out these features on a faster cadence through out-of-band releases such as CTPs (customer technology previews). We delivered! Today at Build 2012, Herb Sutter announced that we’re following through… Read more

November CTP, isocpp.org, Standard C++ Foundations Announced Today

November 2, 12:45pm PDT C++ use and investment continues to grow strongly in all parts of the software industry, and broadly across all major industries. As Herb Sutter said, more than ever “Microsoft is built on C++, and the world runs on C++.” At the same time, programmers now need to be educated that C++… Read more

Targeting Windows XP with C++ in Visual Studio 2012

We recently announced the Visual Studio 2012 product lineup and platform support, and as a part of this announcement we mentioned that we were evaluating options for enabling C++ developers to build applications in Visual Studio 2012 that run on Windows XP without requiring side-by-side installation of Visual Studio 2010. Today I would like to… Read more

VC11 ISO C++ Concurrency Tour in March Issue of MSDN Mag

Greetings!! I am Diego Dagum, Community Program Manager with the Visual C++ team. I recently got an article published in the current issue of MSDN Magazine about the ISO C++11 concurrency features implemented in Visual C++ 11.     It’s a 101-level journey through standardized features like: Asynchronous tasks. Threads. Promises and futures. Thread-bound variables… Read more

C++11 Conformance Survey

  Hello, My name is Vikas Bhatia and I am a Program Manager in the Visual C++ team. We are conducting a survey to see the relative urgency of C++11 features to you, the developer. C++11 conformance is important to us. We intend to implement the C++11 language features. We are evaluating the order with… Read more