Visual C++ 2015 and 2017 Migration Documentation Update


Upgrading to the latest C++ compiler and toolset is sometimes not so easy and can be time consuming. You are likely to encounter some compiler and linker errors and warnings in code that previously compiled cleanly. There are several possible sources for these errors, including improvements in the compiler, and changes in the C++ language, Standard Library, C runtime (CRT), and other libraries such as MFC and ATL.

We know by your feedback that having good documentation is a key part of this process. That’s why we have been updating the migration documentation to include lessons learned by working with our customers and migrating our own samples. We will continue to add to this documentation based on our learnings, and on your feedback! The Migration Guide can be found here .

We also know that samples are very useful. That is why we migrated old samples like Spy++, Scribble… (sure this names ring a bell for the older ones ;-)) to the latest compiler. They are now published on a GitHub repo . We created several folders to jump from different versions of earlier code (2008, 2010) to the latest (2015). You will also find some documents on the repo wiki to help you preparing a repro case, reporting an ICE compiler internal error, and so on.

We hope that this documentation upgrade, and these samples, are useful in your migration effort, and we want to hear from you! What do you need? What subjects need more information? You can also create an Issue on the GitHub repo to tell us what you need, or create a pull request to submit your code migration issue, so everyone can help you.

Questions or comments about the upgrade process can also be sent to


Discussion is closed.

Feedback usabilla icon