On 2026-08-18 11:23, Bruno Haible wrote:
So, for me, (3) is the right approach: In the "C" locale, map 0x80..0xFF not
to U+0080..U+00FF but to U+DF80..U+DFFF, like musl libc does it. This will
ensure that c32isprint returns 0 on these inputs, like isprint does.

This sounds good to me as well. It is unfortunate that the "C" locale, which is 
supposed to be fast, will have a small performance penalty on OpenBSD and Cygwin (and I 
assume native MS-Windows?) due to Gnulib having to replace mbrtoc32. But that's better 
than incorrect behavior.

Reply via email to