https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93219
--- Comment #5 from Roland Illig <roland.illig at gmx dot de> --- (In reply to Jakub Jelinek from comment #4) > Change return type from void to int. Not quite. The return type is now bool, not int. > Return true if not all characters have been written. This feels wrong to me. If the return type is bool, it should indicate whether the function was successful. And right now, the burden is on the caller. Since none of the possible callers was changed in this commit, the compiler warning is now gone but the error condition is not fixed anywhere. It's just hidden more deeply. This is worse than before.