Skip to content

Commit e546fb5

Browse files
committed
[expr.ref] Add "Otherwise, " to beginning of list items.
This was requested by P2996R13, but seems to have been missed. This edit also covers the new item added by P3293R3.
1 parent 7488f05 commit e546fb5

File tree

1 file changed

+19
-13
lines changed

1 file changed

+19
-13
lines changed

source/expressions.tex

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4243,13 +4243,14 @@
42434243
otherwise \tcode{E1.E2} designates the object or function to which
42444244
the corresponding reference member of \tcode{E1} is bound.
42454245
Otherwise, one of the following rules applies.
4246-
42474246
\begin{itemize}
4248-
\item If \tcode{E2} designates a static data member and the type of \tcode{E2}
4247+
\item
4248+
If \tcode{E2} designates a static data member and the type of \tcode{E2}
42494249
is \tcode{T}, then \tcode{E1.E2} is an lvalue; the expression designates
42504250
the named member of the class. The type of \tcode{E1.E2} is \tcode{T}.
42514251

4252-
\item Otherwise, if \tcode{E2} designates a non-static data member and the type of
4252+
\item
4253+
Otherwise, if \tcode{E2} designates a non-static data member and the type of
42534254
\tcode{E1} is ``\cvqual{cq1 vq1} \tcode{X}'', and the type of \tcode{E2}
42544255
is ``\cvqual{cq2 vq2} \tcode{T}'', the expression designates the corresponding
42554256
member subobject of the object designated by \tcode{E1}. If \tcode{E1}
@@ -4268,34 +4269,38 @@
42684269
is not declared to be a \keyword{mutable} member,
42694270
then the type of \tcode{E1.E2} is ``\cvqual{cq12} \cvqual{vq12} \tcode{T}''.
42704271

4271-
\item If \tcode{E2} denotes an overload set,
4272+
\item
4273+
Otherwise, if \tcode{E2} denotes an overload set,
42724274
the expression shall be the (possibly-parenthesized) left-hand operand of
42734275
a member function call\iref{expr.call}, and
42744276
function overload resolution\iref{over.match}
42754277
is used to select the function to which \tcode{E2} refers.
42764278
The type of \tcode{E1.E2} is the type of \tcode{E2}
42774279
and \tcode{E1.E2} refers to the function referred to by \tcode{E2}.
4278-
42794280
\begin{itemize}
4280-
\item If \tcode{E2} refers to a static member function,
4281+
\item
4282+
If \tcode{E2} refers to a static member function,
42814283
\tcode{E1.E2} is an lvalue.
4282-
4283-
\item Otherwise (when \tcode{E2} refers to a non-static member function),
4284+
\item
4285+
Otherwise (when \tcode{E2} refers to a non-static member function),
42844286
\tcode{E1.E2} is a prvalue.
42854287
\begin{note}
42864288
Any redundant set of parentheses surrounding the expression
42874289
is ignored\iref{expr.prim.paren}.
42884290
\end{note}
42894291
\end{itemize}
42904292

4291-
\item If \tcode{E2} designates a nested type, the expression \tcode{E1.E2} is
4292-
ill-formed.
4293+
\item
4294+
Otherwise, if \tcode{E2} designates a nested type,
4295+
the expression \tcode{E1.E2} is ill-formed.
42934296

4294-
\item If \tcode{E2} designates a member enumerator and the type of \tcode{E2}
4297+
\item
4298+
Otherwise, if \tcode{E2} designates a member enumerator and the type of \tcode{E2}
42954299
is \tcode{T}, the expression \tcode{E1.E2} is a prvalue of type \tcode{T}
42964300
whose value is the value of the enumerator.
42974301

4298-
\item If \tcode{E2} designates a direct base class relationship $(D, B)$
4302+
\item
4303+
Otherwise, if \tcode{E2} designates a direct base class relationship $(D, B)$
42994304
and the type of \tcode{E1} is \cv{} \tcode{T},
43004305
the expression designates the direct base class subobject of type $B$
43014306
of the object designated by \tcode{E1}.
@@ -4329,7 +4334,8 @@
43294334
\end{codeblock}
43304335
\end{example}
43314336

4332-
\item Otherwise, the program is ill-formed.
4337+
\item
4338+
Otherwise, the program is ill-formed.
43334339
\end{itemize}
43344340

43354341
\pnum

0 commit comments

Comments
 (0)