-
Notifications
You must be signed in to change notification settings - Fork 770
Move [expected] from [utilities] to [diagnostics] #6168
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
Comments
See also #5315. |
But moving |
What about |
It's only used for exposition within the ranges clause, there's no reason to present it to users as though it's similar to |
These components are implementations of product/sum types. Should we use "algebraic types" to describe them? |
Do I am planning on a paper SoonTM (might miss Tokyo 2024 though) to respecify |
The [utilties] clause should be a clause of last resort, when no other clause makes sense. Additionally, the [utilties] clause has historically been one of the larger clauses.
I recommend moving [expected] from [utilities] to [diagnostics]. std::expected is a tool most frequently used for error handling, so placing it in the same clause that we use to discuss errno and terminate makes sense.
Without this change, [diagnostics] is roughly 20 pages in N4928 and [utilities] is roughly 145 pages. Moving [expected] can shift ~31 pages from [utilities] to [diagnostics].
The header table in each clause would need to be adjusted. Other than that, I didn't see any blanket wording in [utilities] that needs to be moved or duplicated into [diagnostics]. [diagnostics.general] p2 may need a minor tweak to describe std::expected.
The text was updated successfully, but these errors were encountered: