On 3 May 2026, at 12:47, Thomas Wolff via Cygwin <[email protected]> wrote: > > Am 03.05.2026 um 07:35 schrieb ASSI via Cygwin: >> Thomas Wolff via Cygwin writes: >>> Observed with gcc 16: >>> For a number of character ranges, mainly (but not only) from CJK >>> ranges, wcwidth incorrectly reports width 1 instead of 2, 0, or -1. >>> Test file attached. >> Can you report this upstream, please? > I couldn't yet test it with gcc 16 on Linux as there is no Debian package. > Did you test it?
On Ubuntu 26.04, with gcc version 16.0.1 20260322, the results are: 2 U+8000 -1 U+A4CF 0 U+A66F 0 U+A672 0 U+A674 0 U+A67D 0 U+A8E0 0 U+A8F1 2 U+AC00 0 U+D7C6 0 U+D7CB 0 U+D7FB -1 U+D800 -1 U+DFFF 2 U+F900 -1 U+FAFF 0 U+FE00 -1 U+FE6F 2 U+FF01 2 U+FF60 2 U+FFE0 2 U+FFE6 On macOS 15.7.5 with Apple clang 17.0.0 (clang-1700.6.4.2): 2 U+8000 -1 U+A4CF 0 U+A66F 0 U+A672 0 U+A674 0 U+A67D 0 U+A8E0 0 U+A8F1 2 U+AC00 1 U+D7C6 1 U+D7CB 1 U+D7FB -1 U+D800 -1 U+DFFF 2 U+F900 -1 U+FAFF 0 U+FE00 -1 U+FE6F 2 U+FF01 2 U+FF60 2 U+FFE0 2 U+FFE6 On FreeBSD 15.0 with clang 19.1.7: 2 U+8000 -1 U+A4CF 0 U+A66F 0 U+A672 0 U+A674 0 U+A67D 0 U+A8E0 0 U+A8F1 2 U+AC00 1 U+D7C6 1 U+D7CB 1 U+D7FB -1 U+D800 -1 U+DFFF 2 U+F900 -1 U+FAFF 0 U+FE00 -1 U+FE6F 2 U+FF01 2 U+FF60 2 U+FFE0 2 U+FFE6 It looks like BSD-based libc gives 1 for U+D7C6, U+D7CB and U+D7CB, while glibc gives 0. -Dimitry -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple

