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

[over.over] Consistently use 'set of overloaded functions' #1811

Closed
wants to merge 1 commit into from

Conversation

jensmaurer
Copy link
Member

Fixes #1691.

@zygoloid
Copy link
Member

This change is incorrect. Here's how this section works today:

  • The "set of overloaded functions" is the set that we form through name lookup and deduction.
  • Then we apply the "A function with type \tcode{F} is selected for the function type \tcode{FT} of the target type required in the context if" rule to select some subset.
  • Then we apply the "set of selected functions" rule to pick between the selected functions.

This change effectively moves the second bullet after the third by making the third bullet apply to the "set of overloaded functions" instead of the "set of selected functions".

@jensmaurer
Copy link
Member Author

jensmaurer commented Nov 27, 2017

Ok, I was of the mistaken belief that "selected" in the overload resolution context means "single function". I'm now seeing the "selected" state is an intermediate set where additional partial ordering etc. is applied to find the "single chosen one". For example, p3 talks about "is selected" and then requiring an ampersand to form the pointer-to-member, which should probably be the very last check after you've actually selected a function in p4.

It would probably be helpful to move the phrasing for the second bullet, which is in p1, to below p2, where template argument deduction is discussed.

This is getting large enough to warrant a core issue, it seems.

@tkoeppe
Copy link
Contributor

tkoeppe commented Feb 13, 2018

@jensmaurer: can we close this in favour of a CWG issue?

@jensmaurer
Copy link
Member Author

Let's discuss in Jacksonville how to proceed here.

@tkoeppe tkoeppe added the decision-required A decision of the editorial group (or the Project Editor) is required. label Feb 13, 2018
@jensmaurer jensmaurer added cwg Issue must be reviewed by CWG. and removed decision-required A decision of the editorial group (or the Project Editor) is required. cwg Issue must be reviewed by CWG. labels Mar 18, 2018
@jensmaurer
Copy link
Member Author

Parent issue #1691 to become a core issue.

@jensmaurer jensmaurer closed this Mar 18, 2018
@jensmaurer jensmaurer deleted the b5 branch March 18, 2018 01:05
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.

None yet

3 participants