|
3276 | 3276 | \tcode{mutable} member, then the type of \tcode{E1.E2} is
|
3277 | 3277 | ``\cvqual{cq12} \cvqual{vq12} \tcode{T}''.
|
3278 | 3278 |
|
3279 |
| -\item If \tcode{E2} is a (possibly overloaded) member function, function |
3280 |
| -overload resolution\iref{over.match} is used to determine whether |
3281 |
| -\tcode{E1.E2} refers to a static or a non-static member function. |
| 3279 | +\item If \tcode{E2} is a (possibly overloaded) member function, |
| 3280 | +function overload resolution\iref{over.match} |
| 3281 | +is used to select the function to which \tcode{E2} refers. |
| 3282 | +The type of \tcode{E1.E2} is the type of \tcode{E2} |
| 3283 | +and \tcode{E1.E2} refers to the function referred to by \tcode{E2}. |
3282 | 3284 |
|
3283 | 3285 | \begin{itemize}
|
3284 |
| -\item If it refers to a static member function and the type of |
3285 |
| -\tcode{E2} is ``function of parameter-type-list returning \tcode{T}'', |
3286 |
| -then \tcode{E1.E2} is an lvalue; the expression designates the static |
3287 |
| -member function. The type of \tcode{E1.E2} is the same type as that of |
3288 |
| -\tcode{E2}, namely ``function of parameter-type-list returning |
3289 |
| -\tcode{T}''. |
| 3286 | +\item If \tcode{E2} refers to a static member function, |
| 3287 | +\tcode{E1.E2} is an lvalue. |
3290 | 3288 |
|
3291 |
| -\item Otherwise, if \tcode{E1.E2} refers to a non-static member |
3292 |
| -function and the type of \tcode{E2} is ``function of |
3293 |
| -parameter-type-list \cv{} \opt{\grammarterm{ref-qualifier}} returning \tcode{T}'', then |
3294 |
| -\tcode{E1.E2} is a prvalue. The expression designates a |
3295 |
| -non-static member function. The expression can be used only as the |
| 3289 | +\item Otherwise (when \tcode{E2} refers to a non-static member function), |
| 3290 | +\tcode{E1.E2} is a prvalue. The expression can be used only as the |
3296 | 3291 | left-hand operand of a member function call\iref{class.mfct}.
|
3297 | 3292 | \begin{note}
|
3298 | 3293 | Any redundant set of parentheses surrounding the expression
|
3299 | 3294 | is ignored\iref{expr.prim.paren}.
|
3300 | 3295 | \end{note}
|
3301 |
| -The type of \tcode{E1.E2} is |
3302 |
| -``function of parameter-type-list \cv{} returning \tcode{T}''. |
3303 | 3296 | \end{itemize}
|
3304 | 3297 |
|
3305 | 3298 | \item If \tcode{E2} is a nested type, the expression \tcode{E1.E2} is
|
|
0 commit comments