[expr.mtr.oper]/6 refers to "the operand for the function call operator", as if there can only be one
Nobody has claimed this yet.
- Dominant language
- TeX
- Stars
- 221
- Forks
- 813
- Avg merge
- 16h 4m
- Merged PRs (30d)
- 36
Description
[expr.mptr.oper]/6 says
If the result of
.*or->*is a function, then that result can be used only as the operand for the function call operator().
which suggests that a function call operator only has one operand, and that the argument expressions don't count. This is not consistent with [expr.ref]/6.3.2, which refers to "the left-hand operand of a member function call".
The wording of [expr.mptr.oper]/6 should be changed to also say "left-hand operand".
In case there is any doubt that the argument expressions should be considered operands, consider [intro.execution]/3.1. If we consider argument expressions to be operands, then [intro.execution]/3.1 implies that they are subexpressions of the function call expression. This is obviously what was intended.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Locate the TeX source for [expr.mptr.oper]/6 and compare its wording with the cited text from [expr.ref]/6.3.2. Change the sentence to identify the left-hand operand, then check the resulting draft wording to confirm that argument expressions remain covered as operands.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- tex
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 55/100