[over.match.call.general]

# 12 Overloading [[over]](./#over)

## 12.2 Overload resolution [[over.match]](over.match#call.general)

### 12.2.2 Candidate functions and argument lists [[over.match.funcs]](over.match.funcs#over.match.call.general)

#### 12.2.2.2 Function call syntax [[over.match.call]](over.match.call#general)

#### 12.2.2.2.1 General [over.match.call.general]

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/overloading.tex#L362)

In a [function call](expr.call "7.6.1.3 Function call [expr.call]")

[*postfix-expression*](expr.post.general#nt:postfix-expression "7.6.1.1 General [expr.post.general]") ( [*expression-list*](expr.post.general#nt:expression-list "7.6.1.1 General [expr.post.general]")opt )

if the [*postfix-expression*](expr.post.general#nt:postfix-expression "7.6.1.1 General [expr.post.general]") names at least one function or
function template,
overload resolution is applied as specified in [[over.call.func]](over.call.func "12.2.2.2.2 Call to designated function")[.](#1.sentence-1)

If the [*postfix-expression*](expr.post.general#nt:postfix-expression "7.6.1.1 General [expr.post.general]") denotes an object of class type, overload
resolution is applied as specified in [[over.call.object]](over.call.object "12.2.2.2.3 Call to object of class type")[.](#1.sentence-2)

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/overloading.tex#L373)

If the [*postfix-expression*](expr.post.general#nt:postfix-expression "7.6.1.1 General [expr.post.general]") is the address of an overload set,
overload resolution is applied using that set as described above[.](#2.sentence-1)

[*Note [1](#note-1)*:

No implied object argument is added in this case[.](#2.sentence-2)

â *end note*]

If the function selected by overload resolution is
an implicit object member function,
the program is ill-formed[.](#2.sentence-3)

[*Note [2](#note-2)*:

The resolution of the address of an
overload set in other contexts is described in [[over.over]](over.over "12.3 Address of an overload set")[.](#2.sentence-4)

â *end note*]
