Module Name:    src
Committed By:   rillig
Date:           Sun Feb 21 07:21:57 UTC 2021

Modified Files:
        src/usr.bin/xlint/lint1: externs1.h init.c tree.c

Log Message:
lint: indent node details in debug mode


To generate a diff of this commit:
cvs rdiff -u -r1.68 -r1.69 src/usr.bin/xlint/lint1/externs1.h
cvs rdiff -u -r1.75 -r1.76 src/usr.bin/xlint/lint1/init.c
cvs rdiff -u -r1.212 -r1.213 src/usr.bin/xlint/lint1/tree.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/xlint/lint1/externs1.h
diff -u src/usr.bin/xlint/lint1/externs1.h:1.68 src/usr.bin/xlint/lint1/externs1.h:1.69
--- src/usr.bin/xlint/lint1/externs1.h:1.68	Sat Feb 20 16:34:57 2021
+++ src/usr.bin/xlint/lint1/externs1.h	Sun Feb 21 07:21:57 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: externs1.h,v 1.68 2021/02/20 16:34:57 rillig Exp $	*/
+/*	$NetBSD: externs1.h,v 1.69 2021/02/21 07:21:57 rillig Exp $	*/
 
 /*
  * Copyright (c) 1994, 1995 Jochen Pohl
@@ -223,7 +223,7 @@ extern	bool	constant_addr(tnode_t *, sym
 extern	strg_t	*cat_strings(strg_t *, strg_t *);
 extern  int64_t tsize(type_t *);
 #ifdef DEBUG
-extern	void	debug_node(const tnode_t *);
+extern	void	debug_node(const tnode_t *, int);
 #else
 #define debug_node(tn) (void)0
 #endif

Index: src/usr.bin/xlint/lint1/init.c
diff -u src/usr.bin/xlint/lint1/init.c:1.75 src/usr.bin/xlint/lint1/init.c:1.76
--- src/usr.bin/xlint/lint1/init.c:1.75	Sat Feb 20 19:56:44 2021
+++ src/usr.bin/xlint/lint1/init.c	Sun Feb 21 07:21:57 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: init.c,v 1.75 2021/02/20 19:56:44 rillig Exp $	*/
+/*	$NetBSD: init.c,v 1.76 2021/02/21 07:21:57 rillig Exp $	*/
 
 /*
  * Copyright (c) 1994, 1995 Jochen Pohl
@@ -37,7 +37,7 @@
 
 #include <sys/cdefs.h>
 #if defined(__RCSID) && !defined(lint)
-__RCSID("$NetBSD: init.c,v 1.75 2021/02/20 19:56:44 rillig Exp $");
+__RCSID("$NetBSD: init.c,v 1.76 2021/02/21 07:21:57 rillig Exp $");
 #endif
 
 #include <stdlib.h>
@@ -699,7 +699,7 @@ init_using_expr(tnode_t *tn)
 
 	debug_enter();
 	debug_named_member();
-	debug_node(tn);
+	debug_node(tn, debug_ind);
 	debug_initstack();
 
 	if (initerr || tn == NULL) {

Index: src/usr.bin/xlint/lint1/tree.c
diff -u src/usr.bin/xlint/lint1/tree.c:1.212 src/usr.bin/xlint/lint1/tree.c:1.213
--- src/usr.bin/xlint/lint1/tree.c:1.212	Sat Feb 20 19:10:38 2021
+++ src/usr.bin/xlint/lint1/tree.c	Sun Feb 21 07:21:57 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: tree.c,v 1.212 2021/02/20 19:10:38 rillig Exp $	*/
+/*	$NetBSD: tree.c,v 1.213 2021/02/21 07:21:57 rillig Exp $	*/
 
 /*
  * Copyright (c) 1994, 1995 Jochen Pohl
@@ -37,7 +37,7 @@
 
 #include <sys/cdefs.h>
 #if defined(__RCSID) && !defined(lint)
-__RCSID("$NetBSD: tree.c,v 1.212 2021/02/20 19:10:38 rillig Exp $");
+__RCSID("$NetBSD: tree.c,v 1.213 2021/02/21 07:21:57 rillig Exp $");
 #endif
 
 #include <float.h>
@@ -99,10 +99,8 @@ extern sig_atomic_t fpe;
 
 #ifdef DEBUG
 void
-debug_node(const tnode_t *tn)
+debug_node(const tnode_t *tn, int indent)
 {
-	static int indent = 0;
-
 	op_t op;
 
 	if (tn == NULL) {
@@ -112,7 +110,7 @@ debug_node(const tnode_t *tn)
 
 	op = tn->tn_op;
 	printf("%*s%s: %s%s%s",
-	    indent, "",
+	    2 * indent, "",
 	    op == CVT && !tn->tn_cast ? "convert" :
 		op == NAME ? "name" : getopname(op),
 	    type_name(tn->tn_type), tn->tn_lvalue ? " lvalue" : "",
@@ -133,11 +131,9 @@ debug_node(const tnode_t *tn)
 	else {
 		printf("\n");
 
-		indent += 2;
-		debug_node(tn->tn_left);
+		debug_node(tn->tn_left, indent + 1);
 		if (modtab[op].m_binary || tn->tn_right != NULL)
-			debug_node(tn->tn_right);
-		indent -= 2;
+			debug_node(tn->tn_right, indent + 1);
 	}
 }
 #endif
@@ -4347,7 +4343,7 @@ check_precedence_confusion(tnode_t *tn)
 	if (!hflag)
 		return;
 
-	debug_node(tn);
+	debug_node(tn, 0);
 
 	lint_assert(modtab[tn->tn_op].m_binary);
 	for (ln = tn->tn_left; ln->tn_op == CVT; ln = ln->tn_left)

Reply via email to