From unknown Sat Aug 09 01:06:37 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#61128 <61128@debbugs.gnu.org> To: bug#61128 <61128@debbugs.gnu.org> Subject: Status: [PATCH] Use complementation correctly in shell globs Reply-To: bug#61128 <61128@debbugs.gnu.org> Date: Sat, 09 Aug 2025 08:06:37 +0000 retitle 61128 [PATCH] Use complementation correctly in shell globs reassign 61128 parted submitter 61128 Kerin Millar severity 61128 normal tag 61128 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Sat Jan 28 18:42:14 2023 Received: (at submit) by debbugs.gnu.org; 28 Jan 2023 23:42:15 +0000 Received: from localhost ([127.0.0.1]:41750 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pLupq-0005WZ-JE for submit@debbugs.gnu.org; Sat, 28 Jan 2023 18:42:14 -0500 Received: from lists.gnu.org ([209.51.188.17]:47002) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pLupn-0005WP-J2 for submit@debbugs.gnu.org; Sat, 28 Jan 2023 18:42:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pLupm-0005uo-K6 for bug-parted@gnu.org; Sat, 28 Jan 2023 18:42:11 -0500 Received: from out4-smtp.messagingengine.com ([66.111.4.28]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pLupk-0005Ta-R4 for bug-parted@gnu.org; Sat, 28 Jan 2023 18:42:10 -0500 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 1C5F05C00E2 for ; Sat, 28 Jan 2023 18:42:07 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Sat, 28 Jan 2023 18:42:07 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=plushkava.net; h=cc:content-type:date:date:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t= 1674949327; x=1675035727; bh=OMiRT/oCfIqh2hGFgrqqxNVUVeNx5WAO/GZ Iie77L64=; b=qcuP+TE8O288KdICYGLYBIh3EmVnhsPkEAJX7E1vxIKIprcKM39 2AfgLdvcusMv5m3utlGKPmFsDsjDpsrTUHLCBQVl7Jzg2kbJVbFDoAIUozZNOTxj biSxXqkAle8cUsNmlWpfJV3rsbYj5y5ejSN3ziP+yfSu2j/wBd2JdS4xuQawWiDb RQHNpPJNnWt0b1iSsrC1vG3TVPZX3o+XtpX3BDKMRFc8B99KYN0gBZAx68sckX98 uRLdmFXIPiFB9QRZyRUWyOUCr4kfme42XZG8Ai5GQxGGQbrwUjy91oJn7sWvDVKy f5jUIzQ0Cgl1+voR3zoXg6U/sKDOiWLPFcg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:date:feedback-id :feedback-id:from:from:in-reply-to:message-id:mime-version :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1674949327; x= 1675035727; bh=OMiRT/oCfIqh2hGFgrqqxNVUVeNx5WAO/GZIie77L64=; b=l ZgmP70gJR9HZRdVfL0L8Ur8SHfydjDbwjo6Fvpuk2g4qXtdX2DovPYlFIj8aDtW7 DorakfNPkdXUeYR+95M1vB60ZaG5Kk8/mzP6bdaJWly8ZgWaMWvUYQ49NSm/DFbn H5ajEwM9Gpq5JRtDmKixwDSD9mFzjslRkKQYYvT+knSIgYp4Dar+mW9pDICOMQOA PUlrOweG48hhvTgxwqNm9GAF2xNuUmNNYDjwPJqosgUqIgp96NMNAeeiEmU3DJmR BQ+WYeJFJuQhH39Ww9l6F+i3jDJ9rki7lq5B0lnJKLYUGU96sbPZJWLZap9uVBqc j0ZeZNVBSZbVvhUXnM7pA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedruddvledgudefucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkofggtgesmhdtreerjf dtvdenucfhrhhomhepmfgvrhhinhcuofhilhhlrghruceokhhfmhesphhluhhshhhkrghv rgdrnhgvtheqnecuggftrfgrthhtvghrnhepffevgeejudeutddttdelueeugfdvtdetke ehvdeigeevteefudeuudethedvfeetnecuffhomhgrihhnpehgvghnthhoohdrohhrghen ucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehkfhhmse hplhhushhhkhgrvhgrrdhnvght X-ME-Proxy: Feedback-ID: i2431475f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Sat, 28 Jan 2023 18:42:06 -0500 (EST) Date: Sat, 28 Jan 2023 23:42:05 +0000 From: Kerin Millar To: bug-parted@gnu.org Subject: [PATCH] Use complementation correctly in shell globs Message-Id: <20230128234205.b56737e99f1f9cec945f2755@plushkava.net> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-unknown-linux-gnu) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Multipart=_Sat__28_Jan_2023_23_42_05_+0000_9fRXMhQJ.Y8pQuVX" Received-SPF: pass client-ip=66.111.4.28; envelope-from=kfm@plushkava.net; helo=out4-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) This is a multi-part message in MIME format. --Multipart=_Sat__28_Jan_2023_23_42_05_+0000_9fRXMhQJ.Y8pQuVX Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hello, The attached patch rectifies a spurious test failure reported at https://bugs.gentoo.org/890869. As explained by the commit message, the exclamation mark character should be used to perform negations within bracket expressions, not the circumflex character. -- Kerin Millar --Multipart=_Sat__28_Jan_2023_23_42_05_+0000_9fRXMhQJ.Y8pQuVX Content-Type: application/octet-stream; name="0001-Use-complementation-correctly-in-shell-globs.patch" Content-Disposition: attachment; filename="0001-Use-complementation-correctly-in-shell-globs.patch" Content-Transfer-Encoding: base64 RnJvbSBjN2I1YzA0MDgzYjhmYzIxYzNlMGQwNDQzNzU2MzFkNTU5ZTEyMmUzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBLZXJpbiBNaWxsYXIgPGtmbUBwbHVzaGthdmEubmV0PgpEYXRl OiBXZWQsIDI1IEphbiAyMDIzIDE1OjI2OjQ2ICswMDAwClN1YmplY3Q6IFtQQVRDSF0gVXNlIGNv bXBsZW1lbnRhdGlvbiBjb3JyZWN0bHkgaW4gc2hlbGwgZ2xvYnMKCk5lZ2F0aW9uIHNob3VsZCBi ZSBwZXJmb3JtZWQgYnkgdXNpbmcgdGhlIDxleGNsYW1hdGlvbi1tYXJrPiBjaGFyYWN0ZXIuCkF0 dGVtcHRpbmcgdG8gdXNlIHRoZSA8Y2lyY3VtZmxleD4gc2hhbGwgcmVzdWx0IGluIHVuZGVmaW5l ZCBiZWhhdmlvdXIuCgpEYXNoIHVzZWQgdG8gdG9sZXJhdGUgdGhpcyB2aW9sYXRpb24gb2YgdGhl IHNwZWMgYnV0IHRoZSBmb2xsb3dpbmcKY29tbWl0IHB1dCBhIHN0b3AgdG8gaXQuCgpodHRwczov L2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vdXRpbHMvZGFzaC9kYXNoLmdpdC9jb21taXQvP2lkPThm OWNjYTAKClNpZ25lZC1vZmYtYnk6IEtlcmluIE1pbGxhciA8a2ZtQHBsdXNoa2F2YS5uZXQ+Ckxp bms6IGh0dHBzOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS91dGls aXRpZXMvVjNfY2hhcDAyLmh0bWwjdGFnXzE4XzEzCkJ1ZzogaHR0cHM6Ly9idWdzLmdlbnRvby5v cmcvODkwODY5Ci0tLQogbTQvby1kaXJlY3QubTQgICB8ICA0ICsrLS0KIHRlc3RzL3QtbG9jYWwu c2ggfCAxMCArKysrKy0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwgNyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9tNC9vLWRpcmVjdC5tNCBiL200L28tZGlyZWN0Lm00 CmluZGV4IGQwMGIzODEuLjdhODYxMDkgMTAwNjQ0Ci0tLSBhL200L28tZGlyZWN0Lm00CisrKyBi L200L28tZGlyZWN0Lm00CkBAIC00NywxNCArNDcsMTQgQEAgZnJvYm5venpsZQogCSAgICAgIC9k ZXYvc2htKSA7OwogCSAgICAgIC8qKSBjYXNlICRwZV9kaXIgaW4KIAkJICAjIEFjY2VwdCAkSE9N RSBvciAkVE1QIG9ubHkgaWYgdGhlIHZhbHVlIGlzIG5pY2UgYW5kIGJvcmluZy4KLQkJICAqW14v YS16QS1aMC05Xy4tXSopIDs7CisJCSAgKlshL2EtekEtWjAtOV8uLV0qKSA7OwogCQkgICopIHBl X2NhbmRfZGlycz0iJHBlX2NhbmRfZGlycyAkcGVfZGlyIjs7CiAJCSAgZXNhYwogCSAgICAgIGVz YWMKIAkgIGRvbmUKIAogCSAgY2FzZSAkUEFSVEVEX1RNUERJUiBpbgotCSAgICAgICpbXi9hLXpB LVowLTlfLi1dKikgOzsKKwkgICAgICAqWyEvYS16QS1aMC05Xy4tXSopIDs7CiAJICAgICAgKikg cGVfY2FuZF9kaXJzPSIkUEFSVEVEX1RNUERJUiAkcGVfY2FuZF9kaXJzIjs7CiAJICBlc2FjCiAK ZGlmZiAtLWdpdCBhL3Rlc3RzL3QtbG9jYWwuc2ggYi90ZXN0cy90LWxvY2FsLnNoCmluZGV4IDJi YTdlZTEuLjI1MGY2YTQgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3QtbG9jYWwuc2gKKysrIGIvdGVzdHMv dC1sb2NhbC5zaApAQCAtMTM4LDcgKzEzOCw3IEBAIHJlcXVpcmVfNTEyX2J5dGVfc2VjdG9yX3Np emVfKCkKIHBlZWtfKCkKIHsKICAgY2FzZSAkIyBpbiAyKSA7OyAqKSBlY2hvICJ1c2FnZTogcGVl a18gRklMRSAwX0JBU0VEX09GRlNFVCIgPiYyOyBleGl0IDE7OyBlc2FjCi0gIGNhc2UgJDIgaW4g KlteMC05XSopIGVjaG8gInBlZWtfOiBpbnZhbGlkIG9mZnNldDogJDIiID4mMjsgZXhpdCAxIDs7 IGVzYWMKKyAgY2FzZSAkMiBpbiAqWyEwLTldKikgZWNobyAicGVla186IGludmFsaWQgb2Zmc2V0 OiAkMiIgPiYyOyBleGl0IDEgOzsgZXNhYwogICBkZCBpZj0iJDEiIGJzPTEgc2tpcD0iJDIiIGNv dW50PTEKIH0KIApAQCAtMTQ2LDcgKzE0Niw3IEBAIHBva2VfKCkKIHsKICAgY2FzZSAkIyBpbiAz KSA7OyAqKSBlY2hvICJ1c2FnZTogcG9rZV8gRklMRSAwX0JBU0VEX09GRlNFVCBCWVRFIiA+JjI7 IGV4aXQgMTs7CiAgICAgZXNhYwotICBjYXNlICQyIGluICpbXjAtOV0qKSBlY2hvICJwb2tlXzog aW52YWxpZCBvZmZzZXQ6ICQyIiA+JjI7IGV4aXQgMSA7OyBlc2FjCisgIGNhc2UgJDIgaW4gKlsh MC05XSopIGVjaG8gInBva2VfOiBpbnZhbGlkIG9mZnNldDogJDIiID4mMjsgZXhpdCAxIDs7IGVz YWMKICAgY2FzZSAkMyBpbiA/KSA7OyAqKSBlY2hvICJwb2tlXzogaW52YWxpZCBieXRlOiAnJDMn IiA+JjI7IGV4aXQgMSA7OyBlc2FjCiAgIHByaW50ZiAlcyAiJDMiIHwgZGQgb2Y9IiQxIiBicz0x IHNlZWs9IiQyIiBjb3VudD0xIGNvbnY9bm90cnVuYwogfQpAQCAtMTU1LDcgKzE1NSw3IEBAIHBv a2VfKCkKIGdwdDFfcHRlX25hbWVfb2Zmc2V0XygpCiB7CiAgIGxvY2FsIHNzPSQxCi0gIGNhc2Ug JHNzIGluICpbXjAtOV0qKSBlY2hvICIkMDogaW52YWxpZCBzZWN0b3Igc2l6ZTogJHNzIj4mMjsg cmV0dXJuIDE7OyBlc2FjCisgIGNhc2UgJHNzIGluICpbITAtOV0qKSBlY2hvICIkMDogaW52YWxp ZCBzZWN0b3Igc2l6ZTogJHNzIj4mMjsgcmV0dXJuIDE7OyBlc2FjCiAgIGV4cHIgJHNzIFwqIDIg KyA1NgogICByZXR1cm4gMAogfQpAQCAtMTY3LDcgKzE2Nyw3IEBAIGdwdF9jb3JydXB0X3ByaW1h cnlfdGFibGVfKCkKICAgY2FzZSAkIyBpbiAyKSA7OyAqKSBlY2hvICIkMDogZXhwZWN0ZWQgMiBh cmdzLCBnb3QgJCMiID4mMjsgcmV0dXJuIDE7OyBlc2FjCiAgIGxvY2FsIGRldj0kMQogICBsb2Nh bCBzcz0kMgotICBjYXNlICRzcyBpbiAqW14wLTldKikgZWNobyAiJDA6IGludmFsaWQgc2VjdG9y IHNpemU6ICRzcyI+JjI7IHJldHVybiAxOzsgZXNhYworICBjYXNlICRzcyBpbiAqWyEwLTldKikg ZWNobyAiJDA6IGludmFsaWQgc2VjdG9yIHNpemU6ICRzcyI+JjI7IHJldHVybiAxOzsgZXNhYwog CiAgICMgZ2V0IHRoZSBmaXJzdCBieXRlIG9mIHRoZSBuYW1lCiAgIGxvY2FsIG9yaWdfcHRlX25h bWVfYnl0ZQpAQCAtMTg4LDcgKzE4OCw3IEBAIGdwdF9yZXN0b3JlX3ByaW1hcnlfdGFibGVfKCkK ICAgY2FzZSAkIyBpbiAzKSA7OyAqKSBlY2hvICIkMDogZXhwZWN0ZWQgMiBhcmdzLCBnb3QgJCMi ID4mMjsgcmV0dXJuIDE7OyBlc2FjCiAgIGxvY2FsIGRldj0kMQogICBsb2NhbCBzcz0kMgotICBj YXNlICRzcyBpbiAqW14wLTldKikgZWNobyAiJDA6IGludmFsaWQgc2VjdG9yIHNpemU6ICRzcyI+ JjI7IHJldHVybiAxOzsgZXNhYworICBjYXNlICRzcyBpbiAqWyEwLTldKikgZWNobyAiJDA6IGlu dmFsaWQgc2VjdG9yIHNpemU6ICRzcyI+JjI7IHJldHVybiAxOzsgZXNhYwogICBsb2NhbCBvcmln X2J5dGU9JDMKICAgcG9rZV8gJGRldiAkKGdwdDFfcHRlX25hbWVfb2Zmc2V0XyAkc3MpICIkb3Jp Z19ieXRlIiB8fCByZXR1cm4gMQogfQotLSAKMi4zOS4xCgo= --Multipart=_Sat__28_Jan_2023_23_42_05_+0000_9fRXMhQJ.Y8pQuVX-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 29 05:25:12 2023 Received: (at 61128) by debbugs.gnu.org; 29 Jan 2023 10:25:12 +0000 Received: from localhost ([127.0.0.1]:42310 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pM4s4-0004xW-Gv for submit@debbugs.gnu.org; Sun, 29 Jan 2023 05:25:12 -0500 Received: from mail-pg1-f169.google.com ([209.85.215.169]:44856) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pM4s2-0004xE-TB for 61128@debbugs.gnu.org; Sun, 29 Jan 2023 05:25:11 -0500 Received: by mail-pg1-f169.google.com with SMTP id g68so5792329pgc.11 for <61128@debbugs.gnu.org>; Sun, 29 Jan 2023 02:25:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=mP6+6CNNDO63Efk3ul6h1i72jyS7zGwoTRN4jX8VTVc=; b=Au7wvNU6eZI0SnlCtFQSONS4Bd1meQt+cn08TMu15XnGykEBQT5v3P7+oZoytX5RCK /aO+hlmwEHet2Ryo0Clv+Q602qboVOYmqXoG4Xe816ra94qmch3YUP3i9QuKv+D6ymm4 rfyuVvrTq148jAK7ycLSs4dVER5iTBjTYrpRf3xJZT0BOnXYOIl/4RZM2NqKnl7rafr1 cpIKtF69tzr+P1eDqXgXbqneYauzNLR2nIL90e+6eTNI4Qdd7ExdOxRuZHp2jFDnnUnD MhbNQh8KrwMK9GHMaVtT2OLIWJXEq5kygwm7SA+PcVP0oJSZQlkOfWsD4GibvXDOJPWH ITGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=mP6+6CNNDO63Efk3ul6h1i72jyS7zGwoTRN4jX8VTVc=; b=PIN+0lmOaqWQ5aRT4wzCPrLmBQFHKJEkxJpzeLtgpuJu5ZdYaIkXshbbhPjN64Sgek lZpeuDNLwe7O0B8bT9GwISP9U6NqX1UtmSTGNN7mPWnF6J03KhsSsWJB8bYw8g/m8gE2 vE9PbSojc98+ODGqvW0AQglgVEq5r0cg2sJSNGTG+/AB6LyawWVNvCB/UZYPEYjtg3GT py2/8xFEi5O67aCdATBfLDVTM2M0M18oQ+ctM4skips2q1a+rh7pYaefPoLmrqtuvvg2 kBzPMkChQc+YdELltiUqpdk+FF6JXDPrAizus1vkJ52R9XnJw9CTIMPZVPnJFk6DTFw9 y3sQ== X-Gm-Message-State: AO0yUKVtFL+VrCRsMUQPErLKlUk6VPHhxnHlWqzdAln6LFxO+dqnWg65 O9P3lUlPqscMurIGcMmDTXwFZnX8fkdl4oedSl0= X-Google-Smtp-Source: AK7set/Mtv36aDzdX3Oi+JRCQXfa4sRHw5nlQMD5921PAwblL60h8l+lJxs11XA8GA1jH7zPafhgHXU0Yk8JoQVa8wo= X-Received: by 2002:a62:1a16:0:b0:593:960a:760b with SMTP id a22-20020a621a16000000b00593960a760bmr593120pfa.20.1674987904924; Sun, 29 Jan 2023 02:25:04 -0800 (PST) MIME-Version: 1.0 References: <20230128234205.b56737e99f1f9cec945f2755@plushkava.net> In-Reply-To: <20230128234205.b56737e99f1f9cec945f2755@plushkava.net> From: =?UTF-8?B?SMOla29uIEzDuHZkYWw=?= Date: Sun, 29 Jan 2023 11:24:53 +0100 Message-ID: Subject: Re: bug#61128: [PATCH] Use complementation correctly in shell globs To: Kerin Millar Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 61128 Cc: 61128@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) This looks good to me. While shells often accept both ! and ^ (https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html#Pattern-M= atching: "3.5.8.1 Pattern Matching ... "[=E2=80=A6]" Matches any one of the enclosed characters. ... If the first character following the =E2=80=98[=E2=80=99 is a =E2=80=98!=E2= =80=99 or a =E2=80=98^=E2=80=99 then any character not enclosed is matched.") it is not portable. https://www.linux.com/news/patterns-and-string-processing-shell-scripts/: "Many users have the habit of using a caret (^) instead of ! in shell character classes. This is not portable, but it is a common extension some shells offer because habitual users of regular expressions may be more used to it. This can create an occasional surprise if you have never seen it used, and want to match a caret in a cla= ss." On Sun, 29 Jan 2023 at 00:43, Kerin Millar wrote: > > Hello, > > The attached patch rectifies a spurious test failure reported at https://= bugs.gentoo.org/890869. As explained by the commit message, the exclamation= mark character should be used to perform negations within bracket expressi= ons, not the circumflex character. > > -- > Kerin Millar