DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 581LOPqm3022517 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 581LOPqm3022517 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=GIeDZxro X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 6A9963858C41 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1756761863; bh=NKFtd4OzbDFYRZIi2X2JX9PgXhHPzT0OB45+zBsvqXI=; 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=GIeDZxro/54Mz41E5o58EEIR3hGkyRYJy32tQGAaGbi8CIcy01EttPqLEp5+Hqn9F +3ANibVxLjUuIJfXAgtRDEJjfy09Xna0mQAT04J4XvTKtez7/j9G5/L6j6mitYbJji j/TjsO6MIJawbiMOiM/VGU1hNpZwCHQcjEuAo/Bk= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org BB2BC3858D21 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org BB2BC3858D21 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1756761835; cv=none; b=a45+Q/uOkufDm8BHqw72+4kEuziwRmcQDgTYBwdTc25N9IxK6BLBA+bpHyVCdMPEgX6zWr79HYr+kVTeH01fSA9/ctUPgvgPT5L16tAb08ES0yBbK5xKnVXe7plfNECpx/kddPkw6JBRr3IopOaF5OS9OWe7gjaYsxsv/TKM0So= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1756761835; c=relaxed/simple; bh=VCvDv176TrbOPka3gTKauqYL8CNvxYeXDQw5WiFKIiM=; h=DKIM-Signature:Message-ID:Date:MIME-Version:Subject:To:From; b=RMXQhUgnMLYCPpnNJxlW/Aq6v5aWqkS2i3DkM9gWwFQoNl5ObfgEVahYJvz+1SCeSonHdN86r7akGYrDExsO7OstAYdjQWV7YBtZGb1PfNBcBulyJC0fy3HokrK7ZSb369AHKfzrf/zqBy/2MQbEkifUJ0Y8I0j7UiLbz46fVFw= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BB2BC3858D21 X-UI-Sender-Class: 724b4f7f-cbec-4199-ad4e-598c01a50d3a Message-ID: Date: Mon, 1 Sep 2025 22:23:53 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bash 5.2.21-1: a bug in [0-9] expansion To: cygwin AT cygwin DOT com References: <50ef4d1a-fab5-4711-b17a-5d26e74c4881 AT SystematicSW DOT ab DOT ca> Content-Language: en-GB X-Enigmail-Draft-Status: N11222 Autocrypt: addr=sam DOT edge AT gmx DOT com; keydata= xjMEZpaFCBYJKwYBBAHaRw8BAQdAMp8Pn8CgGoxJK9rle2Op8pou5nK0EWr0ULtf0nAcbffN G1NhbSBFZGdlIDxzYW0uZWRnZUBnbXguY29tPsKPBBMWCAA3FiEEwl1LsIbGjzTcdvZZnnRS 4+xX2j0FAmaWhQgFCRLMAwACGwMECwkIBwUVCAkKCwUWAgMBAAAKCRCedFLj7FfaPRkCAP0Q 6qXDFe5tsJPlOVzcKzRoOCyHtTpJVEkLLuQICmxZVQD9G0dbldMjba5HliemDopHpPK/F7mm 8xN6cIYZR0oeUgPOOARmloUIEgorBgEEAZdVAQUBAQdAy1HFAiQHCDQJBN96J2CrNx4zT5fA eTMTg4wFkouDpEUDAQgHwn4EGBYIACYWIQTCXUuwhsaPNNx29lmedFLj7FfaPQUCZpaFCAUJ EswDAAIbDAAKCRCedFLj7FfaPawOAQDY7WEocDlwOUPT73PJ/mXLVe1HFmvz2mjCGjJBsW/2 JwD+N2IAC6iiJXaOcFieYStHqY+TlBqT4iy1A++FvOLpbwU= In-Reply-To: <50ef4d1a-fab5-4711-b17a-5d26e74c4881@SystematicSW.ab.ca> X-Provags-ID: V03:K1:IrDUEKNAMnaizkwyudZEhrk2YpgVv0+9808AiOCyjj5rhimNzOP 5vUSIK6EPB+hUU1u4qTlPMM4wDods0zSFo9Wi0j5CNzGyn3BAxI3PcA3/VlCQpwSjOclWic 619qaILBrDvNxbGxUHBc7/gpjGI1VSuFgWFnKuaTIGf3XkEcseB5NiKYPyfTjFboXGayhhM 0f/GzFw7kFHvDmOBDi2wg== UI-OutboundReport: notjunk:1;M01:P0:gr99R+Nur/Y=;1XPABVT1YlK/Zxo3IQYtcCjHlHk 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 X0Qr2dc= X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Sam Edge via Cygwin Reply-To: Sam Edge Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 581LOPqm3022517 On 01/09/2025 18:19, Brian Inglis via Cygwin wrote: > On 2025-08-31 13:06, Mariusz Wodzicki via Cygwin wrote: >> Description of the problem. >> [0-9]  picks also certain Unicode superscript characters ( namely, ⁰ ⁴ ⁵ ⁶ >> ⁷ ⁸ ⁹ ), and every Unicode subscript character. >> >> Example: the directory has the following files: >> $ /bin/ls >> ₀.txt  ₁.txt  ₂.txt  ₃.txt  ₄.txt  ₅.txt  ₆.txt  ₇.txt ₈.txt  ₉.txt >> ⁰.txt  ¹.txt  ².txt  ³.txt  ⁴.txt  ⁵.txt  ⁶.txt  ⁷.txt ⁸.txt  ⁹.txt >> >> $ /bin/ls [0-9].txt >> ₀.txt  ₁.txt  ₃.txt  ⁴.txt  ⁵.txt  ⁶.txt  ⁷.txt  ⁸.txt >> ⁰.txt  ₂.txt  ₄.txt  ₅.txt  ₆.txt  ₇.txt  ₈.txt >> >> $ locale >> LANG=en_US.UTF-8 >> LC_CTYPE="en_US.UTF-8" >> LC_NUMERIC="en_US.UTF-8" >> LC_TIME="en_US.UTF-8" >> LC_COLLATE="en_US.UTF-8" >> LC_MONETARY="en_US.UTF-8" >> LC_MESSAGES="en_US.UTF-8" >> LC_ALL= >> >> System. >> Fully up to date Windows 11 >> cygwin 3.6.4-1 >> bash    5.2.21-1 > > For reproducible results prefix commands with LC_ALL=C … or possibly just LC_COLLATE=C or LC_CTYPE=C or =POSIX to standardize the locale, otherwise many commands will respect the current locale, and some respect Unicode regardless of locale e.g. `info wc`: > > "Unless the environment variable ‘POSIXLY_CORRECT’ is set, GNU ‘wc’ treats the following Unicode characters as white space even if the current locale does not: U+00A0 NO-BREAK SPACE, U+2007 FIGURE SPACE, U+202F NARROW NO-BREAK SPACE, and U+2060 WORD JOINER." > > For GNU utilities, where info pages are preferred, such as coreutils*, compiler and language processors, and tools packages, many details do not appear in the man pages, for example: > > "Full documentation or available locally via: info '(coreutils) wc invocation'" > > although `info wc` shows the same page. > > ————— > * [ arch b2sum base32 base64 basename cat chcon chgrp chmod chown chroot cksum comm cp csplit cut date dd df dir dircolors dirname du echo env expand expr factor false fmt fold gkill groups head hostid id install join link ln logname ls md5sum mkdir mkfifo mknod mktemp mv nice nl nohup nproc numfmt od paste pathchk pinky pr printenv printf ptx pwd readlink realpath rm rmdir runcon seq sha1sum sha224sum sha256sum sha384sum sha512sum shred shuf sleep sort split stat stdbuf stty sum sync tac tail tee test timeout touch tr true truncate tsort tty uname unexpand uniq unlink users vdir wc who whoami yes > Bash is GNU but isn't part of coreutils as far as I know. Type 'man bash' and then read the 'Pattern Matching' section for its globbing behaviour. TL;DR For bash 5.2, using 'export LC_ALL=C.UTF-8' as Brian suggests or 'export LC_COLLATE=C.UTF-8' or 'shopt -s globasciiranges' should revert to simple ASCII ranges for '[0-9]', '[a-z]' etc. I'm seeing the correct behaviour with up-to-date Cygwin bash/coreutils etc. by the way. 'echo [0-9]*' only expands out sub/super-digits if I use 'LC_COLLATE=en_GB.UTF-8' or similar with 'shopt -u globasciiranges'. -- Sam Edge -- 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