Skip to content

Commit d3cc24e

Browse files
committed
[expr.mptr.oper] Clarify pointer-to-member operators.
1 parent 6a0a1aa commit d3cc24e

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

source/expressions.tex

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5883,16 +5883,15 @@
58835883

58845884
\pnum
58855885
The binary operator \tcode{.*} binds its second operand, which shall be
5886-
of type ``pointer to member of \tcode{T}'' to its first operand, which shall be
5886+
of type ``pointer to member of class \tcode{T} of type \tcode{X}'' to its first operand, which shall be
58875887
a glvalue
58885888
of
58895889
class \tcode{T} or of a class of which \tcode{T} is an unambiguous and
5890-
accessible base class. The result is an object or a function of the type
5891-
specified by the second operand.
5890+
accessible base class. The result is an object or function of type \tcode{X}.
58925891

58935892
\pnum
58945893
The binary operator \tcode{->*} binds its second operand, which shall be
5895-
of type ``pointer to member of \tcode{T}'' to its first operand, which shall be of
5894+
of type ``pointer to member of class \tcode{T}'' to its first operand, which shall be of
58965895
type ``pointer to \tcode{U}''
58975896
where \tcode{U} is either \tcode{T} or
58985897
a class of which \tcode{T}
@@ -5912,7 +5911,10 @@
59125911
The restrictions on cv-qualification, and the manner in which
59135912
the cv-qualifiers of the operands are combined to produce the
59145913
cv-qualifiers of the result, are the same as the rules for
5915-
\tcode{E1.E2} given in~\ref{expr.ref}.
5914+
\tcode{E1.EM} given in~\ref{expr.ref},
5915+
where \tcode{EM} is an \grammarterm{identifier}
5916+
naming a hypothetical non-static non-mutable member of class \tcode{T}
5917+
declared with type \tcode{X}.
59165918
\begin{note}
59175919
It is not possible to use a pointer to member that refers to a
59185920
\keyword{mutable} member to modify a const class object. For

0 commit comments

Comments
 (0)