The exception for overloaded operators allows argument-dependent lookup
in cases like that of
ostream_iterator::operator= (
[ostream.iterator.ops])
where lookup for the expression
*out_stream << value
includes the associated namespaces of
value's type
.