Проблема компиляции при обновлении Platform Toolset с v120 до v142 (visualstudio 2019) - PullRequest
0 голосов
/ 23 марта 2020

У меня есть проект, который я могу без проблем скомпилировать в VS2019, используя набор инструментов платформы v120. Я переназначил проект на использование платформы инструментов v142 и WSDK 10. Я получаю следующие ошибки компиляции, связанные с шаблонами. Любые мысли о том, что является причиной этого?

C: \ Program Files (x86) \ Microsoft Visual Studio \ 2019 \ Enterprise \ VC \ Tools \ MSVC \ 14.25.28610 \ include \ utility (573,1 ): ошибка C2440: «=»: невозможно преобразовать из «_Other» в «_Ty»

        with
        [
            _Other=int
        ]
        and
        [
            _Ty=std::_Container_proxy *
        ] (compiling source file RTPPacketSequencer.cpp)
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.25.28610\include\utility(573,42): message : Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast (compiling source file RTPPacketSequencer.cpp)
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.25.28610\include\deque(872): message : see reference to function template instantiation '_Ty *std::exchange<std::_Container_proxy*,int>(_Ty &,_Other &&) noexcept(false)' being compiled
        with
        [
            _Ty=std::_Container_proxy *,
            _Other=int
        ] (compiling source file RTPPacketSequencer.cpp)
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.25.28610\include\deque(869): message : while compiling class template member function 'std::deque<T,std::allocator<T>>::~deque(void) noexcept'
        with
        [
            T=int
        ] (compiling source file RTPPacketSequencer.cpp)
D:\dev\_inc\lockqueue.h(46): message : see reference to function template instantiation 'std::deque<T,std::allocator<T>>::~deque(void) noexcept' being compiled
        with
        [
           T=int
        ] (compiling source file RTPPacketSequencer.cpp)
D:\dev\_inc\lockqueue.h(109): message : see reference to class template instantiation 'std::deque<T,std::allocator<T>>' being compiled
        with
        [
            T=int
        ] (compiling source file RTPPacketSequencer.cpp)
D:\dev\_inc\lockqueue.h(116): message : see reference to class template instantiation 'CLockQueueTX<T>' being compiled
        with
        [
            T=int
        ] (compiling source file RTPPacketSequencer.cpp)'''
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...