Closed ScottMonaghan closed 3 years ago
I opened the Pangolin solution in Visual Studio 2019 and have the same errors if I try to build all.
If I build one-by-one the following all build successfully:
But if I try to build the pangolin project I get the following 95 errors:
Severity Code Description Project File Line Suppression State
Error C3546 '...': there are no parameter packs available to expand pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2955 'mpark::detail::traits': use of class template requires template argument list pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2119 '<range>$L0': the type for 'auto &&' cannot be deduced from an empty initializer pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'begin': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::begin(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::begin(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'end': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::end(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::end(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<begin>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<end>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2100 illegal indirection pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2440 'initializing': cannot convert from 'int' to 'mpark::detail::Trait' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 967
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 972
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 977
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 983
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 989
Error C2976 'mpark::detail::copy_assignment': too few template arguments pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2504 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>': base class undefined pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C3881 can only inherit constructor from direct base pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1763
Error C3546 '...': there are no parameter packs available to expand pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2955 'mpark::detail::traits': use of class template requires template argument list pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2119 '<range>$L0': the type for 'auto &&' cannot be deduced from an empty initializer pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'begin': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::begin(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::begin(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'end': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::end(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::end(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<begin>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<end>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2100 illegal indirection pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2440 'initializing': cannot convert from 'int' to 'mpark::detail::Trait' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 967
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 972
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 977
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 983
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 989
Error C2976 'mpark::detail::copy_assignment': too few template arguments pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2504 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>': base class undefined pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C3881 can only inherit constructor from direct base pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1763
Error C3546 '...': there are no parameter packs available to expand pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2955 'mpark::detail::traits': use of class template requires template argument list pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2119 '<range>$L0': the type for 'auto &&' cannot be deduced from an empty initializer pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'begin': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::begin(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::begin(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'end': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::end(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::end(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<begin>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<end>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2100 illegal indirection pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2440 'initializing': cannot convert from 'int' to 'mpark::detail::Trait' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 967
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 972
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 977
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 983
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 989
Error C2976 'mpark::detail::copy_assignment': too few template arguments pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2504 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>': base class undefined pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C3881 can only inherit constructor from direct base pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1763
Error C3546 '...': there are no parameter packs available to expand pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2955 'mpark::detail::traits': use of class template requires template argument list pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2119 '<range>$L0': the type for 'auto &&' cannot be deduced from an empty initializer pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'begin': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::begin(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::begin(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2672 'end': no matching overloaded function found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2893 Failed to specialize function template 'unknown-type std::end(_Container &)' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2784 'const _Elem *std::end(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<begin>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C3536 '<end>$L0': cannot be used before it is initialized pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2100 illegal indirection pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2440 'initializing': cannot convert from 'int' to 'mpark::detail::Trait' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 939
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 967
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 972
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 977
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 983
Error C2131 expression did not evaluate to a constant pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 989
Error C2976 'mpark::detail::copy_assignment': too few template arguments pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2504 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>': base class undefined pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1758
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C3881 can only inherit constructor from direct base pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1762
Error C2027 use of undefined type 'mpark::detail::copy_assignment<mpark::detail::traits<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>,copy_assignable_trait>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1763
Error C3861 'as_base': identifier not found pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1216
Error C2955 'mpark::detail::visitation::fmatrix': use of class template requires template argument list pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1216
Error C2039 'index': is not a member of 'mpark::detail::impl<pangolin::Image<float>,pangolin::Image<uint32_t>,pangolin::Image<uint16_t>,pangolin::Image<T>>' pangolin C:\Users\scott\Documents\GitHub\Pangolin\include\mpark\variant.hpp 1216
For a temporary fix, see https://github.com/stevenlovegrove/Pangolin/issues/609
Thanks for this. I got rid of this Variant implementation and upgraded Pangolin to C++17. The master branch is now building well on Windows and you can see the status in the CI (https://github.com/stevenlovegrove/Pangolin/runs/3439133359) using Win10 and VS 2019. Let me know if you have any issues.
Hi @stevenlovegrove
I'm vcpkg maintainer. When upgrading to the latest version v0.6, we also encountered this problem. Since master branch has been refactored, which has big differences from the latest release.
So for v0.6, Could you please hep confirm if the workaround which is from https://github.com/stevenlovegrove/Pangolin/issues/609#issuecomment-645653656 is reasonable?
Thanks in advance.
@NancyLi1013 yes, that seems reasonable. Thanks for maintaining the vcpkg!
Hello I'm attempting to build on Windows 10 with Visual Studio 2019.
The build went along fine until it encountered this error, that eventually leads the whole build to fail. Any suggestions?
Here is my full build output: