Re: wcwidth broken with gcc 16
Jakob Bohm via Cygwin <[email protected]> Mon, 4 May 2026 23:52:05 +0200
| Newsgroups | gmane.os.cygwin |
|---|---|
| Organization | WiseMo A/S |
| Message-ID | <[email protected]> |
On 03/05/2026 18:14, Brian Inglis via Cygwin wrote: > On 2026-05-03 06:00, Thomas Wolff via Cygwin wrote: >> Am 03.05.2026 um 12:58 schrieb Dimitry Andric: >>> 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? >>> It looks like BSD-based libc gives 1 for U+D7C6, U+D7CB and U+D7CB, >>> while glibc gives 0. >> Thanks. Despite some differences, none of them gives the broken >> results of gcc-16 on cygwin, so I wonder whether it makes sense to >> report upstream at this time. > > It appears that libiberty does not contain any mb/wc macros/functions, > , and only contains safe-ctype IS... macros/functions with fixed ASCII > characters. > > Does gcc, like most GNU products, include some release of gnulib? > Could gnulib or gcc config detect some lack of support and "fix" > newlib-cygwin support of Unicode properties declared in > wchar.h/wctype.h, or used in i18n, libunistring, and Unicode string > functions, especially if doing any kind of cross-bootstrap? > > https://www.gnu.org/software/gnulib/MODULES.html > > I also note that w32api-headers/runtime are gcc runtime dependencies > and hope they are used only in COFF/PE-related generation? > Under Cygwin, does wcwidth() use Cygwin-provided table, derived either from upstream Unicode data or from Windows OS APIs that use OS bundled Unicode data? -- Jakob Bohm, CIO, partner, WiseMo A/S. https://www.wisemo.com Transformervej 29, 2860 Soborg, Denmark. direct: +45 31 13 16 10 <tel:+4531131610> This message is only for its intended recipient, delete if misaddressed. WiseMo - Remote Service Management for PCs, Phones and Embedded -- 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