|
1386 | 1386 | In the declaration of \tcode{p2},
|
1387 | 1387 | those constraints are required to be satisfied
|
1388 | 1388 | even though
|
1389 |
| -\tcode{f} is an unevaluated operand\iref{term.unevaluated.operand}. |
| 1389 | +\tcode{f} is an \termref{unevaluated operand}. |
1390 | 1390 | \end{example}
|
1391 | 1391 | \end{note}
|
1392 | 1392 |
|
|
2339 | 2339 |
|
2340 | 2340 | \pnum
|
2341 | 2341 | An entity is \defn{captured} if it is captured explicitly or implicitly. An entity
|
2342 |
| -captured by a \grammarterm{lambda-expression} is odr-used\iref{term.odr.use} by |
| 2342 | +captured by a \grammarterm{lambda-expression} is \termrefx{odr-used}{odr-use} by |
2343 | 2343 | the \grammarterm{lambda-expression}.
|
2344 | 2344 | \begin{note}
|
2345 | 2345 | As a consequence, if a \grammarterm{lambda-expression}
|
|
2444 | 2444 |
|
2445 | 2445 | \pnum
|
2446 | 2446 | Every \grammarterm{id-expression} within the \grammarterm{compound-statement} of a
|
2447 |
| -\grammarterm{lambda-expression} that is an odr-use\iref{term.odr.use} of an |
| 2447 | +\grammarterm{lambda-expression} that is an \termref{odr-use} of an |
2448 | 2448 | entity captured by copy is transformed into an access to the corresponding unnamed data
|
2449 | 2449 | member of the closure type.
|
2450 | 2450 | \begin{note}
|
|
2696 | 2696 | A \grammarterm{requires-expression} is a prvalue of type \tcode{bool}
|
2697 | 2697 | whose value is described below.
|
2698 | 2698 | Expressions appearing within a \grammarterm{requirement-body}
|
2699 |
| -are unevaluated operands\iref{term.unevaluated.operand}. |
| 2699 | +are \termrefx{unevaluated operands}{unevaluated.operand}. |
2700 | 2700 |
|
2701 | 2701 | \pnum
|
2702 | 2702 | \begin{example}
|
|
2783 | 2783 | \begin{note}
|
2784 | 2784 | The enclosing \grammarterm{requires-expression} will evaluate to \keyword{false}
|
2785 | 2785 | if substitution of template arguments into the \grammarterm{expression} fails.
|
2786 |
| -The \grammarterm{expression} is an unevaluated operand\iref{term.unevaluated.operand}. |
| 2786 | +The \grammarterm{expression} is an \termref{unevaluated operand}. |
2787 | 2787 | \end{note}
|
2788 | 2788 | \begin{example}
|
2789 | 2789 | \begin{codeblock}
|
|
2958 | 2958 | \end{example}
|
2959 | 2959 |
|
2960 | 2960 | \pnum
|
2961 |
| -A local parameter shall only appear as an unevaluated operand\iref{term.unevaluated.operand} |
| 2961 | +A local parameter shall only appear as an \termref{unevaluated operand} |
2962 | 2962 | within the \grammarterm{constraint-expression}.
|
2963 | 2963 | \begin{example}
|
2964 | 2964 | \begin{codeblock}
|
|
3776 | 3776 | If the expression is a prvalue,
|
3777 | 3777 | the temporary materialization conversion\iref{conv.rval}
|
3778 | 3778 | is applied.
|
3779 |
| -The expression is an unevaluated operand\iref{term.unevaluated.operand}. |
| 3779 | +The expression is an \termref{unevaluated operand}. |
3780 | 3780 |
|
3781 | 3781 | \pnum
|
3782 | 3782 | When \keyword{typeid} is applied to a \grammarterm{type-id}, the result
|
|
4768 | 4768 | The \keyword{sizeof} operator yields the number of bytes
|
4769 | 4769 | occupied by a non-potentially-overlapping object of the type
|
4770 | 4770 | of its operand. The operand is either an expression,
|
4771 |
| -which is an unevaluated operand\iref{term.unevaluated.operand}, or a parenthesized |
| 4771 | +which is an \termref{unevaluated operand}, or a parenthesized |
4772 | 4772 | \grammarterm{type-id}.
|
4773 | 4773 | \indextext{type!incomplete}%
|
4774 | 4774 | The \keyword{sizeof} operator shall not be applied to an expression that
|
|
4883 | 4883 | \indextext{\idxcode{noexcept}}%
|
4884 | 4884 | \indextext{expression!\idxcode{noexcept}}%
|
4885 | 4885 | The \keyword{noexcept} operator determines whether the evaluation of its operand,
|
4886 |
| -which is an unevaluated operand\iref{term.unevaluated.operand}, can throw an |
| 4886 | +which is an \termref{unevaluated operand}, can throw an |
4887 | 4887 | exception\iref{except.throw}.
|
4888 | 4888 |
|
4889 | 4889 | \begin{bnf}
|
|
7007 | 7007 | A simple assignment whose left operand is of
|
7008 | 7008 | a volatile-qualified type is deprecated\iref{depr.volatile.type}
|
7009 | 7009 | unless the (possibly parenthesized) assignment is a discarded-value expression or
|
7010 |
| -an unevaluated operand\iref{term.unevaluated.operand}. |
| 7010 | +an \termref{unevaluated operand}. |
7011 | 7011 |
|
7012 | 7012 | \pnum
|
7013 | 7013 | The behavior of an expression of the form \tcode{E1 \placeholder{op}= E2}
|
|
7263 | 7263 | a reference to \keyword{this} or to a variable with
|
7264 | 7264 | automatic storage duration defined outside that
|
7265 | 7265 | \grammarterm{lambda-expression}, where
|
7266 |
| -the reference would be an odr-use~(\ref{term.odr.use}, \ref{expr.prim.lambda}); |
| 7266 | +the reference would be an odr-use~(\ref{term.odr-use}, \ref{expr.prim.lambda}); |
7267 | 7267 | \begin{example}
|
7268 | 7268 | \begin{codeblock}
|
7269 | 7269 | void g() {
|
|
7632 | 7632 | \end{itemize}
|
7633 | 7633 | \begin{note}
|
7634 | 7634 | A manifestly constant-evaluated expression
|
7635 |
| -is evaluated even in an unevaluated operand\iref{term.unevaluated.operand}. |
| 7635 | +is evaluated even in an \termref{unevaluated operand}. |
7636 | 7636 | \end{note}
|
7637 | 7637 |
|
7638 | 7638 | \pnum
|
|
7662 | 7662 |
|
7663 | 7663 | \item
|
7664 | 7664 | a subexpression of one of the above
|
7665 |
| -that is not a subexpression of a nested unevaluated operand\iref{term.unevaluated.operand}. |
| 7665 | +that is not a subexpression of a nested \termref{unevaluated operand}. |
7666 | 7666 | \end{itemize}
|
7667 | 7667 |
|
7668 | 7668 | \indextext{function!needed for constant evaluation}%
|
|
0 commit comments