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

consistently use either "valid" or "well-formed" in library constraints #3499

Open
zygoloid opened this issue Nov 20, 2019 · 3 comments
Open
Labels
decision-required A decision of the editorial group (or the Project Editor) is required.

Comments

@zygoloid
Copy link
Member

We sometimes require expressions to be "valid", and sometimes require them to be "well-formed". The former is not defined at all; the latter is defined only for complete programs. We should pick one of the two, use it consistently, and make sure it has a proper definition.

Suggestion: use "well-formed", since that's the term we already define.

@zygoloid zygoloid added the decision-required A decision of the editorial group (or the Project Editor) is required. label Nov 20, 2019
@jensmaurer
Copy link
Member

But "well-formed" is not really checkable for hard errors in non-SFINAE contexts.

@timsong-cpp
Copy link
Contributor

For "valid", we are trying to hook onto [temp.deduct]/8's definition of "invalid":

If a substitution results in an invalid type or expression, type deduction fails. An invalid type or expression is one that would be ill-formed, with a diagnostic required, if written using the substituted arguments.

@jensmaurer
Copy link
Member

Editorial meeting: Still looking for a good phrase or word.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
decision-required A decision of the editorial group (or the Project Editor) is required.
Projects
None yet
Development

No branches or pull requests

3 participants