You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Agreed, this seems to be a bug in the spec. local-state's sh_state type should not be shared-state<Sndr>* as specified, but something like shared_state_of_data<Sndr>* where shared_state_of_data is the decayed type of the (exposition only) sh_state member of the data member of the Sndr, i.e. the instance of shared-wrapper.
In any case, the split as defined in the working draft has some issues related to cancellation behavior, so I guess it is not unlikely to receive a respec or even getting removed from the draft altogether.
split_t
local_state
p2300R10
local-state(Sndr&& sndr, Rcvr& rcvr) noexcept;
Effects: Equivalent to:
info
`
e:\0_github_project\mcsexec\mcsexec\test\test_base\split.cpp:79:32: required from here
79 | mcs::this_thread::sync_wait(std::move(start));
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
E:/0_github_project/mcsexec/mcsexec/include/__detail/adapt/__split.hpp:254:35: error: cannot convert 'mcs::execution::adapt::__split::shared_state<mcs::execution::snd::__detail::basic_sender<mcs::execution::factories::__just_tmcs::execution::recv::set_value_t, mcs::execution::snd::__detail::product_type > >' to 'mcs::execution::adapt::__split::shared_state<mcs::execution::snd::__detail::basic_sender<mcs::execution::adapt::split_impl_tag, mcs::execution::adapt::__split::shared_wrapper<mcs::execution::adapt::__split::shared_state<mcs::execution::snd::__detail::basic_sender<mcs::execution::factories::__just_tmcs::execution::recv::set_value_t, mcs::execution::snd::__detail::product_type > >, mcs::execution::adapt::split_t> > >' in assignment
254 | this->sh_state = data.sh_state; // TODO(mcs): ? ~~~~~^~~~~~~~
| |
| mcs::execution::adapt::__split::shared_state<mcs::execution::snd::__detail::basic_sender<mcs::execution::factories::__just_tmcs::execution::recv::set_value_t, mcs::execution::snd::__detail::product_type > >*
`
The text was updated successfully, but these errors were encountered: