gTest compile errors

With the most recent Visual Studio 2017 updates (version 15.5.1, and maybe one or two back), gtest and gtest_main fail to compile (error and warning messages bellow). @blowekamp Does ITK’s copy of GoogleTest need to be updated?

1>------ Build started: Project: gtest, Configuration: Debug x64 ------
1>gtest-all.cc
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(996): error C2220: warning treated as error - no 'object' file generated
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(996): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(997): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(998): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(999): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(1000): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(600): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(605): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(610): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(615): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(620): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(625): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(632): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(639): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(646): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(653): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(661): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(878): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(878): note: see reference to class template instantiation 'testing::internal::TuplePolicy<TupleT>::tuple_element<I>' being compiled
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(886): note: see reference to class template instantiation 'testing::internal::TuplePolicy<TupleT>' being compiled
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(882): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(875): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
1>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(961): note: see reference to class template instantiation 'testing::internal::TuplePolicy<Tuple>' being compiled
1>        with
1>        [
1>            Tuple=std::tuple<>
1>        ]
1>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(601): note: see reference to function template instantiation 'void testing::internal::PrintTupleTo<std::tuple<>>(const T &,std::ostream *)' being compiled
1>        with
1>        [
1>            T=std::tuple<>
1>        ]
1>Done building project "gtest.vcxproj" -- FAILED.
2>------ Build started: Project: gtest_main, Configuration: Debug x64 ------
2>gtest_main.cc
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(996): error C2220: warning treated as error - no 'object' file generated
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(996): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(997): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(998): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(999): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/internal/gtest-port.h(1000): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(600): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(605): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(610): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(615): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(620): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(625): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(632): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(639): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(646): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(653): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(661): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(878): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(878): note: see reference to class template instantiation 'testing::internal::TuplePolicy<TupleT>::tuple_element<I>' being compiled
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(886): note: see reference to class template instantiation 'testing::internal::TuplePolicy<TupleT>' being compiled
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(882): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(875): warning C4996: 'std::tr1': warning STL4002: The non-Standard std::tr1 namespace and TR1-only machinery are deprecated and will be REMOVED. You can define _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING to acknowledge that you have received this warning.
2>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.12.25827\include\tuple(1137): note: see declaration of 'std::tr1'
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(961): note: see reference to class template instantiation 'testing::internal::TuplePolicy<Tuple>' being compiled
2>        with
2>        [
2>            Tuple=std::tuple<>
2>        ]
2>C:\Dev\ITK-git\Modules\ThirdParty\GoogleTest\src\itkgoogletest\googletest\include\gtest/gtest-printers.h(601): note: see reference to function template instantiation 'void testing::internal::PrintTupleTo<std::tuple<>>(const T &,std::ostream *)' being compiled
2>        with
2>        [
2>            T=std::tuple<>
2>        ]
2>Done building project "gtest_main.vcxproj" -- FAILED.
========== Build: 0 succeeded, 2 failed, 1 up-to-date, 0 skipped ==========

Looks like some recent changes should address this:
https://github.com/google/googletest/pull/1218

GTest does not do frequent releases, so we will likely have to go with the master branch and hope it’s bug free for our purpose.

Using master version of GTest is better than having build failures :smiley:

Can you create a patch for it @blowekamp?

If someone is going to update gtest, maybe you could take a look at this too:

https://github.com/google/googletest/issues/1154

(My impression is that the gtest project is moribund.)

I hope to get around to it tomorrow. I see a VS 2017 build on the dashboard is this issue expect to be shown there?

This started happening maybe a week or two ago (I keep my VS2017 up to date). I think that all dashboard machines were set up before then, and don’t include the update which broke GTest.

on it now

1 Like

I ran into a merge conflict running “Modules/ThirdParty/GoogleTest/UpdateFromUpstream.sh”. Reading through the scripts to find out how best to resolve… pointers could expedite the processes.

For the third party scripts, is appear I just needed to to resolve the merge and the do a “git commit”.

Here is the pull request:
http://review.source.kitware.com/#/c/22901/

@dzenanz I have just updated my VS 2017, and did a fresh build of ITK. I am still getting the same warning, which is treated as an error. I was able to define "_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING " and ITK compilation was successful.

Can you please verify that the current ITK master is working for you and VS2017?

I just pulled master and started a build in VS2017. I will let you know about the result.

1 Like

It still compiles without errors. I only got 4 warnings of the kind LNK4221 This object file does not define any previously undefined public symbols, so it will not be used by any link operation that consumes this library in project hdf5-static.

========== Build: 224 succeeded, 0 failed, 364 up-to-date, 9 skipped ==========

Microsoft Visual Studio Community 2017
Version 15.5.2
VisualStudio.15.Release/15.5.2+27130.2010
Microsoft .NET Framework
Version 4.7.02053

Ah, I was on the v4.13rc2 tag, compile on master is OK for me too.

1 Like