Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Requiring executor tasks are noexcept. #528

Merged
merged 17 commits into from
Aug 22, 2023
Merged

Conversation

sean-parent
Copy link
Member

This is done with enable_if on the executors and adding the ability to declare a task<> as noexcept invokable. I.e., task<void(int) noexcept>.

An alternative design was to use static_assert() instead of enable_if. The problem with that approach is a single mistake would trigger multiple static_assert() (all asserts along the instantiation path).

Currently working on docs and updating hyde so this is a preview PR for comment.

@sean-parent sean-parent merged commit 8300eb9 into stlab:main Aug 22, 2023
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