DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 64V8AZFa2689492
Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com
Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com
DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 64V8AZFa2689492
Authentication-Results: delorie.com;
	dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=AB0VH/nB
X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C13DA4BA900E
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1780215034;
	bh=rcwSZr+tRfGCcdcRIOp2vQBbkYRUT9j6nRtz0IEJpZg=;
	h=Date:Subject:To:References:In-Reply-To:List-Id:List-Unsubscribe:
	 List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:
	 From;
	b=AB0VH/nBKYYSwui6FzI6cx0+aQDDGLBpiQ/szhfeL63nqmUnB0/Df3dsLRsNoZ7BW
	 x7il9D5swqQfm0xsER/ZcllNFXF9uwSemOkFcsiEl9jHSJpr92foiEKdBOJSOQVx5Z
	 nJUGPKut0Xl+ZUcos+tZ00qSoK9oUCB0Vw6+mdK4=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E7C0D4BA23ED
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org E7C0D4BA23ED
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1780215014; cv=none;
 b=cjWgqJ+JiGFDngjPfiUOJnD9uRNsxEMbDXiWJVko4TeMCSvabSXuaZ3PfM41ermsaTkvJNAK0hZ26wARor8+nzNdaZgZA5tLARY9ertzCVXFJA+EFXktBbo1IA406OmZfwfwDEV3X2IlJ/0hbfNoPZPN1LDbejU2gSPtFC9sGd0=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
 t=1780215014; c=relaxed/simple;
 bh=6K5Ir0Jc8JlmiQ/byG3mV7llYdFeY8tHLoXnraHD3Sc=;
 h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From;
 b=tFqxogKo00sMuIx3Mb9KH8rQcOKG9W5T3n8FcT+6hRBe1odHjetF1GkoYfN7nNdM+zGFtaZSNwkRIeRfC2JfL5citdx3Ke9zVIYxoQXmtdRw98fQlWfJxlX2aUm5IoYUgkPoBxX7bSyX2G4fnkj/howEwsgATkssTb+FX2zv1UI=
ARC-Authentication-Results: i=1; sourceware.org;
 dkim=pass (2048-bit key, unprotected)
 header.d=towo.net header.i=towo@towo.net header.a=rsa-sha256
 header.s=s1-ionos header.b=mw8kTR7P
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E7C0D4BA23ED
X-UI-Sender-Class: 55c96926-9e95-11ee-ae09-1f7a4046a0f6
Message-ID: <b8c1571a-1956-4316-a6a9-32176b6c7c80@towo.net>
Date: Sun, 31 May 2026 10:10:12 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: wcwidth broken with gcc 16
To: cygwin@cygwin.com
References: <a9676834-0368-4a8a-88b0-da5e9483b536@towo.net>
 <874ikpawdk.fsf@Gerda.invalid>
 <8ff2ab8d-dfdc-459c-96f3-ed4a4f451440@towo.net>
 <0140C1F4-CA22-46DE-AE21-69C5427C59B5@unified-streaming.com>
 <e94174b7-ea9b-45ca-bfd3-7979ce988920@towo.net>
 <e362b49c-521c-4cd5-8963-c17d5770619b@SystematicSW.ab.ca>
 <fbbeb91a-4c5a-dbe6-1bb3-206cf14a73bc@wisemo.com>
 <4f885156-7772-43d7-ab72-c88f0a7d1e52@towo.net>
 <112594ad-3c25-4dad-b1bc-071b4951ed98@towo.net>
 <97f0f3c6-9f2c-429c-aa8e-875b7806b275@towo.net>
 <8733z9jpfj.fsf@Gerda.invalid>
 <b70d8366-8970-4cdc-a693-6d826fe76277@towo.net> <87o6hw23tp.fsf@>
Autocrypt: addr=towo@towo.net; keydata=
 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 kQ==
In-Reply-To: <87o6hw23tp.fsf@>
X-Provags-ID: V03:K1:EdjLarkVn27J0RhlwPYUwUSlnm1ByC79oLtte9l+510ryrmoeU4
 0V0hisvAmMeyaRald4yoO7Oqfn53WFUGwL+VtWJRhcJxj8OiazmkH+40vsKZ3xT0m4Wgf+4
 2KUN3XlJP5+RoqiIgHsIOniVSxfhrwh+RFrHNYdTkOVWq9UAzMz0hUfAiD/VDOl6wijL4T/
 YWfVkROgcXRnvYW0tyx2Q==
UI-OutboundReport: notjunk:1;M01:P0:wdsdb/5d6bc=;D3HEwyIYWaSRCAf6rzGSzMu22iz
 CyPmgno4uRkqZFwLa8BRGJemYCLauM797X1qi1Nx4UzSR3Xub6GBFdawm1SaU/6wiqCb20RX2
 ETXUHkwYFrN133/rP3FzfevqW/hMOHlJlEJcwRYZ+kBIVqMmobU3TTc4RorEC+yeO4+IQxxR2
 EsTmIB/IwzNmNmI9Cbyh+IrjapRwiU4PhPlH7/bOlpuxHvVfiYDGoB45d5Ao3/RUNn1fBobGS
 sSpwOwaBoNYxGxpL/umuUDIsuJSGQlZDf42lpcW+4A6/W5wXUPfILhfetDBnzLLX4Zpx5BSz1
 QKd5oF/W6RppN3GsFoIvjaYsaLYKogDiovPzuaQ5CalOiloqxqadt8qeWO+MhbupKCK23Fq1L
 Kv41JZDjAykumwsV+MatAD1SaRB3OTRHeptpP/rvxNAVl8+ozIr9WlbxbrND7gO3g+2XKXVXv
 m1jGcohgvleJ3TynEsgwLAzC12ltSb2bVrREN5vlKgR6DclN6zMh+Nf2Ia2kSo8Z9XiLykt2b
 Tf7+3x+pQ+wXyOYQipq6FL2g2vvQJiQdI93EqsXwfdmXY68OSOJAESyfp1mD0Kb12/tGWiuU6
 MAZc5I21wyiGpXJsWottFN1hViLKmg38VS5bt/P1+B5WmE8HiQLGVAlPHwk3yJj1k56rISLLi
 CaB/u55S+IjI47YNzc7QKzyqwdiRpFxz8QILwhLUNRWA61RZ91NNc1rERGVaGFhwxTPOanU/u
 tqRZBML38WXOlUN20JuV182nH1P/g+TGqiC31lIbNFgPAgEF3sHN0h6UO2J82ajnFMUJQYu4K
 5t4979C1y8RRTpFzPV8EQc/FgOzW0HkD3cUbVwBsxWde5LSqs8vylAyQ/9z8WNx9vfun0rhuo
 UfFw+VCsqB3MzH9w217BHJDXCbkH9A3DXqcU3ioTF+PpfNkwr9BwF0WDy2qeF7/bsHQ8p8NqQ
 OSP9KDgzYdrxpyjQTDOII8B+YzDLyobumOOaIrPVGSdGzXFCbP/qTxjsv6NXsPWIWEcweFaGC
 GurRoZxWEJwsVfQZxJayhut/EmLo0OzUp7vlwNb0dALK449KZaTUqHhc4eFgqjjgWnOhsFNio
 ED7q7KNZzf0OmaP9OigHPD4ZAV9c/1fr55RO1LHYj6sXQDo2TR9CB0c0DuWAqyRv2zFBueIsq
 KCani5fFAHg3HG7Xyh6eAT6NIWCmAF9S31bGVMDD1H+ITLt5tBhiZh0YMfjzO4qrRAYEcHLIu
 e4EA0IwdG6sJpG4wXT0aD9e48OFFjKAvTeKyTm23rc9ePRXIeJ4JSls8b5AY6HiudmZ/7ieL4
 NlBPATKRvxXatrSHOHLrtNv2Msdxogt+burybKRHkSD3NzLTkzsvAlzC+DO9K0HZO9Pok/Yke
 WgNfNSdwfd7zXxyDnjWZoFTKJ8lDQJlL4vYCxGRiDNXVrfbB9pWyGiv5b1tjoxSIryPar6Trl
 Qg5RWhY0MtVguzpe4F7SSp6T8APCR52bjdFhADi1ceZRidR0elUt9XYoI7BVVYAydPcpHzrtz
 02RvlDRNHrpuzuzIZcsH+9m+vJPaZ41WuPnImi9r6l/EpMRvg2yVDQHmYeRUoqBJ0VV/CdiST
 kPW1qqll8sGa6pW+hrFx2xjPLMZN4uQr9s/+dg3a4oU63EnLOarhXIeDx2yUGeiY+ymEri04B
 KLVrkx0BaFxo3Y4P6UNilvb0/7dfBdV17nTjRATF3BHDR2mOt68ASSLddxDTd88JizDD2Me67
 vm2EihkUZV+lGZaMXaU7KICXyq2yuC71ViQ4aS2AivO/YQbwCNRzMXXWv1M5PpxTFjt7KUn4w
 54kl3lhMCRgHUUQ6KCPKWg3k7TndCrJSmSlNUASEHWpPmnpRgufwP+b5k27N4LDZwzlkktehA
 crrmJykTKrA2h/l6dcwKF+DVa/qxJJ2TKl1uCI=
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.30
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
From: Thomas Wolff via Cygwin <cygwin@cygwin.com>
Reply-To: Thomas Wolff <towo@towo.net>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Errors-To: cygwin-bounces~archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie.com@cygwin.com>


Am 30.05.2026 um 19:40 schrieb ASSI via Cygwin:
> Thomas Wolff via Cygwin writes:
>> The patch is already on the newlib mailing list.
> The input parameter is supposed to be wchar_t, not wint_t (per POSIX and
> also the previous implementation), so I#d leave that alone.
As also commented to Brian on the newlib list, this point of view does 
not consider that cygwin wchar_t is not POSIX wchar_t.
There's simply 16 bits missing, so a function wcwidth(wchar_t) would not 
be able to evaluate Unicode character code points beyond U+FFFF.
The bit-extension to wint_t is needed to compensate for the cygwin 
deviation in the wchar_t type.

>> Yeah, I forgot to type-extend also the include file back in 2018 :-(
>> but that made no difference so far, only now in gcc 16, as explained
>> by Drea in that issue:
>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125451#c16
> Just pun the type in the stub implementation, which would automatically
> happen (I think) since there's already an assignment of the input
> parameter from the POSIX wcwidth (wchar_t) to a local variable that has
> type wint_t.  And since that's not a function call but an assignment,
> the promotion rules should be correct for your application without any
> cast.
The implementation was extended to wint_t some years ago just to enable 
the functionality indicated above, and it used to work until gcc 15.
For some change in gcc 16, it is now necessary to adapt the prototype 
too, or gcc will apply the wrong extension and yield broken results.
Thomas

> Regards,
> Achim.


-- 
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
