Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is Visual-C++-2017 binary compatible with VC++-2015?

Tags:

Steve tells me that VC 2015 and VC 2017 are actually (gonna be) binary compatible.

I found zero info wrt. this in the release notes for 2017 (RC) - or pretty much anywhere for that matter, so here goes:

  • Is a C++ (C++ interface) DLL built with VC++-2017 binary compatible with a DLL built by VC++-2015?
  • Do 2017 and 2015 use the same (dynamic) runtime library?
  • If so, what, if any, is the runtime difference between Platform Toolset Visual Studio 2017 (v141) and Visual Studio 2015 (v140)? (*)

(*): Yeah, I actually went ahead and installed the 2017 RC, and from what I can see on the surface, at least the identical MSVCRT is used, that is msvcp140.dll and vcruntime140.dll (despite the platform toolset being called "v141".

like image 562
Martin Ba Avatar asked Nov 28 '16 22:11

Martin Ba


People also ask

Is Visual C++ backwards compatible?

The goal of the Microsoft Visual C++ 2015-2019 Redistributable Package is to download all of the runtimes in one package. As you can tell by the name, the package includes all of the runtimes from 2015-2019 and should be backward compatible with all apps and games created with Microsoft Visual C++.

Does Visual C++ support C?

The Microsoft C/C++ for Visual Studio Code extension supports IntelliSense, debugging, code formatting, auto-completion. Visual Studio for Mac doesn't support Microsoft C++, but does support .

What version of C does Visual Studio use?

In versions of Visual Studio 2019 before version 16.11, /std:c++latest is required to enable all the compiler and standard library features of C++20. For a list of supported language and library features, see What's New for C++ in Visual Studio.

What version of C does Visual Studio 2019 use?

Microsoft's Visual Studio IDE has added support for the C11 and C17 C language standards, thus expanding the IDE's previously limited support for C. C11 and C17 become supported language versions starting with Visual Studio 2019 16.8 Preview 3, which was released September 14.


1 Answers

Yes, the 141 and 140 libraries are almost identical. The version was bumped for a side-by-side issue. The v140 toolset in VisualC++ 2015 and v141 toolset in VC++ 2017 are binary compatible.

like image 129
apardoe Avatar answered Sep 21 '22 13:09

apardoe