-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Implement LWG-3629 make_error_code
and make_error_condition
are customization points
#3272
Conversation
- make sure invocations for `std::` overloads - drop `std::` for types
Looks great! I pushed a couple of trivial changes. Thanks for adding the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nitpicky, non-functional changes. I'll push a change to address my comments.
|
||
namespace _Ensure_adl { | ||
void make_error_code() = delete; | ||
void make_error_condition() = delete; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For other reviewers: this change doesn't need to workaround the MSVC bug that was an issue for the CPOs (#3215 (comment)), that bug only affects names in requires-expressions. (No change requested.)
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
Thanks again for implementing this LWG issue resolution! 🎉 📈 🐱 |
Fixes #3216.
Also adding
_STD
-qualifications to calls in<future>
and<xiosbase>
, because these calls always find overloads declared instd::
and it is unnecessary to enable ADL for them.Some previously accepted codes will be rejected after these changes. Unfortunately, I don't know how to examine such cases in tests, because only hard errors would occur.