After D3124 we'll be compiling with C++14 on MSVC and that seems to be opening a can of worms. This patches fixes that.
I could use some help for those remaining warnings:
c:\dev\0ad\source\network\NetMessages.h(149): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(194): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(201): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(231): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(149): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(194): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(201): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(231): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(149): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(194): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(201): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(231): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(149): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(194): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(201): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] c:\dev\0ad\source\network\NetMessages.h(231): warning C4456: declaration of 'thiz' hides previous local declaration (compiling source file ..\..\..\source\network\NetMessage.cpp) [C:\Dev\0ad\build\workspaces\vc2015\network.vcxproj] ..\..\..\source\simulation2\components\CCmpPathfinder.cpp(819): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\simulation2.vcxproj] ..\..\..\source\renderer\Renderer.cpp(1298): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\graphics.vcxproj] ..\..\..\source\renderer\Renderer.cpp(1324): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\graphics.vcxproj] ..\..\..\source\renderer\Renderer.cpp(1344): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\graphics.vcxproj] ..\..\..\source\main.cpp(223): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\pyrogenesis.vcxproj] ..\..\..\source\main.cpp(357): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\pyrogenesis.vcxproj] ..\..\..\source\main.cpp(427): warning C4456: declaration of 'profile2__' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\pyrogenesis.vcxproj] C:\Dev\0ad\source\gui/Scripting/JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<IGUIObject>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj] C:\Dev\0ad\source\gui/Scripting/JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<CText>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj] c:\dev\0ad\source\gui\scripting\JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<CText>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj] c:\dev\0ad\source\gui\scripting\JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<IGUIObject>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj] C:\Dev\0ad\source\gui/Scripting/JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<IGUIObject>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj] C:\Dev\0ad\source\gui/Scripting/JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<IGUIObject>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj] C:\Dev\0ad\source\gui/Scripting/JSInterface_GUIProxy.h(121): warning C4265: 'JSI_GUIProxy<CText>': class has virtual functions, but destructor is not virtual [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj]
This one is fixed by https://code.wildfiregames.com/D3103
..\..\..\source\gui\ObjectBases\IGUIObject.cpp(359): warning C4456: declaration of 'it' hides previous local declaration [C:\Dev\0ad\build\workspaces\vc2015\gui.vcxproj]
Atlas patch will come in a separate diff to keep it manageable.