Module Name:    src
Committed By:   rillig
Date:           Sun Mar 28 10:03:03 UTC 2021

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

Log Message:
lint: replace initstack_push_array with brace_level_push_array

The designator is no longer logged at this point because it is
irrelevant.

No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.154 -r1.155 src/usr.bin/xlint/lint1/init.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/init.c
diff -u src/usr.bin/xlint/lint1/init.c:1.154 src/usr.bin/xlint/lint1/init.c:1.155
--- src/usr.bin/xlint/lint1/init.c:1.154	Sun Mar 28 09:57:31 2021
+++ src/usr.bin/xlint/lint1/init.c	Sun Mar 28 10:03:02 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: init.c,v 1.154 2021/03/28 09:57:31 rillig Exp $	*/
+/*	$NetBSD: init.c,v 1.155 2021/03/28 10:03:02 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.154 2021/03/28 09:57:31 rillig Exp $");
+__RCSID("$NetBSD: init.c,v 1.155 2021/03/28 10:03:02 rillig Exp $");
 #endif
 
 #include <stdlib.h>
@@ -529,6 +529,31 @@ brace_level_look_up_member_bloated(struc
 	return m;
 }
 
+/* TODO: document me */
+/* TODO: think of a better name than 'push' */
+static bool
+brace_level_push_array(struct brace_level *level)
+{
+	if (level->bl_enclosing->bl_seen_named_member) {
+		level->bl_brace = true;
+		debug_step("ARRAY, seen named member, needs closing brace");
+	}
+
+	if (is_incomplete(level->bl_type) &&
+	    level->bl_enclosing->bl_enclosing != NULL) {
+		/* initialization of an incomplete type */
+		error(175);
+		return false;
+	}
+
+	level->bl_subtype = level->bl_type->t_subt;
+	level->bl_array_of_unknown_size = is_incomplete(level->bl_type);
+	level->bl_remaining = level->bl_type->t_dim;
+	debug_step("type '%s' remaining %d",
+	    type_name(level->bl_type), level->bl_remaining);
+	return true;
+}
+
 
 static struct initialization *
 initialization_new(sym_t *sym)
@@ -584,7 +609,6 @@ initialization_set_error(struct initiali
 	in->initerr = true;
 }
 
-
 /* XXX: unnecessary prototype since it is not recursive */
 static	bool	init_array_using_string(struct initialization *, tnode_t *);
 
@@ -876,33 +900,6 @@ extend_if_array_of_unknown_size(struct i
 	debug_step("extended type is '%s'", type_name(level->bl_type));
 }
 
-/* TODO: document me */
-/* TODO: think of a better name than 'push' */
-static void
-initstack_push_array(struct initialization *in)
-{
-	struct brace_level *level = in->brace_level;
-
-	if (level->bl_enclosing->bl_seen_named_member) {
-		level->bl_brace = true;
-		debug_step("ARRAY, seen named member, needs closing brace");
-	}
-
-	if (is_incomplete(level->bl_type) &&
-	    level->bl_enclosing->bl_enclosing != NULL) {
-		/* initialization of an incomplete type */
-		error(175);
-		initialization_set_error(in);
-		return;
-	}
-
-	level->bl_subtype = level->bl_type->t_subt;
-	level->bl_array_of_unknown_size = is_incomplete(level->bl_type);
-	level->bl_remaining = level->bl_type->t_dim;
-	designation_debug(&in->designation);
-	debug_step("type '%s' remaining %d",
-	    type_name(level->bl_type), level->bl_remaining);
-}
 
 
 /* TODO: document me */
@@ -997,7 +994,8 @@ again:
 			goto pop;
 		}
 
-		initstack_push_array(in);
+		if (!brace_level_push_array(level))
+			initialization_set_error(in);
 		break;
 
 	case UNION:

Reply via email to