https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119880
--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> --- Maybe they do the same as libc++ and convert all wide strings to narrow before writing to a byte-oriented stream, or vice versa. Or maybe they don't use stdio for std::cout at all.