|
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 |
|
|
2370 | 2370 |
|
2371 | 2371 | \pnum
|
2372 | 2372 | An entity is \defn{captured} if it is captured explicitly or implicitly. An entity
|
2373 |
| -captured by a \grammarterm{lambda-expression} is odr-used\iref{term.odr.use} by |
| 2373 | +captured by a \grammarterm{lambda-expression} is \termrefx{odr-used}{odr-use} by |
2374 | 2374 | the \grammarterm{lambda-expression}.
|
2375 | 2375 | \begin{note}
|
2376 | 2376 | As a consequence, if a \grammarterm{lambda-expression}
|
|
2475 | 2475 |
|
2476 | 2476 | \pnum
|
2477 | 2477 | Every \grammarterm{id-expression} within the \grammarterm{compound-statement} of a
|
2478 |
| -\grammarterm{lambda-expression} that is an odr-use\iref{term.odr.use} of an |
| 2478 | +\grammarterm{lambda-expression} that is an \termref{odr-use} of an |
2479 | 2479 | entity captured by copy is transformed into an access to the corresponding unnamed data
|
2480 | 2480 | member of the closure type.
|
2481 | 2481 | \begin{note}
|
|
2727 | 2727 | A \grammarterm{requires-expression} is a prvalue of type \tcode{bool}
|
2728 | 2728 | whose value is described below.
|
2729 | 2729 | Expressions appearing within a \grammarterm{requirement-body}
|
2730 |
| -are unevaluated operands\iref{term.unevaluated.operand}. |
| 2730 | +are \termrefx{unevaluated operands}{unevaluated.operand}. |
2731 | 2731 |
|
2732 | 2732 | \pnum
|
2733 | 2733 | \begin{example}
|
|
2814 | 2814 | \begin{note}
|
2815 | 2815 | The enclosing \grammarterm{requires-expression} will evaluate to \keyword{false}
|
2816 | 2816 | if substitution of template arguments into the \grammarterm{expression} fails.
|
2817 |
| -The \grammarterm{expression} is an unevaluated operand\iref{term.unevaluated.operand}. |
| 2817 | +The \grammarterm{expression} is an \termref{unevaluated operand}. |
2818 | 2818 | \end{note}
|
2819 | 2819 | \begin{example}
|
2820 | 2820 | \begin{codeblock}
|
|
2989 | 2989 | \end{example}
|
2990 | 2990 |
|
2991 | 2991 | \pnum
|
2992 |
| -A local parameter shall only appear as an unevaluated operand\iref{term.unevaluated.operand} |
| 2992 | +A local parameter shall only appear as an \termref{unevaluated operand} |
2993 | 2993 | within the \grammarterm{constraint-expression}.
|
2994 | 2994 | \begin{example}
|
2995 | 2995 | \begin{codeblock}
|
|
3807 | 3807 | If the expression is a prvalue,
|
3808 | 3808 | the temporary materialization conversion\iref{conv.rval}
|
3809 | 3809 | is applied.
|
3810 |
| -The expression is an unevaluated operand\iref{term.unevaluated.operand}. |
| 3810 | +The expression is an \termref{unevaluated operand}. |
3811 | 3811 |
|
3812 | 3812 | \pnum
|
3813 | 3813 | When \keyword{typeid} is applied to a \grammarterm{type-id}, the result
|
|
4799 | 4799 | The \keyword{sizeof} operator yields the number of bytes
|
4800 | 4800 | occupied by a non-potentially-overlapping object of the type
|
4801 | 4801 | of its operand. The operand is either an expression,
|
4802 |
| -which is an unevaluated operand\iref{term.unevaluated.operand}, or a parenthesized |
| 4802 | +which is an \termref{unevaluated operand}, or a parenthesized |
4803 | 4803 | \grammarterm{type-id}.
|
4804 | 4804 | \indextext{type!incomplete}%
|
4805 | 4805 | The \keyword{sizeof} operator shall not be applied to an expression that
|
|
4914 | 4914 | \indextext{\idxcode{noexcept}}%
|
4915 | 4915 | \indextext{expression!\idxcode{noexcept}}%
|
4916 | 4916 | The \keyword{noexcept} operator determines whether the evaluation of its operand,
|
4917 |
| -which is an unevaluated operand\iref{term.unevaluated.operand}, can throw an |
| 4917 | +which is an \termref{unevaluated operand}, can throw an |
4918 | 4918 | exception\iref{except.throw}.
|
4919 | 4919 |
|
4920 | 4920 | \begin{bnf}
|
|
7038 | 7038 | A simple assignment whose left operand is of
|
7039 | 7039 | a volatile-qualified type is deprecated\iref{depr.volatile.type}
|
7040 | 7040 | unless the (possibly parenthesized) assignment is a discarded-value expression or
|
7041 |
| -an unevaluated operand\iref{term.unevaluated.operand}. |
| 7041 | +an \termref{unevaluated operand}. |
7042 | 7042 |
|
7043 | 7043 | \pnum
|
7044 | 7044 | The behavior of an expression of the form \tcode{E1 \placeholder{op}= E2}
|
|
7294 | 7294 | a reference to \keyword{this} or to a variable with
|
7295 | 7295 | automatic storage duration defined outside that
|
7296 | 7296 | \grammarterm{lambda-expression}, where
|
7297 |
| -the reference would be an odr-use~(\ref{term.odr.use}, \ref{expr.prim.lambda}); |
| 7297 | +the reference would be an odr-use~(\ref{term.odr-use}, \ref{expr.prim.lambda}); |
7298 | 7298 | \begin{example}
|
7299 | 7299 | \begin{codeblock}
|
7300 | 7300 | void g() {
|
|
7667 | 7667 | \end{itemize}
|
7668 | 7668 | \begin{note}
|
7669 | 7669 | A manifestly constant-evaluated expression
|
7670 |
| -is evaluated even in an unevaluated operand\iref{term.unevaluated.operand}. |
| 7670 | +is evaluated even in an \termref{unevaluated operand}. |
7671 | 7671 | \end{note}
|
7672 | 7672 |
|
7673 | 7673 | \pnum
|
|
7697 | 7697 |
|
7698 | 7698 | \item
|
7699 | 7699 | a subexpression of one of the above
|
7700 |
| -that is not a subexpression of a nested unevaluated operand\iref{term.unevaluated.operand}. |
| 7700 | +that is not a subexpression of a nested \termref{unevaluated operand}. |
7701 | 7701 | \end{itemize}
|
7702 | 7702 |
|
7703 | 7703 | \indextext{function!needed for constant evaluation}%
|
|
0 commit comments