All functions with
associated constraints
that are not satisfied (
[temp.constr.decl])
are eliminated from the set of selected functions
. If more than one function in the set remains,
all function template specializations
in the set
are eliminated if the set also contains a function that is not a
function template specialization
. Any given non-template function
F0
is eliminated if the set contains a second
non-template function that
is more constrained than
F0
according to
the partial ordering rules of
[temp.constr.order]. Any given
function template specialization
F1
is eliminated if the set contains a second
function template specialization whose function template
is more specialized than the
function template of
F1
according to
the partial ordering rules of
[temp.func.order]. After such eliminations,
if any, there shall remain exactly one selected function
.