Closed lewissbaker closed 3 months ago
OMG, and connect
isn't using transform_sender
either. This is a major oversight. Those changes were never actually proposed by P2999. /facepalm
UPDATE (2024-05-21): i'm working on a paper to address this right now. i hope to have it in the pre-st louis mailing.
UPDATE 2 (2024-05-22): https://isocpp.org/files/papers/P3303R0.html
@lewissbaker should this be closed as we have https://github.com/cplusplus/sender-receiver/issues/246?
Yes, I believe this is now addressed by P3303R0, which was merged into P2300R10.
The current specification of
std::execution::get_completion_signatures(sndr, env)
just returns type ofsndr.get_completion_signatures(env)
.However, this doesn't seem to take into account that when the env contains a domain that customises a sender's operation that it might return different sets of signatures. e.g. a different error type, might not be stoppable, etc.
Should the
std::execution::get_completion_signatures()
helper be applying the sametransform_sender()
transforms and then callingsndr.get_completion_signatures()
on the result oftransform_sender()
instead?