I am trying to upgrade a project of Visual Studio 2013 to Visual Studio 2019.
When I build the project using Visual Studio 2013 (v120) and Windwos SDK version 8.1, everything goes perfectly. But when I try to update to v142 and Windwos SDK version 10.0, the following errors appears:
1>------ Build started: Project: Logger, Configuration: Release x64 ------ 1>stdafx.cpp 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(158,28): error C2275: '_False': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(157): message : see declaration of '_False' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(158,36): error C2275: '_Next': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(157): message : see declaration of '_Next' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(158,43): error C2275: '_Rest': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(157): message : see declaration of '_Rest' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(158,53): error C3544: '_Rest': parameter pack expects a type template argument 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(160,2): error C3855: 'std::_Disjunction': template parameter '_First_value' is incompatible with the declaration 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(32,1): warning C4467: usage of ATL attributes is deprecated 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(163): message : see reference to class template instantiation 'std::integral_constant<bool,false>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(163): message : see reference to class template instantiation 'std::disjunction<_Traits...>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(32,1): error C2337: '[': attribute not found 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(32,5): error C2146: syntax error: missing ']' before identifier 'nodiscard' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(32,5): error C2143: syntax error: missing ';' before ']' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(32,1): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(32,1): error C2334: unexpected token(s) preceding '{'; skipping apparent function body 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(166,28): error C2275: '_Rest': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(165): message : see declaration of '_Rest' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(166,38): error C3544: '_Traits': parameter pack expects a type template argument 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(168,2): error C3855: 'std::disjunction': template parameter '_Traits' is incompatible with the declaration 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(168,2): error C2977: 'std::disjunction': too many template arguments 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xtr1common(166): message : see declaration of 'std::disjunction' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(35,68): error C2275: '_Ty': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(34): message : see declaration of '_Ty' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(35,31): error C2923: '__make_integer_seq': '_Ty' is not a valid template type argument for parameter '_T' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(34): message : see declaration of '_Ty' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(35,31): error C2923: '__make_integer_seq': 'size_t' is not a valid template type argument for parameter '_T' 1>D:\dev\og_coltt\COLoggersST\stdafx.cpp : message : see declaration of 'size_t' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(41): message : see reference to alias template instantiation 'std::make_integer_sequence<size_t,_Size>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(53,27): error C2275: '_True': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(52): message : see declaration of '_True' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(53,34): error C2275: '_Next': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(52): message : see declaration of '_Next' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(53,41): error C2275: '_Rest': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(52): message : see declaration of '_Rest' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(53,51): error C3544: '_Rest': parameter pack expects a type template argument 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(55,2): error C3855: 'std::_Conjunction': template parameter '_First_value' is incompatible with the declaration 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(61,28): error C2275: '_Rest': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(60): message : see declaration of '_Rest' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(61,38): error C3544: '_Traits': parameter pack expects a type template argument 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(63,2): error C3855: 'std::conjunction': template parameter '_Traits' is incompatible with the declaration 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(63,2): error C2977: 'std::conjunction': too many template arguments 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(61): message : see declaration of 'std::conjunction' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85,25): error C2275: '_Ty2': illegal use of this type as an expression 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(84): message : see declaration of '_Ty2' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85,31): error C3544: '_Types': parameter pack expects a type template argument 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(88,2): error C3855: 'std::_Arg_types': template parameter '_Types' is incompatible with the declaration 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(88,2): error C2977: 'std::_Arg_types': too many template arguments 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...)>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...)>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) const>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) const>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile const>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile const>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) const &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) const &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile const &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile const &>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) const &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) const &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile const &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103,1): error C2955: 'std::_Arg_types': use of class template requires template argument list 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(85): message : see declaration of 'std::_Arg_types' 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(103): message : see reference to class template instantiation 'std::_Is_function<_Ret(_Types...) volatile const &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(138): message : see reference to class template instantiation 'std::_Is_memfunptr<_Ret(__vectorcall _Arg0::* )(_Types...) volatile const &&>' being compiled 1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\type_traits(138,1): fatal error C1003: error count exceeds 100; stopping compilation 1>Done building project "COLoggersST.vcxproj" -- FAILED. ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== As you can see, there's tons of erros on files xtr1common and type_traits. When I use C++14 to compile, errors on both of these files appears, but when I use C++17 there are erros only on type_traits.
I am using alot of ATL programming in this project. Maybe versions 2013 and 2019 break some ATL things?
In the stdafx.h this are the ATL headers:
#include <atlbase.h> #include <atlcom.h> #include <atlwin.h> #include <atltypes.h> #include <atlctl.h> #include <atlhost.h> #include <comdef.h> Thanks in advance for any insights people may have.