From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7390 invoked by alias); 10 Oct 2013 16:28:17 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 31810 Received: (qmail 5300 invoked from network); 10 Oct 2013 16:28:01 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, SPF_HELO_PASS autolearn=ham version=3.3.2 X-AuditID: cbfec7f4-b7f0a6d000007b1b-9c-5256d333864b Date: Thu, 10 Oct 2013 17:17:53 +0100 From: Peter Stephenson To: zsh-workers@zsh.org Subject: Re: Minor xtrace inaccuracy Message-id: <20131010171753.620f3e55@pwslap01u.europe.root.pri> In-reply-to: <20131010162549.48c18765@pwslap01u.europe.root.pri> References: <131010074333.ZM4312@torch.brasslantern.com> <20131010162549.48c18765@pwslap01u.europe.root.pri> Organization: Samsung Cambridge Solution Centre X-Mailer: Claws Mail 3.7.9 (GTK+ 2.22.0; i386-redhat-linux-gnu) MIME-version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupmluLIzCtJLcpLzFFi42I5/e/4FV3jy2FBBmfPiVkcbH7I5MDoserg B6YAxigum5TUnMyy1CJ9uwSujNOXb7AXPGCruLN4M2MD41rWLkZODgkBE4m5HTtZIGwxiQv3 1rN1MXJxCAksZZQ4t7mZFcJZziTx5Nl8sCoWAVWJaWumsoHYbAKGElM3zWYEsUUExCXOrj0P ViMsoCKxvuEwexcjBwevgL3E2qlMIGFOAQeJd5s3MYKEhQTyJHqeBoCE+QX0Ja7+/cQEcYO9 xMwrZ8Am8goISvyYfA9sIrOAlsTmbU2sELa8xOY1b5knMArMQlI2C0nZLCRlCxiZVzGKppYm FxQnpeca6hUn5haX5qXrJefnbmKEBOCXHYyLj1kdYhTgYFTi4VUoCQ0SYk0sK67MPcQowcGs JMKbcSosSIg3JbGyKrUoP76oNCe1+BAjEwenVANjr7Hy3K53zF4bNnCbtPJLfvyRZF39Z9Xn 2fFOjgzV57gSd2tGKwkWGtfdmpi5/vDhqpeFnCvTnpV7HUhq/Xpw+s9r66dxL5EIl+g407bo kRDTCl0G5X1reWLfro3janwgei2DyTR9VxQjv3pI+pz4o9Wfvr/tz7NKmLbYzCL/y+zVC7ji zCqUWIozEg21mIuKEwGlrbrAHgIAAA== Here's one of them test thingies for trace output from some basic conditions. If you're doing this at home, you need to know you don't get a trace of the full test, just the bits actually executed by the short-cutting logic, hence precedence and parentheses are irrelevant. diff --git a/Test/E02xtrace.ztst b/Test/E02xtrace.ztst index 2420aeb..093a587 100644 --- a/Test/E02xtrace.ztst +++ b/Test/E02xtrace.ztst @@ -118,3 +118,12 @@ ?+./fnfile:5> : ?+./fnfile:6> fn ?+./fnfile:3> print This is fn. + + set -x + [[ 'f o' = 'f x'* || 'b r' != 'z o' && 'squashy sound' < 'squishy sound' ]] + [[ -e nonexistentfile || ( -z '' && -t 3 ) ]] + set +x +0:Trace for conditions +?+(eval):2> [[ 'f o' == f\ x* || 'b r' != z\ o && 'squashy sound' < 'squishy sound' ]] +?+(eval):3> [[ -e nonexistentfile || -z '' && -t 3 ]] +?+(eval):4> set +x pws