Skip to content

Conversation

@maikel
Copy link
Collaborator

@maikel maikel commented Dec 18, 2024

The completion functions of the any_receiver type are currently more strictly constrained than necessary. This PR relaxes them by obeying the rules of overload resolution.

That change enables an any_receiver<set_value_t(int), set_error_t(std::exception_ptr)>::any_sender<> to be assigned from a sender that has completion_signatures<set_value_t(const int&), set_error_t(const std::exception_ptr&)> such as resulting senders from the split algorithm.

@copy-pr-bot
Copy link

copy-pr-bot bot commented Dec 18, 2024

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@maikel maikel changed the title Relax overload resolution any receivers completion functions Relax overload resolution of any receivers completion functions Dec 18, 2024
@maikel maikel force-pushed the any-sender-improve-overloads branch from ae220a2 to 78963fe Compare December 18, 2024 19:57
@ericniebler
Copy link
Collaborator

/ok to test

@maikel maikel force-pushed the any-sender-improve-overloads branch from 78963fe to a762e9b Compare December 19, 2024 04:53
@ericniebler
Copy link
Collaborator

/ok to test

@ericniebler ericniebler merged commit 150a82f into NVIDIA:main Dec 29, 2024
16 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants