Given a type T and an operation operator op(A), where op is an overloadable
operator and A is an
argument list, the set of candidate user-defined operators provided by T
for operator op(A) is determined
as follows:
?For all operator op declarations in T, if at least one operator is
applicable (?4.4.2.1) with respect to
the argument list A, then the set of candidate operators consists of all
applicable operator op
declarations in T.
?Otherwise, if T is object, the set of candidate operators is empty.
?Otherwise, the set of candidate operators provided by T is the set of
candidate operators provided by the
direct base class of T.
operator and A is an
argument list, the set of candidate user-defined operators provided by T
for operator op(A) is determined
as follows:
?For all operator op declarations in T, if at least one operator is
applicable (?4.4.2.1) with respect to
the argument list A, then the set of candidate operators consists of all
applicable operator op
declarations in T.
?Otherwise, if T is object, the set of candidate operators is empty.
?Otherwise, the set of candidate operators provided by T is the set of
candidate operators provided by the
direct base class of T.