Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/xlint/lint1 lint: inline initerr in code for handlin...
details: https://anonhg.NetBSD.org/src/rev/387011a7f098
branches: trunk
changeset: 954039:387011a7f098
user: rillig <rillig%NetBSD.org@localhost>
date: Sun Mar 28 09:39:04 2021 +0000
description:
lint: inline initerr in code for handling initializations
No functional change.
diffstat:
usr.bin/xlint/lint1/init.c | 59 ++++++++++++++++++++++++---------------------
1 files changed, 32 insertions(+), 27 deletions(-)
diffs (187 lines):
diff -r c15135cdbcd7 -r 387011a7f098 usr.bin/xlint/lint1/init.c
--- a/usr.bin/xlint/lint1/init.c Sun Mar 28 09:34:45 2021 +0000
+++ b/usr.bin/xlint/lint1/init.c Sun Mar 28 09:39:04 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: init.c,v 1.149 2021/03/28 09:34:45 rillig Exp $ */
+/* $NetBSD: init.c,v 1.150 2021/03/28 09:39:04 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.149 2021/03/28 09:34:45 rillig Exp $");
+__RCSID("$NetBSD: init.c,v 1.150 2021/03/28 09:39:04 rillig Exp $");
#endif
#include <stdlib.h>
@@ -533,6 +533,13 @@
#define initialization_debug(in) do { } while (false)
#endif
+static void
+initialization_set_error(struct initialization *in)
+{
+ in->initerr = true;
+}
+
+
/* XXX: unnecessary prototype since it is not recursive */
static bool init_array_using_string(struct initialization *, tnode_t *);
@@ -556,13 +563,6 @@
return ¤t_init()->initsym;
}
-static void
-set_initerr(void)
-{
- current_init()->initerr = true;
-}
-
-#define initerr (*current_initerr())
#define initsym (*current_initsym())
#ifndef DEBUG
@@ -704,8 +704,9 @@
void
initstack_init(void)
{
+ struct initialization *in = current_init();
- if (initerr)
+ if (in->initerr)
return;
debug_enter();
@@ -742,7 +743,7 @@
level->bl_type->t_tspec != UNION) {
/* syntax error '%s' */
error(249, "named member must only be used with struct/union");
- set_initerr();
+ initialization_set_error(in);
return;
}
@@ -901,7 +902,7 @@
level->bl_enclosing->bl_enclosing != NULL) {
/* initialization of an incomplete type */
error(175);
- set_initerr();
+ initialization_set_error(in);
return;
}
@@ -930,7 +931,7 @@
if (is_incomplete(level->bl_type)) {
/* initialization of an incomplete type */
error(175);
- set_initerr();
+ initialization_set_error(in);
return false;
}
@@ -964,7 +965,7 @@
if (cnt == 0) {
/* cannot init. struct/union with no named member */
error(179);
- set_initerr();
+ initialization_set_error(in);
return false;
}
level->bl_remaining = level->bl_type->t_tspec == STRUCT ? cnt : 1;
@@ -1040,7 +1041,9 @@
static void
check_too_many_initializers(void)
{
- const struct brace_level *level = current_init()->brace_level;
+ struct initialization *in = current_init();
+ const struct brace_level *level = in->brace_level;
+
if (level->bl_remaining > 0)
return;
/*
@@ -1060,7 +1063,7 @@
/* too many initializers */
error(174);
}
- set_initerr();
+ initialization_set_error(in);
}
/*
@@ -1079,13 +1082,13 @@
is_scalar(in->brace_level->bl_type->t_tspec)) {
/* invalid initializer type %s */
error(176, type_name(in->brace_level->bl_type));
- set_initerr();
+ initialization_set_error(in);
}
- if (!initerr)
+ if (!in->initerr)
check_too_many_initializers();
- if (!initerr)
+ if (!in->initerr)
initstack_push(in);
- if (!initerr) {
+ if (!in->initerr) {
in->brace_level->bl_brace = true;
designation_debug(&in->designation);
debug_step("expecting type '%s'",
@@ -1111,10 +1114,10 @@
/* XXX: maybe set initerr here */
}
- if (!initerr)
+ if (!in->initerr)
check_too_many_initializers();
- while (!initerr) {
+ while (!in->initerr) {
struct brace_level *level = in->brace_level;
if (tn->tn_type->t_tspec == STRUCT &&
@@ -1142,7 +1145,7 @@
{
struct initialization *in = current_init();
- if (initerr)
+ if (in->initerr)
return;
debug_enter();
@@ -1175,11 +1178,13 @@
void
init_rbrace(void)
{
- if (initerr)
+ struct initialization *in = current_init();
+
+ if (in->initerr)
return;
debug_enter();
- initstack_pop_brace(current_init());
+ initstack_pop_brace(in);
debug_leave();
}
@@ -1302,7 +1307,7 @@
debug_step("expr:");
debug_node(tn, debug_ind + 1);
- if (initerr || tn == NULL)
+ if (in->initerr || tn == NULL)
goto done;
sclass = initsym->s_scl;
@@ -1318,7 +1323,7 @@
}
initstack_next_nobrace(in, tn);
- if (initerr || tn == NULL)
+ if (in->initerr || tn == NULL)
goto done_initstack;
in->brace_level->bl_remaining--;
Home |
Main Index |
Thread Index |
Old Index