This seems to exist in macOS as well.
Paul Eggert <[email protected]> wrote:
> On 2026-04-13 13:34, Dennis Clarke wrote:
> > Sorry ... forgot to include the actual test-suite log file wherein there
> > is only one failure!
>
> This appears to be an incompatibility in OpenBSD, which mishandles
> titlecase characters. In an en_US.UTF-8 locale OpenBSD's towupper
> function treats the character "Dž" (U+01C5 LATIN CAPITAL LETTER D WITH
> SMALL LETTER Z WITH CARON) differently from GNU/Linux. If you call
> towupper (0x01C5) on OpenBSD it returns 0x01C5, that is, it acts as if
> this character is uppercase. However, it's titlecase, not uppercase. It
> should uppercase to "DŽ", i.e., to U+01C4 LATIN CAPITAL LETTER DZ WITH CARON.
>
> You can verify the incompatibility by running the following program. It
> should output "towupper (0x01C5) = 0x01C4". Instead, it outputs
> "towupper (0x01C5) = 0x01C
>
> #include <locale.h>
> #include <wctype.h>
> #include <stdio.h>
>
> int
> main ()
> {
> if (!setlocale (LC_ALL, "en_US.UTF-8"))
> return perror ("setlocale"), 1;
>
> wint_t c = 0x01C5;
> wint_t w = towupper (c);
> printf ("towupper (0x01C5) = 0x%04X\n", (int) w);
> }
>
> I wouldn't worry much about this incompatibility. You could report it to
> the OpenBSD folks if you like.
>
>