zsh-workers
 help / color / mirror / code / Atom feed
* PATCH: 3.1.5-pws-8++: set -x for ((...)), functions
@ 1999-02-19 17:20 Peter Stephenson
  0 siblings, 0 replies; only message in thread
From: Peter Stephenson @ 1999-02-19 17:20 UTC (permalink / raw)
  To: Zsh hackers list

Here is more set -x stuff for two more common cases, namely function calls
and ((...)) evaluations.  Also, I was reminded about prompt4 since the last
patch.

--- Src/exec.c.xtr2	Tue Feb 16 18:15:15 1999
+++ Src/exec.c	Fri Feb 19 18:12:36 1999
@@ -2529,7 +2529,7 @@
 {
     int stat;
     if (isset(XTRACE)) {
-	fprintf(stderr, "+ [[");
+	fprintf(stderr, "%s[[", prompt4 ? prompt4 : "");
 	tracingcond++;
     }
     stat = !evalcond(cmd->u.cond);
@@ -2550,8 +2550,17 @@
     char *e;
     long val = 0;
 
-    while ((e = (char *) ugetnode(cmd->args)))
+    if (isset(XTRACE))
+	fprintf(stderr, "%s((", prompt4 ? prompt4 : "");
+    while ((e = (char *) ugetnode(cmd->args))) {
+	if (isset(XTRACE))
+	    fprintf(stderr, " %s", e);
 	val = matheval(e);
+    }
+    if (isset(XTRACE)) {
+	fprintf(stderr, " ))\n", stderr);
+	fflush(stderr);
+    }
     errflag = 0;
     return !val;
 }
@@ -2624,6 +2633,18 @@
 	last_file_list = jobtab[thisjob].filelist;
 	jobtab[thisjob].filelist = NULL;
 	deletejob(jobtab + thisjob);
+    }
+
+    if (isset(XTRACE)) {
+	LinkNode lptr;
+	fprintf(stderr, "%s", prompt4 ? prompt4 : prompt4);
+	for (lptr = firstnode(cmd->args); lptr; incnode(lptr)) {
+	    if (lptr != firstnode(cmd->args))
+		fputc(' ', stderr);
+	    fprintf(stderr, "%s", (char *)getdata(lptr));
+	}
+	fputc('\n', stderr);
+	fflush(stderr);
     }
 
     doshfunc(shf->nam, shf->funcdef, cmd->args, shf->flags, 0);

-- 
Peter Stephenson <pws@ibmth.df.unipi.it>       Tel: +39 050 844536
WWW:  http://www.ifh.de/~pws/
Dipartimento di Fisica, Via Buonarroti 2, 56127 Pisa, Italy


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1999-02-20 13:19 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-02-19 17:20 PATCH: 3.1.5-pws-8++: set -x for ((...)), functions Peter Stephenson

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).