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
Mislead utterance of section [expr.mptr.oper] #4703
Comments
No. The type specified by the second operand does not mean the type of the second operand. A pointer to member of type
Yes, that one seems wrong. |
Please ask which is the normative rule in the standard gives that meaning? |
There isn't a rule saying "the type specified by" means "the same type" either, not in the standard and not in English. |
Yes, that is what I'm concerning here. The phrase "the type specified by" gives an ambiguous meaning, we can read it in either meaning. So, I think we should replace it with more clear wording to avoid the potential misunderstanding. |
If you choose to read the words a certain way, and that creates a contradiction or nonsensical meaning, maybe you shouldn't read them that way. |
Agree with you. But I think we could improve the wording to make it to be more readable. After all, in the other place, such as "T&", we use the utterance "the referenced type" or "the type to which the reference refers" and so on. Have a similar way for pointer type. Why not use a similar tone here instead use the "the type specified by..."? |
As aforementioned, the second operand has the type of “pointer to member of T”, but the rule says the result is an object or a function of the type specified by the second operand, Is it a contradiction here?
Maybe we should say
Can
E2
be the second operand of the class member access operator?Again,
E2
still has the type of “pointer to member of T” in the context of the above rule, which meansE2
is invalid to be the second operand of the expression E1.E2.The text was updated successfully, but these errors were encountered: