|
582 | 582 | a \grammarterm{typedef-name} is thus a synonym for another type. A
|
583 | 583 | \grammarterm{typedef-name} does not introduce a new type the way a class
|
584 | 584 | declaration\iref{class.name} or enum declaration\iref{dcl.enum} does.
|
| 585 | + |
| 586 | +\newpage |
| 587 | + |
585 | 588 | \begin{example}
|
586 | 589 | After
|
587 | 590 | \begin{codeblock}
|
|
1213 | 1216 | \grammarterm{type-specifier}{s} are discussed in the rest of \ref{dcl.type}.
|
1214 | 1217 | \end{note}
|
1215 | 1218 |
|
| 1219 | +\newpage |
| 1220 | + |
1216 | 1221 | \rSec3[dcl.type.cv]{The \fakegrammarterm{cv-qualifier}{s}}%
|
1217 | 1222 | \indextext{specifier!cv-qualifier}%
|
1218 | 1223 | \indextext{initialization!\idxcode{const}}%
|
|
1731 | 1736 | \end{codeblock}
|
1732 | 1737 | the \grammarterm{expression-list} shall be a single
|
1733 | 1738 | \grammarterm{assignment-expression}.
|
| 1739 | + |
| 1740 | +\newpage |
| 1741 | + |
1734 | 1742 | \begin{example}
|
1735 | 1743 | \begin{codeblock}
|
1736 | 1744 | auto x = 5; // OK: \tcode{x} has type \tcode{int}
|
|
3668 | 3676 | template<C3 T> void g4(T);
|
3669 | 3677 | \end{codeblock}
|
3670 | 3678 |
|
| 3679 | +\newpage |
| 3680 | + |
3671 | 3681 | Abbreviated function templates can be specialized like all function templates.
|
3672 | 3682 | \begin{codeblock}
|
3673 | 3683 | template<> void g1<int>(const int*, const double&); // OK, specialization of \tcode{g1<int, const double>}
|
|
3885 | 3895 | a = 2;
|
3886 | 3896 | {
|
3887 | 3897 | int a = 3;
|
| 3898 | +@\newpage@ |
3888 | 3899 | g(); // \tcode{g(f(::a))}
|
3889 | 3900 | }
|
3890 | 3901 | }
|
|
6148 | 6159 | constitute a reference.
|
6149 | 6160 | \end{note}
|
6150 | 6161 |
|
| 6162 | +\newpage |
| 6163 | + |
6151 | 6164 | \pnum
|
6152 | 6165 | \begin{example}
|
6153 | 6166 | One can prevent default initialization and
|
|
7298 | 7311 | that the entity being defined was already declared in the namespace and
|
7299 | 7312 | the definition appears after the point of declaration in a namespace
|
7300 | 7313 | that encloses the declaration's namespace.
|
| 7314 | + |
| 7315 | +\newpage |
| 7316 | + |
7301 | 7317 | \begin{example}
|
7302 | 7318 | \begin{codeblock}
|
7303 | 7319 | namespace Q {
|
|
7637 | 7653 | \indextext{using-directive|)}%
|
7638 | 7654 | \indextext{namespaces|)}
|
7639 | 7655 |
|
| 7656 | +\newpage |
| 7657 | + |
7640 | 7658 | \rSec1[namespace.udecl]{The \tcode{using} declaration}%
|
7641 | 7659 | \indextext{using-declaration|(}
|
7642 | 7660 |
|
|
7733 | 7751 | X<B, D> x; // OK: \tcode{B::g} and \tcode{D::g} introduced
|
7734 | 7752 | \end{codeblock}
|
7735 | 7753 | \end{example}
|
| 7754 | + |
| 7755 | +\newpage |
| 7756 | + |
7736 | 7757 | \begin{example}
|
7737 | 7758 | \begin{codeblock}
|
7738 | 7759 | class C {
|
|
8349 | 8370 | must not be defined in more
|
8350 | 8371 | than one namespace scope.
|
8351 | 8372 | \end{note}
|
| 8373 | + |
| 8374 | +\newpage |
| 8375 | + |
8352 | 8376 | \begin{example}
|
8353 | 8377 | \begin{codeblock}
|
8354 | 8378 | int x;
|
|
8980 | 9004 | implementations should not emit such a warning unless
|
8981 | 9005 | all of its structured bindings are unused.
|
8982 | 9006 |
|
| 9007 | +\newpage |
| 9008 | + |
8983 | 9009 | \pnum
|
8984 | 9010 | \begin{example}
|
8985 | 9011 | \begin{codeblock}
|
|
0 commit comments