Module Name:    src
Committed By:   christos
Date:           Mon Nov  1 13:30:11 UTC 2021

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

Log Message:
simplify.


To generate a diff of this commit:
cvs rdiff -u -r1.389 -r1.390 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/tree.c
diff -u src/usr.bin/xlint/lint1/tree.c:1.389 src/usr.bin/xlint/lint1/tree.c:1.390
--- src/usr.bin/xlint/lint1/tree.c:1.389	Mon Nov  1 07:46:50 2021
+++ src/usr.bin/xlint/lint1/tree.c	Mon Nov  1 09:30:11 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: tree.c,v 1.389 2021/11/01 11:46:50 rillig Exp $	*/
+/*	$NetBSD: tree.c,v 1.390 2021/11/01 13:30:11 christos 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.389 2021/11/01 11:46:50 rillig Exp $");
+__RCSID("$NetBSD: tree.c,v 1.390 2021/11/01 13:30:11 christos Exp $");
 #endif
 
 #include <float.h>
@@ -1779,23 +1779,23 @@ check_enum_array_index(const tnode_t *ln
 	int max_array_index;
 	int64_t max_enum_value;
 	const struct sym *ec, *max_ec;
+	const type_t *lt, *rt;
 
-	if (ln->tn_op != ADDR)
-		return;
-	if (ln->tn_left->tn_op != NAME)
-		return;
-	if (ln->tn_left->tn_type->t_tspec != ARRAY)
+	if (ln->tn_op != ADDR || ln->tn_left->tn_op != NAME)
 		return;
-	if (ln->tn_left->tn_type->t_incomplete_array)
-		return;
-	if (rn->tn_op != CVT)
+
+	lt = ln->tn_left->tn_type;
+	if (lt->t_tspec != ARRAY || lt->t_incomplete_array)
 		return;
-	if (rn->tn_left->tn_op != LOAD)
+
+	if (rn->tn_op != CVT || rn->tn_left->tn_op != LOAD)
 		return;
-	if (rn->tn_left->tn_type->t_tspec != ENUM)
+
+	rt = rn->tn_left->tn_type;
+	if (rt->t_tspec != ENUM)
 		return;
 
-	ec = rn->tn_left->tn_type->t_enum->en_first_enumerator;
+	ec = rt->t_enum->en_first_enumerator;
 	max_ec = ec;
 	lint_assert(ec != NULL);
 	for (ec = ec->s_next; ec != NULL; ec = ec->s_next)
@@ -1805,7 +1805,7 @@ check_enum_array_index(const tnode_t *ln
 	max_enum_value = max_ec->s_value.v_quad;
 	lint_assert(INT_MIN <= max_enum_value && max_enum_value <= INT_MAX);
 
-	max_array_index = ln->tn_left->tn_type->t_dim - 1;
+	max_array_index = lt->t_dim - 1;
 	if (max_enum_value == max_array_index)
 		return;
 
@@ -1820,8 +1820,7 @@ check_enum_array_index(const tnode_t *ln
 		return;
 
 	/* maximum value %d of '%s' does not match maximum array index %d */
-	warning(348, (int)max_enum_value, type_name(rn->tn_left->tn_type),
-	    max_array_index);
+	warning(348, (int)max_enum_value, type_name(rt), max_array_index);
 	print_previous_declaration(-1, max_ec);
 }
 

Reply via email to