Skip to content

Commit 12935b8

Browse files
Quuxplusonezygoloid
authored andcommitted
[class.copy.assign] Use Oxford comma.
Also convert some text font spaces into tcode spaces.
1 parent 9437d29 commit 12935b8

File tree

1 file changed

+13
-33
lines changed

1 file changed

+13
-33
lines changed

source/classes.tex

Lines changed: 13 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1777,11 +1777,11 @@
17771777
\indextext{operator!move assignment|see{assignment operator, move}}%
17781778
A user-declared \term{copy} assignment operator \tcode{X::operator=} is a
17791779
non-static non-template member function of class \tcode{X} with exactly one
1780-
parameter of type \tcode{X}, \tcode{X\&}, \tcode{const} \tcode{X\&},
1781-
\tcode{volatile} \tcode{X\&} or \tcode{const} \tcode{volatile}
1782-
\tcode{X\&}.\footnote{Because a template assignment operator or an assignment
1783-
operator taking an rvalue reference parameter is never a copy assignment
1784-
operator, the presence of such an assignment operator does not suppress the
1780+
parameter of type \tcode{X}, \tcode{X\&}, \tcode{const X\&},
1781+
\tcode{volatile X\&}, or \tcode{const volatile X\&}.\footnote{Because
1782+
a template assignment operator or an assignment operator
1783+
taking an rvalue reference parameter is never a copy assignment operator,
1784+
the presence of such an assignment operator does not suppress the
17851785
implicit declaration of a copy assignment operator. Such assignment operators
17861786
participate in overload resolution with other assignment operators, including
17871787
copy assignment operators, and, if selected, will be used to assign an object.}
@@ -1838,40 +1838,20 @@
18381838

18391839
\begin{itemize}
18401840
\item
1841-
each direct base class
1842-
\tcode{B}
1843-
of
1844-
\tcode{X}
1841+
each direct base class \tcode{B} of \tcode{X}
18451842
has a copy assignment operator whose parameter is of type
1846-
\tcode{const}
1847-
\tcode{B\&},
1848-
\tcode{const}
1849-
\tcode{volatile}
1850-
\tcode{B\&}
1851-
or
1852-
\tcode{B},
1853-
and
1843+
\tcode{const B\&}, \tcode{const volatile B\&}, or \tcode{B}, and
18541844
\item
1855-
for all the non-static data members of
1856-
\tcode{X}
1857-
that are of a class type
1858-
\tcode{M}
1859-
(or array thereof),
1845+
for all the non-static data members of \tcode{X}
1846+
that are of a class type \tcode{M} (or array thereof),
18601847
each such class type has a copy assignment operator whose parameter is of type
1861-
\tcode{const}
1862-
\tcode{M\&},
1863-
\tcode{const}
1864-
\tcode{volatile}
1865-
\tcode{M\&}
1866-
or
1867-
\tcode{M}.\footnote{This implies that the reference parameter of the
1848+
\tcode{const M\&}, \tcode{const volatile M\&},
1849+
or \tcode{M}.\footnote{This implies that the reference parameter of the
18681850
implicitly-declared copy assignment operator cannot bind to a
1869-
\tcode{volatile}
1870-
lvalue; see~\ref{diff.class}.}
1851+
\tcode{volatile} lvalue; see~\ref{diff.class}.}
18711852
\end{itemize}
18721853

1873-
Otherwise, the implicitly-declared copy
1874-
assignment operator
1854+
Otherwise, the implicitly-declared copy assignment operator
18751855
will have the form
18761856

18771857
\begin{codeblock}

0 commit comments

Comments
 (0)