This isn't required by the Standard but is an QoI extension.
This extension isn't only benificial for users but avoids code
duplication libc++. The ouput iterator in std::format only needs to
satisfy the output_iterator concept and not the Cpp17OutputIterator
requirements. This means a conforming std::format implementation can't
use the available algorithms and needs to write their own.
Note: This is the first patch, there will be follow-up patches making
this change to other algorithms.
Depends on D122072
clang-format suggested style edits found: