grantila / q

A platform-independent promise library for C++, implementing asynchronous continuations.
http://libq.io
Apache License 2.0
192 stars 24 forks source link

Won't build on MSVC 16 #31

Open csguth opened 4 years ago

csguth commented 4 years ago

It builds on MSVC 14, GCC7 and Apple Clang 11. I believe it won't build on GCC9 too.

This is the error I get on MSVC16:

10-Jun-2020 20:38:10 | C:\.conan\15a32df\1\include\q/promise/impl/rest.hpp(141,1): error C2244: 'q::detail::generic_promise<B,T...>::forward': unable to match function definition to an existing declaration [C:\.conan\0e63238\1\vphone-wrapper.vcxproj]
10-Jun-2020 20:38:10 |  
10-Jun-2020 20:38:10 | C:\.conan\15a32df\1\include\q/promise/impl/rest.hpp(140): message : see declaration of 'q::detail::generic_promise<B,T...>::forward' [C:\.conan\0e63238\1\vphone-wrapper.vcxproj]
10-Jun-2020 20:38:10 |  
10-Jun-2020 20:38:10 | C:\.conan\15a32df\1\include\q/promise/impl/rest.hpp(141,1): message : definition [C:\.conan\0e63238\1\vphone-wrapper.vcxproj]
10-Jun-2020 20:38:10 |  
10-Jun-2020 20:38:10 | C:\.conan\15a32df\1\include\q/promise/impl/rest.hpp(141,1): message : 'std::enable_if<std::is_void<_V>::value&&q::detail::generic_promise<B,T...>::argument_types::empty::value,q::promise<U...>>::type q::detail::generic_promise<B,T...>::forward(U &&...)' [C:\.conan\0e63238\1\vphone-wrapper.vcxproj]
10-Jun-2020 20:38:10 |  
10-Jun-2020 20:38:10 | C:\.conan\15a32df\1\include\q/promise/impl/rest.hpp(141,1): message : existing declarations [C:\.conan\0e63238\1\vphone-wrapper.vcxproj]
10-Jun-2020 20:38:10 |  
10-Jun-2020 20:38:10 | C:\.conan\15a32df\1\include\q/promise/impl/rest.hpp(141,1): message : 'std::enable_if<std::is_void<_V>::value&&q::arguments<To...>::empty::value,q::promise<U...>>::type q::detail::generic_promise<B,T...>::forward(U &&...)' [C:\.conan\0e63238\1\vphone-wrapper.vcxproj]
10-Jun-2020 20:38:10