[intro.execution] Is it possible to clarify the second bullet for immediate subexpressions
Nobody has claimed this yet.
- Dominant language
- TeX
- Stars
- 221
- Forks
- 813
- Avg merge
- 16h 4m
- Merged PRs (30d)
- 36
Description
As stated in the definition for immediate subexpressions
The immediate subexpressions of an expression E are
- [...]
- any function call that E implicitly invokes
Does it refer to the implicit function call that appears in the lexically part of the expression E or any such function call invoked when evaluating the expression E? I mean, in the following two examples
class Test{
Test(){}
~Test(){}
int a;
};
int main(){
Test{}.a; // this expression will implicitly invoke the constructor and destructor of class `Test`
}
In this example, these implicitly invoked function calls appear in the lexically part of the expression Test{}.a.
As a contrast, see the second example
class Test{
Test(){}
~Test(){}
int a;
};
void fun(){
Test t{};
}
int main(){
fun();
}
In this example, evaluate the postfix-expression, namely the function call fun(), will implicitly invoke the constructor and destructor of class T which appear in its function body.
It's unclear what's the intent of the bullet second. These two kinds of understanding have a large difference.
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
Start with the quoted definition of immediate subexpressions and compare its wording against the two Test and fun() examples in the issue. Clarify whether the second bullet covers only calls lexically within E or also calls made while evaluating E; done when the intended scope is stated unambiguously.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100