Naios / continuable

C++14 asynchronous allocation aware futures (supporting then, exception handling, coroutines and connections)
https://naios.github.io/continuable/
MIT License
815 stars 44 forks source link

when_seq gives error on VS2019 #34

Closed zulfisegnatii closed 3 years ago

zulfisegnatii commented 4 years ago

@Naios

VS2019. Simple example for cti::when_seq from cti::continuable github page gives the following error:

Sample code:

cti::when_seq(0, 1, cti::make_ready_continuable(2, 3), 4, 5) .then([](int r0, int r1, int r2, int r3, int r4) { // ... });

inc\continuable\continuable/detail/core/base.hpp(143): error C2327: 'cti::detail::connection::connection_finalizer<cti::detail::connection::connection_strategy_seq_tag>::finalize::<lambda_2c21493e75eda026f33efcadc32930e9>::result': is not a type name, static, or enumerator inc\continuable\continuable/detail/core/base.hpp(168): note: see reference to class template instantiation 'cti::detail::base::proxy_continuable<hint_t,cti::detail::connection::connection_finalizer<cti::detail::connection::connection_strategy_seq_tag>::finalize::<lambda_2c21493e75eda026f33efcadc32930e9>>' being compiled inc\continuable\continuable/detail/connection/connection-seq.hpp(169): note: see reference to function template instantiation 'auto cti::detail::base::attorney::create_from<cti::detail::connection::connection_finalizer<cti::detail::connection::connection_strategy_seq_tag>::finalize::<lambda_2c21493e75eda026f33efcadc32930e9>,cti::detail::identity<int,int,int,int,int,int>>(T &&,Hint,cti::detail::util::ownership)' being compiled with [ T=cti::detail::connection::connection_finalizer<cti::detail::connection::connection_strategy_seq_tag>::finalize::<lambda_2c21493e75eda026f33efcadc32930e9>, Hint=cti::detail::identity<int,int,int,int,int,int> ] inc\continuable\continuable/detail/connection/connection.hpp(191): note: see reference to function template instantiation 'auto cti::detail::connection::connection_finalizer<cti::detail::connection::connection_strategy_seq_tag>::finalize<std::tuple<int,int,cti::continuable_base<cti::detail::base::ready_continuation<int,int>,cti::detail::identity<int,int>>,int,int>>(Connection &&,cti::detail::util::ownership)' being compiled with [ Connection=std::tuple<int,int,cti::continuable_base<cti::detail::base::ready_continuation<int,int>,cti::detail::identity<int,int>>,int,int> ] inc\continuable\continuable/continuable-connections.hpp(150): note: see reference to function template instantiation 'auto cti::detail::connection::apply_connection<cti::detail::connection::connection_strategy_seq_tag,_Ty,_Ty,cti::continuable_base<cti::detail::base::ready_continuation<int,int>,cti::detail::identity<int,int>>,_Ty,_Ty>(Strategy,_Ty &&,_Ty &&,cti::continuable_base<cti::detail::base::ready_continuation<int,int>,cti::detail::identity<int,int>> &&,_Ty &&,_Ty &&)' being compiled with [ _Ty=int, Strategy=cti::detail::connection::connection_strategy_seq_tag ] Model\Action\A_Composite.cpp(26): note: see reference to function template instantiation 'auto cti::when_seq<int,int,continuation_t,int,int>(int &&,int &&,continuation_t &&,int &&,int &&)' being compiled

Your Environment

Naios commented 4 years ago

Thanks for your report. I'll check that out.

zulfisegnatii commented 3 years ago

Any update on this?

Naios commented 3 years ago

Your code builds for me on: Microsoft Visual Studio Community 2019 - Version 16.6.4 (latest as today on f57c5898ebfa2aa9fd52dfcd86454fe2a3cdfd57) Which MSVC 2019 version are you using?

Naios commented 3 years ago

It seems like this Issue got resolved. If you think it is still valid open a new ticket please.