File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 64496449Expressions appearing in the \grammarterm {compound-statement} of a \grammarterm {lambda-expression}
64506450are not subexpressions of the \grammarterm {lambda-expression}.
64516451\end {note }
6452- The \defnadjx {potentially- evaluated}{subexpressions}{subexpression} of
6452+ The \defnadjx {potentially evaluated}{subexpressions}{subexpression} of
64536453an expression, conversion, or \grammarterm {initializer} $ E$ are
64546454\begin {itemize }
64556455\item
Original file line number Diff line number Diff line change 722722defaulted default constructor for the enclosing class or the
723723exception specification of that constructor.
724724An immediate invocation\iref {expr.const.imm } that
725- is a potentially- evaluated subexpression\iref {intro.execution }
725+ is a potentially evaluated subexpression\iref {intro.execution }
726726of a default member initializer
727727is neither evaluated nor checked for whether it
728728is a constant expression at the point where the subexpression appears.
Original file line number Diff line number Diff line change 43934393default argument are looked up, and the semantic constraints are checked,
43944394at the point where the default argument appears, except that
43954395an immediate invocation\iref {expr.const.imm } that
4396- is a potentially- evaluated subexpression\iref {intro.execution } of
4396+ is a potentially evaluated subexpression\iref {intro.execution } of
43974397the \grammarterm {initializer-clause} in a \grammarterm {parameter-declaration} is
43984398neither evaluated
43994399nor checked for whether it is a constant expression at that point.
58005800
58015801\pnum
58025802If a member has a default member initializer
5803- and a potentially- evaluated subexpression thereof is an aggregate
5803+ and a potentially evaluated subexpression thereof is an aggregate
58045804initialization that would use that default member initializer,
58055805the program is ill-formed.
58065806\begin {example }
Original file line number Diff line number Diff line change 54805480An \grammarterm {await-expression} shall not appear in the initializer of
54815481a block variable with static or thread storage duration.
54825482An \grammarterm {await-expression} shall not be
5483- a potentially- evaluated subexpression
5483+ a potentially evaluated subexpression
54845484of the predicate of a contract assertion\iref {basic.contract }.
54855485A context within a function where an \grammarterm {await-expression} can appear
54865486is called a \term {suspension context} of the function.
95139513is the program point $ P$ determined as follows:
95149514\begin {itemize }
95159515\item
9516- If $ E$ is a potentially- evaluated subexpression of
9516+ If $ E$ is a potentially evaluated subexpression of
95179517a default member initializer $ I$ , and
95189518$ V$ is the evaluation of $ E$ in the evaluation of $ I$
95199519as an immediate subexpression of a (possibly aggregate) initialization, then
95269526
95279527\item
95289528Otherwise,
9529- if $ E$ is a potentially- evaluated subexpression of
9529+ if $ E$ is a potentially evaluated subexpression of
95309530a default argument $ A$ \iref {dcl.fct.default }, and
95319531$ V$ is the evaluation of $ E$ in the evaluation of $ A$ as
95329532an immediate subexpression of a function call\iref {expr.call }, then
96689668or
96699669
96709670\item
9671- a potentially- evaluated subexpression\iref {intro.execution } of one of the above.
9671+ a potentially evaluated subexpression\iref {intro.execution } of one of the above.
96729672\end {itemize }
96739673
96749674\indextext {function!needed for constant evaluation}%
Original file line number Diff line number Diff line change 52195219let \tcode {\exposid {eval-point}($ P$ )} be the following program point:
52205220\begin {itemize }
52215221\item
5222- If a potentially- evaluated subexpression\iref {intro.execution }
5222+ If a potentially evaluated subexpression\iref {intro.execution }
52235223 of a default member initializer $ I$
52245224 for a member of class $ C$ \iref {class.mem.general }
52255225 appears at $ P$ ,
52395239 corresponding to the constructor definition that is using $ I$ .
52405240 \end {itemize }
52415241 \item
5242- Otherwise, if a potentially- evaluated subexpression
5242+ Otherwise, if a potentially evaluated subexpression
52435243 of a default argument\iref {dcl.fct.default } appears at $ P$ ,
52445244 \tcode {\exposid {eval-point}($ Q$ )},
52455245 where $ Q$ is the point at which the invocation of the function\iref {expr.call }
You can’t perform that action at this time.
0 commit comments