DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 643AxA232849897
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 643AxA232849897
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=auClqhx+
X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 5EC854BB1C37
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1777805949;
	bh=+nWosIEX3lsrrJ2OkOz0n7cqe/gqvUvDIXO4J5/1Odw=;
	h=Subject:In-Reply-To:Date:Cc:References:To:List-Id:
	 List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:
	 From:Reply-To:From;
	b=auClqhx+3yTEWU/j+w3jas1DwoCV4Wl/ywfT1MmgL0HczQlS5vVtzT6jm8fDVRLcr
	 hNrRoWx4u5uYKJCsORBeFDIpUbflUH/0Ck4Wu1Dkx9/asew0jvWwNI/lzypQUo0BP6
	 m2M94Dq420pEcP/+0tz3yu+10jqolzPFNPU5wMO4=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 91DC54BB1C2C
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 91DC54BB1C2C
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1777805930; cv=none;
 b=YSDXn3Wqxp4n7zanZtUiKFetKVQ14LuM7zuLg1DRPOQAv1Gik/W29/PH+0wDyoVzLpkhHJ0XBxjY10gcrUUhZjhiMm4pWplnXtkFCcSWfBsIGJJZoNLYEu0B66awh0p5S6mrQ8LmpRL7QfQBgWvzKxuxXYdqdsALn+mFgYSU0wc=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
 t=1777805930; c=relaxed/simple;
 bh=yFvlo3TCBlDKF6QVj8T1wRe9YNZuirKV5PB9iRa49zs=;
 h=DKIM-Signature:Mime-Version:Subject:From:Date:Message-Id:To;
 b=qSqjzbS/3DCCMFTyrNWQiPVLHHijZO3ZgjLwnUTHLbM0ozdkryvr78Igk82uyw3YZqvszFv/Qq6sKgieEQNkx8XKCZVgN4QyE5U0XJnE4FbA7FundT5WnQqBA4Hd3Ty93ajKy5blR86xSr/m6KkjI/TZCCXfcLDdbWJYQxKOBas=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 91DC54BB1C2C
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20251104; t=1777805928; x=1778410728;
 h=to:references:message-id:content-transfer-encoding:cc:date
 :in-reply-to:from:subject:mime-version:x-gm-gg:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=yFvlo3TCBlDKF6QVj8T1wRe9YNZuirKV5PB9iRa49zs=;
 b=s7oQUwOYeAHyciV6BSmY9lt9dGqp7gTg9jsImE5JUP1rBdG11Hfbuh0HRMwrfd8WE0
 bE2T7HO5bD1EtWrnGhxs/9KvT8G7mNoPUfvIX2Ljjch8GADi/WZ4iY270sNBdtaTGHcj
 TDRicMxNem45xyMcJFmRKZ2wwAH5YBGs+l+KrKPvXIjnns9cL8FFTSLWZwgVm3FL9hS1
 I6AUWXb2ztSKgL+ADQ1a+uAvdhQDo1YlWpc4NNwcaoO1M6Pgw1eahX0vA0PkrguVrpWR
 A9h+MtrKL+iVLcFNOjo7RYr7lJpFT5SuXYakuBAu8xWvljxKMcAncAwV/3O0SLyhxYDm
 9g1A==
X-Gm-Message-State: AOJu0Yxzc0Udz6rZiXIPpiZRC/mkBxiYWHWma/O76HzLmxwL3eGvjnnB
 CyN+hAQQuf7Eu/amNdcyecldqizennd9ZUfUtBrXrdgZOniathXYmk7JuBWCA2XZ/+2UkJlkjXW
 4bvMa
X-Gm-Gg: AeBDiesAQ0n+7yyDlwvfYnkaTDLjbIeN9wgGSpfKYy83S+q1jTDbrjRgY2DuwPSV2Tp
 aFJ6euTYWbHpCOoEWVecbSthpI3OB909dSDSHGv9JCQxo4rG3hx+yOFzhYYXR7XGWLJGsiUyBz4
 3PScb9+HNvqg2asc3bx7wd7MFcVtU2NwqSVXPsbpiziARWWNOfpRDfPqU+eD5m9dm6uvBfJAZmv
 A7ux04jmF6mGEXwr4tqmWfg1jJ1g3XSGUtBz4uRUarpILiNxL/Q8w9njjbqnwLq2yWBGze9k/Sd
 dn4WZgdMQNiz4e2NmbeEyEnYQF7c+hiwWqT1xQXA39OFafMXXojj1Qg6F6Te8ZNd+Kig8ftJhMe
 eFTwUPsyvgNMfFqMFXAaQVZ2cn1if/akv5rJDR6F8a9gUNhIe62PfUCZF4AkVEeM3TKGvVU+05X
 Ot4EWMNio6eAXBorSbtGf72EXeTfltYVocaD6vJ6fmkrn8IzcT6K6DFPtHh0r7vrQiUoXRQg+W0
 OQAHOiUIuQUl6dMNI+4
X-Received: by 2002:a17:906:6a09:b0:bbe:3f15:f480 with SMTP id
 a640c23a62f3a-bbffc67fc52mr288721966b.39.1777805927974; 
 Sun, 03 May 2026 03:58:47 -0700 (PDT)
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81.1.6\))
Subject: Re: wcwidth broken with gcc 16
In-Reply-To: <8ff2ab8d-dfdc-459c-96f3-ed4a4f451440@towo.net>
Date: Sun, 3 May 2026 12:58:46 +0200
Cc: cygwin@cygwin.com
Message-Id: <0140C1F4-CA22-46DE-AE21-69C5427C59B5@unified-streaming.com>
References: <a9676834-0368-4a8a-88b0-da5e9483b536@towo.net>
 <874ikpawdk.fsf@Gerda.invalid>
 <8ff2ab8d-dfdc-459c-96f3-ed4a4f451440@towo.net>
To: Thomas Wolff <towo@towo.net>
X-Mailer: Apple Mail (2.3826.700.81.1.6)
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: Dimitry Andric via Cygwin <cygwin@cygwin.com>
Reply-To: Dimitry Andric <dimitry@unified-streaming.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cygwin-bounces~archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie.com@cygwin.com>

On 3 May 2026, at 12:47, Thomas Wolff via Cygwin <cygwin@cygwin.com> 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
