From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 7407 invoked from network); 9 Aug 2021 14:17:34 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 9 Aug 2021 14:17:34 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1628518654; b=GhPTAUjpjUtM2Lu5AoS5F60IcQW0NpawdCFz8CQwjEqxAzc9JWtf6Q0ZmGW5e1hSHVrkyeVjO8 CiOCuaCkGUUM24hgPiupgaJ1eonHaH1MhdA1sIfuR6NSRI+xwQuLnawQ5g+I+VW8kHm59H0IWg KwFsZOg6IUiEKEAMaYm2TREWAXpOKoSNtw3I0isI5atvxwy92EpccBtIJKJHp9gWZb1DE1jS3S SRGpdvEJk7FM+K/8jADuPHzzDbkZbBHj4VxkAf0gbthzGKoTtylOyU3D8xpWBjWhRgkYjmQdkF K86yPdOd9zlHCEPIZRKgAm0P3WuhCdJlPIhJgZF8cSySdw==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (smtpq5.tb.ukmail.iss.as9143.net) smtp.remote-ip=212.54.57.100; dkim=pass header.d=ntlworld.com header.s=meg.feb2017 header.a=rsa-sha256; dmarc=pass header.from=ntlworld.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1628518654; bh=lr9TdLRrj5oAP/WGchI/MjWsjv9iuElGPtB6vsg/+UU=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject: References:In-Reply-To:Message-ID:To:From:Date:DKIM-Signature: DKIM-Signature; b=JV/6Ha3KCD/9A7GfvszgILSzGOoNn/tO783/Z6P0hieVjz4ES4Jj/aJaFp0t/C6kv/7bxhUfO4 zYXbldSfldJ2vdEVPmBRIs0o4kM+zmOCMgvLkkOvKwDtF6LzIom2fO2PXpb59DY6vtxrGpArjU BuZ1XPRoIFwOEcczdgZUxSnXtcNlE2V8NraD/zmNeru/h09sf1fEM2aLCNk1vBRIrrkGM/oGsm aGDYQ52LLlBXVZgny5GWReYpeu8GU9Zch4POf4Vn3GfGJZxwpVuO+2cIrdQHQc13mzAOLQ/qOM 3qs63Jos5r4TfW+9L2RW6Df+K52r7o6bJ24kURk74+bGMA==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:References:In-Reply-To:Message-ID:To:From: Date:Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=TmtTb85ulL9Xbx+km4/cQLWYmEfUzqV2bjbSpy78bKQ=; b=huThB5prUQ5H6WINfLOjgeZgzZ aLDTId1vyyvXFvRgX2vym7aVhZyWQKdLxpbPO52efG+0y4Kn8eSGR/8Wl1TNldA2wwbAsn/OalVV/ l258PVR1P/GMJ/HOw4m0RBHhYG0rq5wgb0emUdTb9e0cNem9U9yg4knsvmWQBE6GHRvoZWr9TvEkw LEX3tNz94GpMO987TIC3FRY7SqR5HHVVH2H4/ynKhy3U1MITess31EHdehGRUMwowm2JTZV4BVZLp uyNAr1PzWrpSi4hsxPAkH3HgnJhi6Ks+2RGlxdK3ps2D0JWEuxSGcrrmmtDzV34k9uYH2cDLyh4ae CqsHAyDA==; Received: from authenticated user by zero.zsh.org with local id 1mD65s-0009ly-S5; Mon, 09 Aug 2021 14:17:32 +0000 Authentication-Results: zsh.org; iprev=pass (smtpq5.tb.ukmail.iss.as9143.net) smtp.remote-ip=212.54.57.100; dkim=pass header.d=ntlworld.com header.s=meg.feb2017 header.a=rsa-sha256; dmarc=pass header.from=ntlworld.com; arc=none Received: from smtpq5.tb.ukmail.iss.as9143.net ([212.54.57.100]:36766) by zero.zsh.org with esmtps (TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128) id 1mD65K-0009Te-Vm; Mon, 09 Aug 2021 14:16:59 +0000 Received: from [212.54.57.80] (helo=smtp1.tb.ukmail.iss.as9143.net) by smtpq5.tb.ukmail.iss.as9143.net with esmtp (Exim 4.86_2) (envelope-from ) id 1mD65K-0001pm-Lj for zsh-workers@zsh.org; Mon, 09 Aug 2021 16:16:58 +0200 Received: from oxbe8.tb.ukmail.iss.as9143.net ([172.25.160.139]) by smtp1.tb.ukmail.iss.as9143.net with ESMTP id D65KmdeH7hdxkD65KmPCg7; Mon, 09 Aug 2021 16:16:58 +0200 X-Env-Mailfrom: p.w.stephenson@ntlworld.com X-Env-Rcptto: zsh-workers@zsh.org X-SourceIP: 172.25.160.139 X-CNFS-Analysis: v=2.4 cv=Ru2mkAqK c=1 sm=1 tr=0 ts=611138da cx=a_exe a=pgSR3NrKiwmx/6vnWRL19w==:117 a=RVz7wDUL1srPHubn:21 a=sfM75MaK4YAA:10 a=IkcTkHD0fZMA:10 a=2y5beTJ5bSgA:10 a=StZlAm8uUjGCIU78zIcA:9 a=QEXdDO2ut3YA:10 a=Zb9374AS2wSp6Ah-uZYW:22 X-Authenticated-Sender: p.w.stephenson@ntlworld.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ntlworld.com; s=meg.feb2017; t=1628518618; bh=lr9TdLRrj5oAP/WGchI/MjWsjv9iuElGPtB6vsg/+UU=; h=Date:From:To:In-Reply-To:References:Subject; b=YB3TAQmSOvtdIQ0tiPHZ9fTqsQaJm7cr37K3P4ynHBC3w68GiIIMZ95mNDg93ecw4 sI+JWA6/xyaDyhtURm4ZjOHmeO01lMn5q+UWebAu+HobSe26kJTm16imT7dtS6nRGL D/lYxtyq6YPrxcwe8kvd7OK9uFmNoY3fSk2zErQK+onoQ887BxcDQrAtBhmB5jRAeT pQcdU0PAVavwAXC8OYYaJOW0HJdZDZKA452PQN390Xx0PjyCpPVaaPnmpTVF2zQl6N sLzBORS8UmGAoquyTMXtd0hw+0+qS6WAM/aKY82eIrWdH9LlzLYJI9CtGL9rFdwkes u3ThS/BHqifww== Date: Mon, 9 Aug 2021 15:16:58 +0100 (BST) From: Peter Stephenson To: koichi nakashima , zsh-workers@zsh.org Message-ID: <835587636.777488.1628518618581@mail2.virginmedia.com> In-Reply-To: References: Subject: Re: [BUG] test ! "-o" ([ ! -o ]) exit status should be 1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Priority: 3 Importance: Medium X-Mailer: Open-Xchange Mailer v7.8.4-Rev72 X-Originating-IP: 165.225.81.118 X-Originating-Client: open-xchange-appsuite X-CMAE-Envelope: MS4xfHls3i9oQsjqQmd6vGBabdpL4JK7QrU7UCeP9oaEzvQYoJtH4v5FqMIyO3Fmpq1bPWHb8FsTjCwWU5raWtwsQ+zIHxeeEK1dbvHmEgaYACc7pbmoUo3V GvwsRzhQvNkFj8miGnIhPeYKVKslZw6b2hn25AqssCxMQ91peJPUDXRp2HPF1hwQF6IMHr3MomiOpNjEhqvpKxeajAdDRW2TfSu9McPM/6UCQSdqcZso52zB 7YOJ8/2zgVIzYSYG/sbc1Q== X-Seq: 49269 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: > On 09 August 2021 at 11:55 koichi nakashima wrote: >=20 >=20 > In the following code, I expected the exit status to be 1. > However, in zsh 5.0.3 and later, it was actually 0. >=20 > $ zsh -c '[ ! -o ]; echo "$ZSH_VERSION: $?"' > 4.3.17: 1 It's a little bizarre that we've actually got a test for this, and it's deliberately set up this way. But I think the fix for this case is simple =E2=80=94 more complicated expressions with "test" or "[", as opposed to "[= [", can go horribly wrong, but two arguments should be OK =E2=80=94 so I've just fl= ipped the test. It can't possibly be right that -a and -o are treated differentl= y in this context, can it? pws diff --git a/Src/parse.c b/Src/parse.c index b09c7989a..be26112a5 100644 --- a/Src/parse.c +++ b/Src/parse.c @@ -2509,7 +2509,7 @@ par_cond_2(void) =09 * In "test" compatibility mode, "! -a ..." and "! -o ..." =09 * are treated as "[string] [and] ..." and "[string] [or] ...". =09 */ -=09if (!(n_testargs > 1 && (check_cond(*testargs, "a") || +=09if (!(n_testargs > 2 && (check_cond(*testargs, "a") || =09=09=09=09 check_cond(*testargs, "o")))) =09{ =09 condlex(); diff --git a/Test/C02cond.ztst b/Test/C02cond.ztst index 5b105b2a0..4366b4142 100644 --- a/Test/C02cond.ztst +++ b/Test/C02cond.ztst @@ -380,7 +380,7 @@ F:scenario if you encounter it. >0 >0 >1 ->0 +>1 >0 >0 >1