|
4622 | 4622 | as described in this subclause.
|
4623 | 4623 | In an expression of the form:
|
4624 | 4624 |
|
4625 |
| -\begin{ncbnftab} |
| 4625 | +\begin{ncsimplebnf} |
4626 | 4626 | postfix-expression \terminal{(} \opt{expression-list} \terminal{)}
|
4627 |
| -\end{ncbnftab} |
| 4627 | +\end{ncsimplebnf} |
4628 | 4628 |
|
4629 | 4629 | where the
|
4630 | 4630 | \grammarterm{postfix-expression}
|
|
5137 | 5137 | \grammarterm{new-type-id}
|
5138 | 5138 | is dependent, even if any subexpression is type-dependent:
|
5139 | 5139 |
|
5140 |
| -\begin{ncbnftab} |
| 5140 | +\begin{ncsimplebnf} |
5141 | 5141 | simple-type-specifier \terminal{(} \opt{expression-list} \terminal{)}\br
|
5142 | 5142 | \terminal{\opt{::} new} \opt{new-placement} new-type-id \opt{new-initializer}\br
|
5143 | 5143 | \terminal{\opt{::} new} \opt{new-placement} \terminal{(} type-id \terminal{)} \opt{new-initializer}\br
|
|
5146 | 5146 | \terminal{const_cast <} type-id \terminal{> (} expression \terminal{)}\br
|
5147 | 5147 | \terminal{reinterpret_cast <} type-id \terminal{> (} expression \terminal{)}\br
|
5148 | 5148 | \terminal{(} type-id \terminal{)} cast-expression
|
5149 |
| -\end{ncbnftab} |
| 5149 | +\end{ncsimplebnf} |
5150 | 5150 |
|
5151 | 5151 | \pnum
|
5152 | 5152 | Expressions of the following forms are never type-dependent (because the type
|
5153 | 5153 | of the expression cannot be dependent):
|
5154 | 5154 |
|
5155 |
| -\begin{ncbnftab} |
| 5155 | +\begin{ncsimplebnf} |
5156 | 5156 | literal\br
|
5157 | 5157 | postfix-expression \terminal{.} pseudo-destructor-name\br
|
5158 | 5158 | postfix-expression \terminal{->} pseudo-destructor-name\br
|
|
5166 | 5166 | \terminal{\opt{::} delete [ ]} cast-expression\br
|
5167 | 5167 | \terminal{throw} \opt{assignment-expression}\br
|
5168 | 5168 | \terminal{noexcept} \terminal{(} expression \terminal{)}
|
5169 |
| -\end{ncbnftab} |
| 5169 | +\end{ncsimplebnf} |
5170 | 5170 |
|
5171 | 5171 | \begin{note} For the standard library macro \tcode{offsetof},
|
5172 | 5172 | see~\ref{support.types}.\end{note}
|
|
5245 | 5245 | \grammarterm{type-id}
|
5246 | 5246 | is dependent:
|
5247 | 5247 |
|
5248 |
| -\begin{ncbnftab} |
| 5248 | +\begin{ncsimplebnf} |
5249 | 5249 | \terminal{sizeof} unary-expression\br
|
5250 | 5250 | \terminal{sizeof (} type-id \terminal{)}\br
|
5251 | 5251 | \terminal{typeid (} expression \terminal{)}\br
|
5252 | 5252 | \terminal{typeid (} type-id \terminal{)}\br
|
5253 | 5253 | \terminal{alignof (} type-id \terminal{)}\br
|
5254 | 5254 | \terminal{noexcept} \terminal{(} expression \terminal{)}
|
5255 |
| -\end{ncbnftab} |
| 5255 | +\end{ncsimplebnf} |
5256 | 5256 |
|
5257 | 5257 | \begin{note} For the standard library macro \tcode{offsetof},
|
5258 | 5258 | see~\ref{support.types}.\end{note}
|
|
5268 | 5268 | \grammarterm{cast-expression}
|
5269 | 5269 | is value-dependent:
|
5270 | 5270 |
|
5271 |
| -\begin{ncbnftab} |
| 5271 | +\begin{ncsimplebnf} |
5272 | 5272 | simple-type-specifier \terminal{(} \opt{expression-list} \terminal{)}\br
|
5273 | 5273 | \terminal{static_cast <} type-id \terminal{> (} expression \terminal{)}\br
|
5274 | 5274 | \terminal{const_cast <} type-id \terminal{> (} expression \terminal{)}\br
|
5275 | 5275 | \terminal{reinterpret_cast <} type-id \terminal{> (} expression \terminal{)}\br
|
5276 | 5276 | \terminal{(} type-id \terminal{)} cast-expression
|
5277 |
| -\end{ncbnftab} |
| 5277 | +\end{ncsimplebnf} |
5278 | 5278 |
|
5279 | 5279 | \pnum
|
5280 | 5280 | Expressions of the following form are value-dependent:
|
5281 | 5281 |
|
5282 |
| -\begin{ncbnftab} |
| 5282 | +\begin{ncsimplebnf} |
5283 | 5283 | \terminal{sizeof} \terminal{...} \terminal{(} identifier \terminal{)}\br
|
5284 | 5284 | fold-expression
|
5285 |
| -\end{ncbnftab} |
| 5285 | +\end{ncsimplebnf} |
5286 | 5286 |
|
5287 | 5287 | \pnum
|
5288 | 5288 | An expression of the form \tcode{\&}\grammarterm{qualified-id} where the
|
|
0 commit comments