Whenever an unqualified name other than
swap,
make_error_code, or
make_error_condition
is used in the specification of a declaration
D
in
[support] through
[thread] or
[depr],
its meaning is established
as-if by performing unqualified name lookup (
[basic.lookup.unqual])
in the context of
D. [
Note 1:
Argument-dependent lookup is not performed
. —
end note]
[
Example 1:
The reference to
is_array_v in the specification of
std::to_array (
[array.creation]) refers to
::std::is_array_v. —
end example]
The meaning of the unqualified name
swap is established
in an overload resolution context
for swappable values (
[swappable.requirements])
. The meanings of the unqualified names
make_error_code and
make_error_condition are established
as-if by performing argument-dependent lookup (
[basic.lookup.argdep])
.