Module Name: src Committed By: rillig Date: Sun Dec 3 18:17:41 UTC 2023
Modified Files: src/usr.bin/xlint/common: externs.h inittyp.c lint.h src/usr.bin/xlint/lint1: cgram.y decl.c emit1.c err.c externs1.h func.c lex.c lint1.h main1.c mem1.c op.h tree.c src/usr.bin/xlint/lint2: chk.c emit2.c externs2.h hash.c lint2.h main2.c msg.c read.c src/usr.bin/xlint/xlint: xlint.c Log Message: lint: in declarations, replace tab with space Previously, in some cases, the keywords 'const' or 'struct' were followed by a tab, which doesn't make sense. No functional change. To generate a diff of this commit: cvs rdiff -u -r1.30 -r1.31 src/usr.bin/xlint/common/externs.h cvs rdiff -u -r1.40 -r1.41 src/usr.bin/xlint/common/inittyp.c cvs rdiff -u -r1.45 -r1.46 src/usr.bin/xlint/common/lint.h cvs rdiff -u -r1.476 -r1.477 src/usr.bin/xlint/lint1/cgram.y cvs rdiff -u -r1.382 -r1.383 src/usr.bin/xlint/lint1/decl.c cvs rdiff -u -r1.80 -r1.81 src/usr.bin/xlint/lint1/emit1.c cvs rdiff -u -r1.219 -r1.220 src/usr.bin/xlint/lint1/err.c cvs rdiff -u -r1.207 -r1.208 src/usr.bin/xlint/lint1/externs1.h cvs rdiff -u -r1.177 -r1.178 src/usr.bin/xlint/lint1/func.c cvs rdiff -u -r1.195 -r1.196 src/usr.bin/xlint/lint1/lex.c cvs rdiff -u -r1.204 -r1.205 src/usr.bin/xlint/lint1/lint1.h cvs rdiff -u -r1.77 -r1.78 src/usr.bin/xlint/lint1/main1.c cvs rdiff -u -r1.76 -r1.77 src/usr.bin/xlint/lint1/mem1.c cvs rdiff -u -r1.25 -r1.26 src/usr.bin/xlint/lint1/op.h cvs rdiff -u -r1.586 -r1.587 src/usr.bin/xlint/lint1/tree.c cvs rdiff -u -r1.64 -r1.65 src/usr.bin/xlint/lint2/chk.c cvs rdiff -u -r1.36 -r1.37 src/usr.bin/xlint/lint2/emit2.c cvs rdiff -u -r1.21 -r1.22 src/usr.bin/xlint/lint2/externs2.h cvs rdiff -u -r1.28 -r1.29 src/usr.bin/xlint/lint2/hash.c cvs rdiff -u -r1.26 -r1.27 src/usr.bin/xlint/lint2/lint2.h cvs rdiff -u -r1.34 -r1.35 src/usr.bin/xlint/lint2/main2.c cvs rdiff -u -r1.24 -r1.25 src/usr.bin/xlint/lint2/msg.c cvs rdiff -u -r1.89 -r1.90 src/usr.bin/xlint/lint2/read.c cvs rdiff -u -r1.119 -r1.120 src/usr.bin/xlint/xlint/xlint.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/common/externs.h diff -u src/usr.bin/xlint/common/externs.h:1.30 src/usr.bin/xlint/common/externs.h:1.31 --- src/usr.bin/xlint/common/externs.h:1.30 Sat Aug 12 20:48:24 2023 +++ src/usr.bin/xlint/common/externs.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: externs.h,v 1.30 2023/08/12 20:48:24 rillig Exp $ */ +/* $NetBSD: externs.h,v 1.31 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -42,21 +42,21 @@ const char *tspec_name(tspec_t); /* * mem.c */ -void *xmalloc(size_t); -void *xcalloc(size_t, size_t); -void *xrealloc(void *, size_t); -char *xstrdup(const char *); -char *xasprintf(const char *, ...) __printflike(1, 2); +void *xmalloc(size_t); +void *xcalloc(size_t, size_t); +void *xrealloc(void *, size_t); +char *xstrdup(const char *); +char *xasprintf(const char *, ...) __printflike(1, 2); /* * emit.c */ #if defined(IS_LINT1) || defined(IS_LINT2) -void outopen(const char *); -void outclose(void); -void outchar(char); -void outstrg(const char *); -void outint(int); -void outname(const char *); -void outsrc(const char *); +void outopen(const char *); +void outclose(void); +void outchar(char); +void outstrg(const char *); +void outint(int); +void outname(const char *); +void outsrc(const char *); #endif Index: src/usr.bin/xlint/common/inittyp.c diff -u src/usr.bin/xlint/common/inittyp.c:1.40 src/usr.bin/xlint/common/inittyp.c:1.41 --- src/usr.bin/xlint/common/inittyp.c:1.40 Thu Jul 13 08:40:38 2023 +++ src/usr.bin/xlint/common/inittyp.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: inittyp.c,v 1.40 2023/07/13 08:40:38 rillig Exp $ */ +/* $NetBSD: inittyp.c,v 1.41 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: inittyp.c,v 1.40 2023/07/13 08:40:38 rillig Exp $"); +__RCSID("$NetBSD: inittyp.c,v 1.41 2023/12/03 18:17:41 rillig Exp $"); #endif #if defined(IS_LINT1) @@ -78,7 +78,7 @@ __RCSID("$NetBSD: inittyp.c,v 1.40 2023/ #endif /* various type information */ -ttab_t ttab[NTSPEC] = { +ttab_t ttab[NTSPEC] = { typeinfo(NULL, NO_TSPEC, NO_TSPEC, 0, 0, ' '), typeinfo("signed", SIGNED, UNSIGN, 0, 0, ' '), typeinfo("unsigned", SIGNED, UNSIGN, 0, 0, ' '), Index: src/usr.bin/xlint/common/lint.h diff -u src/usr.bin/xlint/common/lint.h:1.45 src/usr.bin/xlint/common/lint.h:1.46 --- src/usr.bin/xlint/common/lint.h:1.45 Sun Dec 3 12:24:48 2023 +++ src/usr.bin/xlint/common/lint.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: lint.h,v 1.45 2023/12/03 12:24:48 rillig Exp $ */ +/* $NetBSD: lint.h,v 1.46 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -92,7 +92,7 @@ typedef enum { /* * size of types, name and classification */ -typedef struct { +typedef struct { #ifdef IS_LINT1 unsigned int tt_size_in_bits; enum rank_kind { @@ -117,7 +117,7 @@ typedef struct { const char *tt_name; /* name of the type */ } ttab_t; -extern ttab_t ttab[]; +extern ttab_t ttab[]; static inline const ttab_t * type_properties(tspec_t t) @@ -138,7 +138,7 @@ type_properties(tspec_t t) #define has_operands(tn) (modtab[(tn)->tn_op].m_has_operands) -typedef enum { +typedef enum { NODECL, /* not declared until now */ DECL, /* declared */ TDEF, /* tentative defined */ Index: src/usr.bin/xlint/lint1/cgram.y diff -u src/usr.bin/xlint/lint1/cgram.y:1.476 src/usr.bin/xlint/lint1/cgram.y:1.477 --- src/usr.bin/xlint/lint1/cgram.y:1.476 Tue Oct 17 19:33:16 2023 +++ src/usr.bin/xlint/lint1/cgram.y Sun Dec 3 18:17:41 2023 @@ -1,5 +1,5 @@ %{ -/* $NetBSD: cgram.y,v 1.476 2023/10/17 19:33:16 rillig Exp $ */ +/* $NetBSD: cgram.y,v 1.477 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -35,7 +35,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: cgram.y,v 1.476 2023/10/17 19:33:16 rillig Exp $"); +__RCSID("$NetBSD: cgram.y,v 1.477 2023/12/03 18:17:41 rillig Exp $"); #endif #include <limits.h> @@ -50,7 +50,7 @@ extern char *yytext; * Contains the level of current declaration, used for symbol table entries. * 0 is the top-level, > 0 is inside a function body. */ -int block_level; +int block_level; /* * level for memory allocation. Normally the same as block_level. @@ -58,7 +58,7 @@ int block_level; * for these can't be freed after the declaration, but symbols must * be removed from the symbol table after the declaration. */ -size_t mem_block_level; +size_t mem_block_level; /* * Save the no-warns state and restore it to avoid the problem where @@ -67,9 +67,9 @@ size_t mem_block_level; #define LWARN_NOTHING_SAVED (-3) static int saved_lwarn = LWARN_NOTHING_SAVED; -static void cgram_declare(sym_t *, bool, sbuf_t *); -static void read_until_rparen(void); -static sym_t *symbolrename(sym_t *, sbuf_t *); +static void cgram_declare(sym_t *, bool, sbuf_t *); +static void read_until_rparen(void); +static sym_t *symbolrename(sym_t *, sbuf_t *); /* ARGSUSED */ @@ -2299,7 +2299,7 @@ cgram_declare(sym_t *decl, bool has_init static void read_until_rparen(void) { - int level; + int level; if (yychar < 0) yychar = yylex(); @@ -2317,7 +2317,7 @@ read_until_rparen(void) yyclearin; } -static sym_t * +static sym_t * symbolrename(sym_t *s, sbuf_t *sb) { if (sb != NULL) Index: src/usr.bin/xlint/lint1/decl.c diff -u src/usr.bin/xlint/lint1/decl.c:1.382 src/usr.bin/xlint/lint1/decl.c:1.383 --- src/usr.bin/xlint/lint1/decl.c:1.382 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/decl.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: decl.c,v 1.382 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: decl.c,v 1.383 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -38,7 +38,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: decl.c,v 1.382 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: decl.c,v 1.383 2023/12/03 18:17:41 rillig Exp $"); #endif #include <sys/param.h> @@ -51,17 +51,17 @@ __RCSID("$NetBSD: decl.c,v 1.382 2023/12 const char unnamed[] = "<unnamed>"; /* shared type structures for arithmetic types and void */ -static type_t typetab[NTSPEC]; +static type_t typetab[NTSPEC]; /* value of next enumerator during declaration of enum types */ -int enumval; +int enumval; /* * Points to the innermost element of a stack that contains information about * nested declarations, such as struct declarations, function prototypes, * local variables. */ -decl_level *dcs; +decl_level *dcs; /* Index: src/usr.bin/xlint/lint1/emit1.c diff -u src/usr.bin/xlint/lint1/emit1.c:1.80 src/usr.bin/xlint/lint1/emit1.c:1.81 --- src/usr.bin/xlint/lint1/emit1.c:1.80 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/emit1.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: emit1.c,v 1.80 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: emit1.c,v 1.81 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -38,13 +38,13 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: emit1.c,v 1.80 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: emit1.c,v 1.81 2023/12/03 18:17:41 rillig Exp $"); #endif #include "lint1.h" -static void outtt(sym_t *, sym_t *); -static void outfstrg(strg_t *); +static void outtt(sym_t *, sym_t *); +static void outfstrg(strg_t *); /* * Write type into the output file, encoded as follows: Index: src/usr.bin/xlint/lint1/err.c diff -u src/usr.bin/xlint/lint1/err.c:1.219 src/usr.bin/xlint/lint1/err.c:1.220 --- src/usr.bin/xlint/lint1/err.c:1.219 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/err.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: err.c,v 1.219 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: err.c,v 1.220 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: err.c,v 1.219 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: err.c,v 1.220 2023/12/03 18:17:41 rillig Exp $"); #endif #include <limits.h> @@ -47,11 +47,11 @@ __RCSID("$NetBSD: err.c,v 1.219 2023/12/ #include "lint1.h" -bool seen_error; -bool seen_warning; +bool seen_error; +bool seen_warning; /* number of syntax errors */ -int sytxerr; +int sytxerr; static const char *const msgs[] = { @@ -413,7 +413,7 @@ static const char *const msgs[] = { "'_Static_assert' without message requires C23 or later", /* 355 */ }; -static bool is_suppressed[sizeof(msgs) / sizeof(msgs[0])]; +static bool is_suppressed[sizeof(msgs) / sizeof(msgs[0])]; static struct include_level { const char *filename; Index: src/usr.bin/xlint/lint1/externs1.h diff -u src/usr.bin/xlint/lint1/externs1.h:1.207 src/usr.bin/xlint/lint1/externs1.h:1.208 --- src/usr.bin/xlint/lint1/externs1.h:1.207 Wed Aug 2 21:58:11 2023 +++ src/usr.bin/xlint/lint1/externs1.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: externs1.h,v 1.207 2023/08/02 21:58:11 rillig Exp $ */ +/* $NetBSD: externs1.h,v 1.208 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -36,95 +36,95 @@ /* * main1.c */ -extern int aflag; -extern bool bflag; -extern bool cflag; -extern bool eflag; -extern bool Fflag; -extern bool hflag; -extern bool pflag; -extern bool rflag; -extern bool uflag; -extern bool vflag; -extern bool yflag; -extern bool wflag; -extern bool zflag; -extern bool Tflag; -extern bool Pflag; - -extern bool allow_trad; -extern bool allow_c90; -extern bool allow_c99; -extern bool allow_c11; -extern bool allow_c23; -extern bool allow_gcc; +extern int aflag; +extern bool bflag; +extern bool cflag; +extern bool eflag; +extern bool Fflag; +extern bool hflag; +extern bool pflag; +extern bool rflag; +extern bool uflag; +extern bool vflag; +extern bool yflag; +extern bool wflag; +extern bool zflag; +extern bool Tflag; +extern bool Pflag; + +extern bool allow_trad; +extern bool allow_c90; +extern bool allow_c99; +extern bool allow_c11; +extern bool allow_c23; +extern bool allow_gcc; extern sig_atomic_t fpe; -void norecover(void); +void norecover(void); /* * cgram.y */ -extern int block_level; -extern size_t mem_block_level; -extern int yydebug; +extern int block_level; +extern size_t mem_block_level; +extern int yydebug; -int yyerror(const char *); -int yyparse(void); +int yyerror(const char *); +int yyparse(void); /* * scan.l */ -extern bool in_gcc_attribute; -extern pos_t curr_pos; -extern pos_t csrc_pos; -extern bool in_system_header; -extern symt_t symtyp; -extern FILE *yyin; - -void initscan(void); -int64_t convert_integer(int64_t, tspec_t, unsigned int); -void clear_warn_flags(void); -sym_t *getsym(sbuf_t *); -void clean_up_after_error(void); -sym_t *pushdown(const sym_t *); -sym_t *mktempsym(type_t *); -void rmsym(sym_t *); -void symtab_remove_level(sym_t *); -void inssym(int, sym_t *); -void freeyyv(void *, int); -int yylex(void); +extern bool in_gcc_attribute; +extern pos_t curr_pos; +extern pos_t csrc_pos; +extern bool in_system_header; +extern symt_t symtyp; +extern FILE *yyin; + +void initscan(void); +int64_t convert_integer(int64_t, tspec_t, unsigned int); +void clear_warn_flags(void); +sym_t *getsym(sbuf_t *); +void clean_up_after_error(void); +sym_t *pushdown(const sym_t *); +sym_t *mktempsym(type_t *); +void rmsym(sym_t *); +void symtab_remove_level(sym_t *); +void inssym(int, sym_t *); +void freeyyv(void *, int); +int yylex(void); /* * mem1.c */ -const char *record_filename(const char *, size_t); -int get_filename_id(const char *); -void add_directory_replacement(char *); +const char *record_filename(const char *, size_t); +int get_filename_id(const char *); +void add_directory_replacement(char *); const char *transform_filename(const char *, size_t); #ifdef DEBUG_MEM -void *block_zero_alloc(size_t, const char *); -void *level_zero_alloc(size_t, size_t, const char *); +void *block_zero_alloc(size_t, const char *); +void *level_zero_alloc(size_t, size_t, const char *); #else -void *block_zero_alloc(size_t); -void *level_zero_alloc(size_t, size_t); +void *block_zero_alloc(size_t); +void *level_zero_alloc(size_t, size_t); #define block_zero_alloc(size, descr) (block_zero_alloc)(size) #define level_zero_alloc(level, size, descr) (level_zero_alloc)(level, size) #endif -void level_free_all(size_t); +void level_free_all(size_t); #ifdef DEBUG_MEM -void *expr_zero_alloc(size_t, const char *); +void *expr_zero_alloc(size_t, const char *); #else -void *expr_zero_alloc(size_t); +void *expr_zero_alloc(size_t); #define expr_zero_alloc(size, descr) (expr_zero_alloc)(size) #endif -tnode_t *expr_alloc_tnode(void); -void expr_free_all(void); +tnode_t *expr_alloc_tnode(void); +void expr_free_all(void); memory_pool expr_save_memory(void); -void expr_restore_memory(memory_pool); +void expr_restore_memory(memory_pool); /* * debug.c @@ -136,21 +136,21 @@ const char *scl_name(scl_t); const char *symt_name(symt_t); const char *type_qualifiers_string(type_qualifiers); const char *function_specifier_name(function_specifier); -void debug_dcs(void); -void debug_dcs_all(void); -void debug_node(const tnode_t *); -void debug_type(const type_t *); -void debug_sym(const char *, const sym_t *, const char *); -void debug_symtab(void); -void debug_printf(const char *fmt, ...) __printflike(1, 2); -void debug_skip_indent(void); -void debug_indent_inc(void); -void debug_indent_dec(void); -bool debug_push_indented(bool); -void debug_pop_indented(bool); -void debug_enter_func(const char *); -void debug_step(const char *fmt, ...) __printflike(1, 2); -void debug_leave_func(const char *); +void debug_dcs(void); +void debug_dcs_all(void); +void debug_node(const tnode_t *); +void debug_type(const type_t *); +void debug_sym(const char *, const sym_t *, const char *); +void debug_symtab(void); +void debug_printf(const char *fmt, ...) __printflike(1, 2); +void debug_skip_indent(void); +void debug_indent_inc(void); +void debug_indent_dec(void); +bool debug_push_indented(bool); +void debug_pop_indented(bool); +void debug_enter_func(const char *); +void debug_step(const char *fmt, ...) __printflike(1, 2); +void debug_leave_func(const char *); #define debug_enter() debug_enter_func(__func__) #define debug_leave() debug_leave_func(__func__) #else @@ -175,131 +175,131 @@ void debug_leave_func(const char *); /* * err.c */ -extern bool seen_error; -extern bool seen_warning; -extern int sytxerr; -extern bool any_query_enabled; - -void msglist(void); -void error_at(int, const pos_t *, ...); -void warning_at(int, const pos_t *, ...); -void message_at(int, const pos_t *, ...); -void error(int, ...); -void warning(int, ...); -bool gnuism(int, ...); -void c99ism(int, ...); -void c11ism(int, ...); -void c23ism(int, ...); -void assert_failed(const char *, int, const char *, const char *) __dead; -void update_location(const char *, int, bool, bool); -void suppress_messages(const char *); +extern bool seen_error; +extern bool seen_warning; +extern int sytxerr; +extern bool any_query_enabled; + +void msglist(void); +void error_at(int, const pos_t *, ...); +void warning_at(int, const pos_t *, ...); +void message_at(int, const pos_t *, ...); +void error(int, ...); +void warning(int, ...); +bool gnuism(int, ...); +void c99ism(int, ...); +void c11ism(int, ...); +void c23ism(int, ...); +void assert_failed(const char *, int, const char *, const char *) __dead; +void update_location(const char *, int, bool, bool); +void suppress_messages(const char *); -void query_message(int, ...); -void enable_queries(const char *); +void query_message(int, ...); +void enable_queries(const char *); /* * decl.c */ -extern decl_level *dcs; -extern const char unnamed[]; -extern int enumval; - -void initdecl(void); -type_t *gettyp(tspec_t); -type_t *block_dup_type(const type_t *); -type_t *expr_dup_type(const type_t *); -type_t *expr_unqualified_type(const type_t *); -bool is_incomplete(const type_t *); -void dcs_add_function_specifier(function_specifier); -void dcs_add_storage_class(scl_t); -void dcs_add_type(type_t *); -void dcs_add_qualifiers(type_qualifiers); -void dcs_add_packed(void); -void dcs_set_used(void); -void begin_declaration_level(decl_level_kind); -void end_declaration_level(void); -void dcs_set_asm(void); -void dcs_begin_type(void); -void dcs_end_type(void); -int length_in_bits(const type_t *, const char *); +extern decl_level *dcs; +extern const char unnamed[]; +extern int enumval; + +void initdecl(void); +type_t *gettyp(tspec_t); +type_t *block_dup_type(const type_t *); +type_t *expr_dup_type(const type_t *); +type_t *expr_unqualified_type(const type_t *); +bool is_incomplete(const type_t *); +void dcs_add_function_specifier(function_specifier); +void dcs_add_storage_class(scl_t); +void dcs_add_type(type_t *); +void dcs_add_qualifiers(type_qualifiers); +void dcs_add_packed(void); +void dcs_set_used(void); +void begin_declaration_level(decl_level_kind); +void end_declaration_level(void); +void dcs_set_asm(void); +void dcs_begin_type(void); +void dcs_end_type(void); +int length_in_bits(const type_t *, const char *); unsigned int alignment_in_bits(const type_t *); -sym_t *concat_symbols(sym_t *, sym_t *); -void check_type(sym_t *); -sym_t *declare_unnamed_member(void); -sym_t *declare_member(sym_t *); -sym_t *set_bit_field_width(sym_t *, int); -void add_type_qualifiers(type_qualifiers *, type_qualifiers); +sym_t *concat_symbols(sym_t *, sym_t *); +void check_type(sym_t *); +sym_t *declare_unnamed_member(void); +sym_t *declare_member(sym_t *); +sym_t *set_bit_field_width(sym_t *, int); +void add_type_qualifiers(type_qualifiers *, type_qualifiers); qual_ptr *append_qualified_pointer(qual_ptr *, qual_ptr *); -sym_t *add_pointer(sym_t *, qual_ptr *); -sym_t *add_array(sym_t *, bool, int); -sym_t *add_function(sym_t *, struct parameter_list); -void check_extern_declaration(const sym_t *); -void check_function_definition(sym_t *, bool); -sym_t *declarator_name(sym_t *); -sym_t *old_style_function_parameter_name(sym_t *); -type_t *make_tag_type(sym_t *, tspec_t, bool, bool); -type_t *complete_struct_or_union(sym_t *); -type_t *complete_enum(sym_t *); -sym_t *enumeration_constant(sym_t *, int, bool); -void declare(sym_t *, bool, sbuf_t *); -void copy_usage_info(sym_t *, sym_t *); -bool check_redeclaration(sym_t *, bool *); -bool pointer_types_are_compatible(const type_t *, const type_t *, bool); -bool types_compatible(const type_t *, const type_t *, bool, bool, bool *); -void complete_type(sym_t *, sym_t *); -sym_t *declare_parameter(sym_t *, bool); -void check_func_lint_directives(void); -void check_func_old_style_parameters(void); - -void declare_local(sym_t *, bool); -sym_t *abstract_name(void); -sym_t *abstract_enclosing_name(void); -void global_clean_up(void); -sym_t *declare_abstract_type(sym_t *); -void check_size(const sym_t *); -void mark_as_set(sym_t *); -void mark_as_used(sym_t *, bool, bool); -void check_usage(const decl_level *); -void check_usage_sym(bool, const sym_t *); -void end_translation_unit(void); -void print_previous_declaration(const sym_t *); -int to_int_constant(tnode_t *, bool); +sym_t *add_pointer(sym_t *, qual_ptr *); +sym_t *add_array(sym_t *, bool, int); +sym_t *add_function(sym_t *, struct parameter_list); +void check_extern_declaration(const sym_t *); +void check_function_definition(sym_t *, bool); +sym_t *declarator_name(sym_t *); +sym_t *old_style_function_parameter_name(sym_t *); +type_t *make_tag_type(sym_t *, tspec_t, bool, bool); +type_t *complete_struct_or_union(sym_t *); +type_t *complete_enum(sym_t *); +sym_t *enumeration_constant(sym_t *, int, bool); +void declare(sym_t *, bool, sbuf_t *); +void copy_usage_info(sym_t *, sym_t *); +bool check_redeclaration(sym_t *, bool *); +bool pointer_types_are_compatible(const type_t *, const type_t *, bool); +bool types_compatible(const type_t *, const type_t *, bool, bool, bool *); +void complete_type(sym_t *, sym_t *); +sym_t *declare_parameter(sym_t *, bool); +void check_func_lint_directives(void); +void check_func_old_style_parameters(void); + +void declare_local(sym_t *, bool); +sym_t *abstract_name(void); +sym_t *abstract_enclosing_name(void); +void global_clean_up(void); +sym_t *declare_abstract_type(sym_t *); +void check_size(const sym_t *); +void mark_as_set(sym_t *); +void mark_as_used(sym_t *, bool, bool); +void check_usage(const decl_level *); +void check_usage_sym(bool, const sym_t *); +void end_translation_unit(void); +void print_previous_declaration(const sym_t *); +int to_int_constant(tnode_t *, bool); /* * tree.c */ const tnode_t *before_conversion(const tnode_t *); -type_t *block_derive_type(type_t *, tspec_t); -type_t *expr_derive_type(type_t *, tspec_t); -bool is_compiler_builtin(const char *); -tnode_t *build_constant(type_t *, val_t *); -tnode_t *build_name(sym_t *, bool); -tnode_t *build_string(strg_t *); -tnode_t *build_generic_selection(const tnode_t *, +type_t *block_derive_type(type_t *, tspec_t); +type_t *expr_derive_type(type_t *, tspec_t); +bool is_compiler_builtin(const char *); +tnode_t *build_constant(type_t *, val_t *); +tnode_t *build_name(sym_t *, bool); +tnode_t *build_string(strg_t *); +tnode_t *build_generic_selection(const tnode_t *, struct generic_association *); -tnode_t *build_binary(tnode_t *, op_t, bool, tnode_t *); -tnode_t *build_unary(op_t, bool, tnode_t *); -tnode_t *build_member_access(tnode_t *, op_t, bool, sbuf_t *); -tnode_t *cconv(tnode_t *); -bool is_typeok_bool_compares_with_zero(const tnode_t *); -bool typeok(op_t, int, const tnode_t *, const tnode_t *); -tnode_t *promote(op_t, bool, tnode_t *); -tnode_t *convert(op_t, int, type_t *, tnode_t *); -void convert_constant(op_t, int, const type_t *, val_t *, val_t *); -tnode_t *build_sizeof(const type_t *); -tnode_t *build_offsetof(const type_t *, const sym_t *); -tnode_t *build_alignof(const type_t *); -tnode_t *cast(tnode_t *, type_t *); -tnode_t *build_function_argument(tnode_t *, tnode_t *); -tnode_t *build_function_call(tnode_t *, bool, tnode_t *); -val_t *integer_constant(tnode_t *, bool); -void expr(tnode_t *, bool, bool, bool, bool); -void check_expr_misc(const tnode_t *, bool, bool, bool, bool, bool, bool); -bool constant_addr(const tnode_t *, const sym_t **, ptrdiff_t *); -strg_t *cat_strings(strg_t *, strg_t *); +tnode_t *build_binary(tnode_t *, op_t, bool, tnode_t *); +tnode_t *build_unary(op_t, bool, tnode_t *); +tnode_t *build_member_access(tnode_t *, op_t, bool, sbuf_t *); +tnode_t *cconv(tnode_t *); +bool is_typeok_bool_compares_with_zero(const tnode_t *); +bool typeok(op_t, int, const tnode_t *, const tnode_t *); +tnode_t *promote(op_t, bool, tnode_t *); +tnode_t *convert(op_t, int, type_t *, tnode_t *); +void convert_constant(op_t, int, const type_t *, val_t *, val_t *); +tnode_t *build_sizeof(const type_t *); +tnode_t *build_offsetof(const type_t *, const sym_t *); +tnode_t *build_alignof(const type_t *); +tnode_t *cast(tnode_t *, type_t *); +tnode_t *build_function_argument(tnode_t *, tnode_t *); +tnode_t *build_function_call(tnode_t *, bool, tnode_t *); +val_t *integer_constant(tnode_t *, bool); +void expr(tnode_t *, bool, bool, bool, bool); +void check_expr_misc(const tnode_t *, bool, bool, bool, bool, bool, bool); +bool constant_addr(const tnode_t *, const sym_t **, ptrdiff_t *); +strg_t *cat_strings(strg_t *, strg_t *); unsigned int type_size_in_bits(const type_t *); -sym_t *find_member(const struct_or_union *, const char *); +sym_t *find_member(const struct_or_union *, const char *); void begin_statement_expr(void); void do_statement_expr(tnode_t *); @@ -309,110 +309,110 @@ bool in_statement_expr(void); /* * func.c */ -extern sym_t *funcsym; -extern bool reached; -extern bool warn_about_unreachable; -extern bool suppress_fallthrough; -extern int nargusg; -extern pos_t argsused_pos; -extern int nvararg; -extern pos_t vapos; -extern int printflike_argnum; -extern pos_t printflike_pos; -extern int scanflike_argnum; -extern pos_t scanflike_pos; -extern bool suppress_constcond; -extern bool llibflg; -extern int lwarn; -extern bool suppress_bitfieldtype; -extern bool plibflg; -extern bool suppress_longlong; - -void begin_control_statement(control_statement_kind); -void end_control_statement(control_statement_kind); -void check_statement_reachable(void); -void begin_function(sym_t *); -void end_function(void); -void named_label(sym_t *); -void case_label(tnode_t *); -void default_label(void); -void stmt_if_expr(tnode_t *); -void stmt_if_then_stmt(void); -void stmt_if_else_stmt(bool); -void stmt_switch_expr(tnode_t *); -void stmt_switch_expr_stmt(void); -void stmt_while_expr(tnode_t *); -void stmt_while_expr_stmt(void); -void stmt_do(void); -void stmt_do_while_expr(tnode_t *); -void stmt_for_exprs(tnode_t *, tnode_t *, tnode_t *); -void stmt_for_exprs_stmt(void); -void stmt_goto(sym_t *); -void stmt_continue(void); -void stmt_break(void); -void stmt_return(bool, tnode_t *); -void global_clean_up_decl(bool); -void handle_lint_comment(lint_comment, int); +extern sym_t *funcsym; +extern bool reached; +extern bool warn_about_unreachable; +extern bool suppress_fallthrough; +extern int nargusg; +extern pos_t argsused_pos; +extern int nvararg; +extern pos_t vapos; +extern int printflike_argnum; +extern pos_t printflike_pos; +extern int scanflike_argnum; +extern pos_t scanflike_pos; +extern bool suppress_constcond; +extern bool llibflg; +extern int lwarn; +extern bool suppress_bitfieldtype; +extern bool plibflg; +extern bool suppress_longlong; + +void begin_control_statement(control_statement_kind); +void end_control_statement(control_statement_kind); +void check_statement_reachable(void); +void begin_function(sym_t *); +void end_function(void); +void named_label(sym_t *); +void case_label(tnode_t *); +void default_label(void); +void stmt_if_expr(tnode_t *); +void stmt_if_then_stmt(void); +void stmt_if_else_stmt(bool); +void stmt_switch_expr(tnode_t *); +void stmt_switch_expr_stmt(void); +void stmt_while_expr(tnode_t *); +void stmt_while_expr_stmt(void); +void stmt_do(void); +void stmt_do_while_expr(tnode_t *); +void stmt_for_exprs(tnode_t *, tnode_t *, tnode_t *); +void stmt_for_exprs_stmt(void); +void stmt_goto(sym_t *); +void stmt_continue(void); +void stmt_break(void); +void stmt_return(bool, tnode_t *); +void global_clean_up_decl(bool); +void handle_lint_comment(lint_comment, int); /* * init.c */ -void begin_initialization(sym_t *); -void end_initialization(void); -sym_t *current_initsym(void); - -void init_rbrace(void); -void init_lbrace(void); -void init_expr(tnode_t *); -void begin_designation(void); -void add_designator_member(sbuf_t *); -void add_designator_subscript(range_t); +void begin_initialization(sym_t *); +void end_initialization(void); +sym_t *current_initsym(void); + +void init_rbrace(void); +void init_lbrace(void); +void init_expr(tnode_t *); +void begin_designation(void); +void add_designator_member(sbuf_t *); +void add_designator_subscript(range_t); /* * emit.c */ -void outtype(const type_t *); -void outsym(const sym_t *, scl_t, def_t); -void outfdef(const sym_t *, const pos_t *, bool, bool, const sym_t *); -void outcall(const tnode_t *, bool, bool); -void outusg(const sym_t *); +void outtype(const type_t *); +void outsym(const sym_t *, scl_t, def_t); +void outfdef(const sym_t *, const pos_t *, bool, bool, const sym_t *); +void outcall(const tnode_t *, bool, bool); +void outusg(const sym_t *); /* * lex.c */ -int lex_name(const char *, size_t); -int lex_integer_constant(const char *, size_t, int); -int lex_floating_constant(const char *, size_t); -int lex_operator(int, op_t); -int lex_string(void); -int lex_wide_string(void); -int lex_character_constant(void); -int lex_wide_character_constant(void); -void lex_directive(const char *); -void lex_next_line(void); -void lex_comment(void); -void lex_slash_slash_comment(void); -void lex_unknown_character(int); -int lex_input(void); +int lex_name(const char *, size_t); +int lex_integer_constant(const char *, size_t, int); +int lex_floating_constant(const char *, size_t); +int lex_operator(int, op_t); +int lex_string(void); +int lex_wide_string(void); +int lex_character_constant(void); +int lex_wide_character_constant(void); +void lex_directive(const char *); +void lex_next_line(void); +void lex_comment(void); +void lex_slash_slash_comment(void); +void lex_unknown_character(int); +int lex_input(void); /* * ckbool.c */ -bool typeok_scalar_strict_bool(op_t, const mod_t *, int, +bool typeok_scalar_strict_bool(op_t, const mod_t *, int, const tnode_t *, const tnode_t *); -bool fallback_symbol_strict_bool(sym_t *); +bool fallback_symbol_strict_bool(sym_t *); /* * ckctype.c */ -void check_ctype_function_call(const tnode_t *, const tnode_t *); -void check_ctype_macro_invocation(const tnode_t *, const tnode_t *); +void check_ctype_function_call(const tnode_t *, const tnode_t *); +void check_ctype_macro_invocation(const tnode_t *, const tnode_t *); /* * ckgetopt.c */ -void check_getopt_begin_while(const tnode_t *); -void check_getopt_begin_switch(void); -void check_getopt_case_label(int64_t); -void check_getopt_end_switch(void); -void check_getopt_end_while(void); +void check_getopt_begin_while(const tnode_t *); +void check_getopt_begin_switch(void); +void check_getopt_case_label(int64_t); +void check_getopt_end_switch(void); +void check_getopt_end_while(void); Index: src/usr.bin/xlint/lint1/func.c diff -u src/usr.bin/xlint/lint1/func.c:1.177 src/usr.bin/xlint/lint1/func.c:1.178 --- src/usr.bin/xlint/lint1/func.c:1.177 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/func.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: func.c,v 1.177 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: func.c,v 1.178 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: func.c,v 1.177 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: func.c,v 1.178 2023/12/03 18:17:41 rillig Exp $"); #endif #include <stdlib.h> @@ -50,16 +50,16 @@ __RCSID("$NetBSD: func.c,v 1.177 2023/12 * Contains a pointer to the symbol table entry of the current function * definition. */ -sym_t *funcsym; +sym_t *funcsym; /* Is set as long as a statement can be reached. Must be set at level 0. */ -bool reached = true; +bool reached = true; /* * Is true by default, can be cleared by NOTREACHED. * Is reset to true whenever 'reached' changes. */ -bool warn_about_unreachable; +bool warn_about_unreachable; /* * In conjunction with 'reached', controls printing of "fallthrough on ..." @@ -74,7 +74,7 @@ bool warn_about_unreachable; * reduction of above. This means that ** FALLTHROUGH ** after "if ..." would * always be ignored. */ -bool suppress_fallthrough; +bool suppress_fallthrough; /* The innermost control statement */ static control_statement *cstmt; @@ -85,8 +85,8 @@ static control_statement *cstmt; * * The position of the last ARGSUSED comment is stored in argsused_pos. */ -int nargusg = -1; -pos_t argsused_pos; +int nargusg = -1; +pos_t argsused_pos; /* * Number of parameters of the following function definition whose types @@ -94,8 +94,8 @@ pos_t argsused_pos; * * The position of the last VARARGS comment is stored in vapos. */ -int nvararg = -1; -pos_t vapos; +int nvararg = -1; +pos_t vapos; /* * Both printflike_argnum and scanflike_argnum contain the 1-based number @@ -105,26 +105,26 @@ pos_t vapos; * printflike_pos and scanflike_pos are the positions of the last PRINTFLIKE * or SCANFLIKE comment. */ -int printflike_argnum = -1; -int scanflike_argnum = -1; -pos_t printflike_pos; -pos_t scanflike_pos; +int printflike_argnum = -1; +int scanflike_argnum = -1; +pos_t printflike_pos; +pos_t scanflike_pos; /* * If both plibflg and llibflg are set, prototypes are written as function * definitions to the output file. */ -bool plibflg; +bool plibflg; /* Temporarily suppress warnings about constants in conditional context. */ -bool suppress_constcond; +bool suppress_constcond; /* * Whether a lint library shall be created. The effect of this flag is that * all defined symbols are treated as used. * (The LINTLIBRARY comment also resets vflag.) */ -bool llibflg; +bool llibflg; /* * Determines the warnings that are suppressed by a LINTED directive. For @@ -134,13 +134,13 @@ bool llibflg; * LWARN_NONE: all warnings are suppressed * n >= 0: warning n is ignored, the others are active */ -int lwarn = LWARN_ALL; +int lwarn = LWARN_ALL; /* Temporarily suppress warnings about wrong types for bit-fields. */ -bool suppress_bitfieldtype; +bool suppress_bitfieldtype; /* Temporarily suppress warnings about use of 'long long'. */ -bool suppress_longlong; +bool suppress_longlong; void begin_control_statement(control_statement_kind kind) Index: src/usr.bin/xlint/lint1/lex.c diff -u src/usr.bin/xlint/lint1/lex.c:1.195 src/usr.bin/xlint/lint1/lex.c:1.196 --- src/usr.bin/xlint/lint1/lex.c:1.195 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/lex.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: lex.c,v 1.195 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: lex.c,v 1.196 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -38,7 +38,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: lex.c,v 1.195 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: lex.c,v 1.196 2023/12/03 18:17:41 rillig Exp $"); #endif #include <ctype.h> @@ -56,13 +56,13 @@ __RCSID("$NetBSD: lex.c,v 1.195 2023/12/ /* Current position (it's also updated when an included file is parsed) */ -pos_t curr_pos = { "", 1, 0 }; +pos_t curr_pos = { "", 1, 0 }; /* * Current position in C source (not updated when an included file is * parsed). */ -pos_t csrc_pos = { "", 1, 0 }; +pos_t csrc_pos = { "", 1, 0 }; bool in_gcc_attribute; bool in_system_header; Index: src/usr.bin/xlint/lint1/lint1.h diff -u src/usr.bin/xlint/lint1/lint1.h:1.204 src/usr.bin/xlint/lint1/lint1.h:1.205 --- src/usr.bin/xlint/lint1/lint1.h:1.204 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/lint1.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: lint1.h,v 1.204 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: lint1.h,v 1.205 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -66,7 +66,7 @@ typedef struct memory_pool { * headers, see print_stack_trace. */ typedef struct { - const char *p_file; + const char *p_file; int p_line; int p_uniq; /* uniquifier */ } pos_t; @@ -78,7 +78,7 @@ typedef struct { * * Strings are stored with a trailing NUL. */ -typedef struct strg { +typedef struct strg { bool st_char; /* string doesn't have an 'L' prefix */ size_t st_len; /* length without trailing NUL */ void *st_mem; /* char[] for st_char, or wchar_t[] */ @@ -130,23 +130,23 @@ typedef struct { * If the structure has no tag name, its first typedef name is used to identify * the structure in lint2. */ -typedef struct { +typedef struct { unsigned int sou_size_in_bits; unsigned int sou_align_in_bits; bool sou_incomplete:1; - struct sym *sou_first_member; - struct sym *sou_tag; - struct sym *sou_first_typedef; + struct sym *sou_first_member; + struct sym *sou_tag; + struct sym *sou_first_typedef; } struct_or_union; /* * same as above for enums */ -typedef struct { +typedef struct { bool en_incomplete:1; - struct sym *en_first_enumerator; - struct sym *en_tag; - struct sym *en_first_typedef; + struct sym *en_first_enumerator; + struct sym *en_tag; + struct sym *en_first_typedef; } enumeration; /* @@ -175,14 +175,14 @@ struct lint1_type { bool t_is_enum:1; bool t_packed:1; union { - int _t_dim; /* dimension (if ARRAY) */ + int _t_dim; /* dimension (if ARRAY) */ struct_or_union *_t_sou; enumeration *_t_enum; - struct sym *_t_params; /* parameters (if t_proto) */ + struct sym *_t_params; /* parameters (if t_proto) */ } t_u; unsigned int t_bit_field_width:8; unsigned int t_bit_field_offset:24; - struct lint1_type *t_subt; /*- element type (if ARRAY), + struct lint1_type *t_subt; /*- element type (if ARRAY), * return value (if FUNC), * target type (if PTR) */ }; @@ -195,7 +195,7 @@ struct lint1_type { /* * types of symbols */ -typedef enum { +typedef enum { FVFT, /* variables, functions, type names, enums */ FMEMBER, /* members of structs or unions */ FTAG, /* tags */ @@ -233,9 +233,9 @@ typedef enum { /* * symbol table entry */ -typedef struct sym { - const char *s_name; - const char *s_rename; /* renamed symbol's given name */ +typedef struct sym { + const char *s_name; + const char *s_rename; /* renamed symbol's given name */ pos_t s_def_pos; /* position of last (prototype) definition, * prototype declaration, no-prototype-def., * tentative definition or declaration, in this @@ -254,7 +254,7 @@ typedef struct sym { bool s_return_type_implicit_int:1; bool s_osdef:1; /* symbol stems from old-style function def. */ bool s_inline:1; /* true if this is an inline function */ - struct sym *s_ext_sym; /* for locally declared external symbols, the + struct sym *s_ext_sym; /* for locally declared external symbols, the * pointer to the external symbol with the same * name */ def_t s_def; /* declared, tentative defined, defined */ @@ -266,7 +266,7 @@ typedef struct sym { bool s_bool_constant; int s_enum_constant; /* XXX: should be TARG_INT */ struct { - struct_or_union *sm_containing_type; + struct_or_union *sm_containing_type; unsigned int sm_offset_in_bits; } s_member; struct { @@ -280,15 +280,15 @@ typedef struct sym { function_specifier function_specifier; } u; } s_keyword; - struct sym *s_old_style_params; /* parameters in an old-style + struct sym *s_old_style_params; /* parameters in an old-style * function definition */ } u; - struct sym *s_symtab_next; /* next symbol with same hash value */ - struct sym **s_symtab_ref; /* pointer to s_symtab_next of the + struct sym *s_symtab_next; /* next symbol with same hash value */ + struct sym **s_symtab_ref; /* pointer to s_symtab_next of the * previous symbol */ - struct sym *s_next; /* next struct/union member, enumerator, + struct sym *s_next; /* next struct/union member, enumerator, * parameter */ - struct sym *s_level_next; /* next symbol declared on the same + struct sym *s_level_next; /* next symbol declared on the same * level */ } sym_t; @@ -296,8 +296,8 @@ typedef struct sym { * Used to keep some information about symbols before they are entered * into the symbol table. */ -typedef struct sbuf { - const char *sb_name; /* name of symbol */ +typedef struct sbuf { + const char *sb_name; /* name of symbol */ size_t sb_len; /* length (without '\0') */ sym_t *sb_sym; /* symbol table entry */ } sbuf_t; @@ -306,7 +306,7 @@ typedef struct sbuf { /* * tree node */ -typedef struct tnode { +typedef struct tnode { op_t tn_op; /* operator */ type_t *tn_type; /* type */ bool tn_lvalue:1; /* node is lvalue */ @@ -319,8 +319,8 @@ typedef struct tnode { bool tn_system_dependent:1; /* depends on sizeof or offsetof */ union { struct { - struct tnode *_tn_left; /* (left) operand */ - struct tnode *_tn_right; /* right operand */ + struct tnode *_tn_left; /* (left) operand */ + struct tnode *_tn_right; /* right operand */ } tn_s; sym_t *_tn_sym; /* symbol if op == NAME */ val_t _tn_val; /* value if op == CON */ @@ -367,7 +367,7 @@ typedef enum decl_level_kind { * For nested declarations, the global 'dcs' holds all information needed for * the current level, the outer levels are available via 'd_enclosing'. */ -typedef struct decl_level { +typedef struct decl_level { decl_level_kind d_kind; tspec_t d_abstract_type;/* VOID, BOOL, CHAR, INT or COMPLEX */ tspec_t d_complex_mod; /* FLOAT or DOUBLE */ @@ -418,16 +418,16 @@ struct parameter_list { * ----]. The leftmost 'const' is not included in this list, it is stored in * dcs->d_qual instead. */ -typedef struct qual_ptr { +typedef struct qual_ptr { type_qualifiers qualifiers; - struct qual_ptr *p_next; + struct qual_ptr *p_next; } qual_ptr; /* * The values of the 'case' labels, linked via cl_next in reverse order of * appearance in the code, that is from bottom to top. */ -typedef struct case_label { +typedef struct case_label { val_t cl_val; struct case_label *cl_next; } case_label_t; Index: src/usr.bin/xlint/lint1/main1.c diff -u src/usr.bin/xlint/lint1/main1.c:1.77 src/usr.bin/xlint/lint1/main1.c:1.78 --- src/usr.bin/xlint/lint1/main1.c:1.77 Sat Jul 29 10:45:00 2023 +++ src/usr.bin/xlint/lint1/main1.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: main1.c,v 1.77 2023/07/29 10:45:00 rillig Exp $ */ +/* $NetBSD: main1.c,v 1.78 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: main1.c,v 1.77 2023/07/29 10:45:00 rillig Exp $"); +__RCSID("$NetBSD: main1.c,v 1.78 2023/12/03 18:17:41 rillig Exp $"); #endif #include <sys/types.h> @@ -49,37 +49,37 @@ __RCSID("$NetBSD: main1.c,v 1.77 2023/07 #include "lint1.h" -int aflag; -bool bflag; -bool cflag; -bool eflag; -bool Fflag; -bool hflag; -bool Pflag; -bool pflag; -bool rflag; -bool Tflag; -bool uflag; -bool vflag; -bool wflag; -bool yflag; -bool zflag; +int aflag; +bool bflag; +bool cflag; +bool eflag; +bool Fflag; +bool hflag; +bool Pflag; +bool pflag; +bool rflag; +bool Tflag; +bool uflag; +bool vflag; +bool wflag; +bool yflag; +bool zflag; /* * The default language level is the one that checks for compatibility * between traditional C and C90. As of 2022, this default is no longer * useful since most traditional C code has already been migrated. */ -bool allow_trad = true; -bool allow_c90 = true; -bool allow_c99; -bool allow_c11; -bool allow_c23; -bool allow_gcc; +bool allow_trad = true; +bool allow_c90 = true; +bool allow_c99; +bool allow_c11; +bool allow_c23; +bool allow_gcc; sig_atomic_t fpe; -static void usage(void); +static void usage(void); static FILE * gcc_builtins(void) Index: src/usr.bin/xlint/lint1/mem1.c diff -u src/usr.bin/xlint/lint1/mem1.c:1.76 src/usr.bin/xlint/lint1/mem1.c:1.77 --- src/usr.bin/xlint/lint1/mem1.c:1.76 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/mem1.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: mem1.c,v 1.76 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: mem1.c,v 1.77 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: mem1.c,v 1.76 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: mem1.c,v 1.77 2023/12/03 18:17:41 rillig Exp $"); #endif #include <sys/param.h> @@ -54,7 +54,7 @@ struct filename { const char *fn_name; size_t fn_len; int fn_id; - struct filename *fn_next; + struct filename *fn_next; }; static struct filename *filenames; /* null-terminated array */ Index: src/usr.bin/xlint/lint1/op.h diff -u src/usr.bin/xlint/lint1/op.h:1.25 src/usr.bin/xlint/lint1/op.h:1.26 --- src/usr.bin/xlint/lint1/op.h:1.25 Thu Sep 14 22:48:49 2023 +++ src/usr.bin/xlint/lint1/op.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: op.h,v 1.25 2023/09/14 22:48:49 rillig Exp $ */ +/* $NetBSD: op.h,v 1.26 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -36,7 +36,7 @@ /* * Various information about operators. */ -typedef struct { +typedef struct { bool m_binary: 1; bool m_returns_bool: 1; bool m_takes_bool: 1; Index: src/usr.bin/xlint/lint1/tree.c diff -u src/usr.bin/xlint/lint1/tree.c:1.586 src/usr.bin/xlint/lint1/tree.c:1.587 --- src/usr.bin/xlint/lint1/tree.c:1.586 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint1/tree.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: tree.c,v 1.586 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: tree.c,v 1.587 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: tree.c,v 1.586 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: tree.c,v 1.587 2023/12/03 18:17:41 rillig Exp $"); #endif #include <float.h> @@ -4242,9 +4242,9 @@ build_function_argument(tnode_t *args, t */ static tnode_t * check_prototype_argument( - int n, /* pos of arg */ - type_t *tp, /* expected type (from prototype) */ - tnode_t *tn) /* argument */ + int n, /* pos of arg */ + type_t *tp, /* expected type (from prototype) */ + tnode_t *tn) /* argument */ { tnode_t *ln = xcalloc(1, sizeof(*ln)); ln->tn_type = expr_unqualified_type(tp); Index: src/usr.bin/xlint/lint2/chk.c diff -u src/usr.bin/xlint/lint2/chk.c:1.64 src/usr.bin/xlint/lint2/chk.c:1.65 --- src/usr.bin/xlint/lint2/chk.c:1.64 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint2/chk.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: chk.c,v 1.64 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: chk.c,v 1.65 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -38,7 +38,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: chk.c,v 1.64 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: chk.c,v 1.65 2023/12/03 18:17:41 rillig Exp $"); #endif #include <ctype.h> @@ -48,26 +48,26 @@ __RCSID("$NetBSD: chk.c,v 1.64 2023/12/0 #include "lint2.h" -static void check_used_not_defined(const hte_t *); -static void check_defined_not_used(const hte_t *); -static void check_declared_not_used_or_defined(const hte_t *); -static void check_multiple_definitions(const hte_t *); -static void chkvtui(const hte_t *, sym_t *, sym_t *); -static void chkvtdi(const hte_t *, sym_t *, sym_t *); -static void chkfaui(const hte_t *, sym_t *, sym_t *); -static void chkau(const hte_t *, int, sym_t *, sym_t *, pos_t *, +static void check_used_not_defined(const hte_t *); +static void check_defined_not_used(const hte_t *); +static void check_declared_not_used_or_defined(const hte_t *); +static void check_multiple_definitions(const hte_t *); +static void chkvtui(const hte_t *, sym_t *, sym_t *); +static void chkvtdi(const hte_t *, sym_t *, sym_t *); +static void chkfaui(const hte_t *, sym_t *, sym_t *); +static void chkau(const hte_t *, int, sym_t *, sym_t *, pos_t *, fcall_t *, fcall_t *, type_t *, type_t *); -static void check_return_values(const hte_t *, sym_t *); -static void check_argument_declarations(const hte_t *, sym_t *, sym_t *); -static void printflike(const hte_t *, fcall_t *, int, const char *, type_t **); -static void scanflike(const hte_t *, fcall_t *, int, const char *, type_t **); -static void bad_format_string(const hte_t *, fcall_t *); -static void inconsistent_arguments(const hte_t *, fcall_t *, int); -static void too_few_arguments(const hte_t *, fcall_t *); -static void too_many_arguments(const hte_t *, fcall_t *); -static bool types_compatible(type_t *, type_t *, bool, bool, bool, bool *); -static bool prototypes_compatible(type_t *, type_t *, bool *); -static bool matches_no_arg_function(type_t *, bool *); +static void check_return_values(const hte_t *, sym_t *); +static void check_argument_declarations(const hte_t *, sym_t *, sym_t *); +static void printflike(const hte_t *, fcall_t *, int, const char *, type_t **); +static void scanflike(const hte_t *, fcall_t *, int, const char *, type_t **); +static void bad_format_string(const hte_t *, fcall_t *); +static void inconsistent_arguments(const hte_t *, fcall_t *, int); +static void too_few_arguments(const hte_t *, fcall_t *); +static void too_many_arguments(const hte_t *, fcall_t *); +static bool types_compatible(type_t *, type_t *, bool, bool, bool, bool *); +static bool prototypes_compatible(type_t *, type_t *, bool *); +static bool matches_no_arg_function(type_t *, bool *); /* Index: src/usr.bin/xlint/lint2/emit2.c diff -u src/usr.bin/xlint/lint2/emit2.c:1.36 src/usr.bin/xlint/lint2/emit2.c:1.37 --- src/usr.bin/xlint/lint2/emit2.c:1.36 Sat Aug 12 21:32:16 2023 +++ src/usr.bin/xlint/lint2/emit2.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: emit2.c,v 1.36 2023/08/12 21:32:16 rillig Exp $ */ +/* $NetBSD: emit2.c,v 1.37 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -34,15 +34,15 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: emit2.c,v 1.36 2023/08/12 21:32:16 rillig Exp $"); +__RCSID("$NetBSD: emit2.c,v 1.37 2023/12/03 18:17:41 rillig Exp $"); #endif #include "lint2.h" -static void outtype(type_t *); -static void outdef(hte_t *, sym_t *); -static void dumpname(hte_t *); -static void outfiles(void); +static void outtype(type_t *); +static void outdef(hte_t *, sym_t *); +static void dumpname(hte_t *); +static void outfiles(void); /* Write type into the output file. */ static void Index: src/usr.bin/xlint/lint2/externs2.h diff -u src/usr.bin/xlint/lint2/externs2.h:1.21 src/usr.bin/xlint/lint2/externs2.h:1.22 --- src/usr.bin/xlint/lint2/externs2.h:1.21 Thu Jul 13 08:40:38 2023 +++ src/usr.bin/xlint/lint2/externs2.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: externs2.h,v 1.21 2023/07/13 08:40:38 rillig Exp $ */ +/* $NetBSD: externs2.h,v 1.22 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -35,51 +35,51 @@ /* * main2.c */ -extern bool Cflag; -extern bool Fflag; -extern bool Hflag; -extern bool hflag; -extern bool sflag; -extern bool tflag; -extern bool uflag; -extern bool xflag; -extern const char *libname; +extern bool Cflag; +extern bool Fflag; +extern bool Hflag; +extern bool hflag; +extern bool sflag; +extern bool tflag; +extern bool uflag; +extern bool xflag; +extern const char *libname; /* * hash.c */ hte_t** htab_new(void); -hte_t *hash_search(hte_t **, const char *, bool); -void symtab_init(void); -void symtab_forall(void (*)(hte_t *)); -void symtab_forall_sorted(void (*)(hte_t *)); -void hash_free(hte_t **); +hte_t *hash_search(hte_t **, const char *, bool); +void symtab_init(void); +void symtab_forall(void (*)(hte_t *)); +void symtab_forall_sorted(void (*)(hte_t *)); +void hash_free(hte_t **); #define htab_search(a, b) hash_search(NULL, (a), (b)) /* * read.c */ -extern const char **fnames; -extern type_t **tlst; +extern const char **fnames; +extern type_t **tlst; -void readfile(const char *); -void mkstatic(hte_t *); +void readfile(const char *); +void mkstatic(hte_t *); /* * chk.c */ -void mark_main_as_used(void); -void check_name(const hte_t *); +void mark_main_as_used(void); +void check_name(const hte_t *); /* * msg.c */ -void msg(int, ...); -const char *mkpos(const pos_t *); +void msg(int, ...); +const char *mkpos(const pos_t *); /* * emit2.c */ -void outlib(const char *); -int addoutfile(short); +void outlib(const char *); +int addoutfile(short); Index: src/usr.bin/xlint/lint2/hash.c diff -u src/usr.bin/xlint/lint2/hash.c:1.28 src/usr.bin/xlint/lint2/hash.c:1.29 --- src/usr.bin/xlint/lint2/hash.c:1.28 Thu Jul 13 08:40:38 2023 +++ src/usr.bin/xlint/lint2/hash.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: hash.c,v 1.28 2023/07/13 08:40:38 rillig Exp $ */ +/* $NetBSD: hash.c,v 1.29 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: hash.c,v 1.28 2023/07/13 08:40:38 rillig Exp $"); +__RCSID("$NetBSD: hash.c,v 1.29 2023/12/03 18:17:41 rillig Exp $"); #endif #include <limits.h> @@ -49,7 +49,7 @@ __RCSID("$NetBSD: hash.c,v 1.28 2023/07/ #define HTAB_BUCKETS 1009 -static hte_t **htab; +static hte_t **htab; hte_t ** htab_new(void) Index: src/usr.bin/xlint/lint2/lint2.h diff -u src/usr.bin/xlint/lint2/lint2.h:1.26 src/usr.bin/xlint/lint2/lint2.h:1.27 --- src/usr.bin/xlint/lint2/lint2.h:1.26 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint2/lint2.h Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: lint2.h,v 1.26 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: lint2.h,v 1.27 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -50,9 +50,9 @@ struct lint2_type { union { int _t_dim; /* if the type is an ARRAY than this * is the dimension of the array. */ - struct hte *_t_tag; /* hash table entry of tag if + struct hte *_t_tag; /* hash table entry of tag if * t_is_enum, STRUCT or UNION */ - struct hte *_t_tynam; /* hash table entry of typename if + struct hte *_t_tynam; /* hash table entry of typename if * t_is_enum, STRUCT or UNION */ struct { int p_line; @@ -61,10 +61,10 @@ struct lint2_type { } _t_uniqpos; /* unique position, for untagged * untyped STRUCTs, UNIONS, and ENUMs, * if t_isuniqpos */ - struct lint2_type **_t_args; /* list of argument types if + struct lint2_type **_t_args; /* list of argument types if * this is a prototype */ } t_u; - struct lint2_type *t_subt; /*- element type (if ARRAY), + struct lint2_type *t_subt; /*- element type (if ARRAY), * return type (if FUNC), * target type (if PTR) */ }; @@ -81,20 +81,20 @@ struct lint2_type { * Such a structure is created for each argument of a function call * which is an integer constant or a constant string. */ -typedef struct arginf { +typedef struct arginf { int a_num; /* # of argument (1..) */ bool a_zero:1; /* argument is 0 */ bool a_pcon:1; /* msb of argument is not set */ bool a_ncon:1; /* msb of argument is set */ bool a_fmt:1; /* a_fstrg points to format string */ char *a_fstrg; /* format string */ - struct arginf *a_next; /* information for next const. argument */ + struct arginf *a_next; /* information for next const. argument */ } arginf_t; /* * Keeps information about position in source file. */ -typedef struct { +typedef struct { unsigned short p_src; /* index of name of translation unit (the name * which was specified at the command line) */ unsigned short p_line; /* line number in p_src */ @@ -103,7 +103,7 @@ typedef struct { } pos_t; /* Used for definitions and declarations. */ -typedef struct sym { +typedef struct sym { struct { pos_t s_pos; /* pos of def./decl. */ #if !defined(lint) && !defined(DEBUG) @@ -119,7 +119,7 @@ typedef struct sym { bool s_printflike:1; bool s_scanflike:1; unsigned short s_type; - struct sym *s_next; /* next symbol with same name */ + struct sym *s_next; /* next symbol with same name */ } s_s; /* * To save memory, the remaining members are only allocated if one of @@ -145,29 +145,29 @@ typedef struct sym { /* * Used to store information about function calls. */ -typedef struct fcall { +typedef struct fcall { pos_t f_pos; /* position of call */ bool f_rused:1; /* return value used */ bool f_rdisc:1; /* return value discarded (casted to void) */ unsigned short f_type; /* types of expected return value and args */ arginf_t *f_args; /* information about constant arguments */ - struct fcall *f_next; /* next call of same function */ + struct fcall *f_next; /* next call of same function */ } fcall_t; /* * Used to store information about usage of symbols other * than for function calls. */ -typedef struct usym { +typedef struct usym { pos_t u_pos; /* position */ - struct usym *u_next; /* next usage */ + struct usym *u_next; /* next usage */ } usym_t; /* * hash table entry */ -typedef struct hte { - const char *h_name; /* name */ +typedef struct hte { + const char *h_name; /* name */ bool h_used:1; /* symbol is used */ bool h_def:1; /* symbol is defined */ bool h_static:1; /* static symbol */ @@ -177,7 +177,7 @@ typedef struct hte { fcall_t **h_lcall; /* points to f_next of last call */ usym_t *h_usyms; /* usage info */ usym_t **h_lusym; /* points to u_next of last usage info */ - struct hte *h_link; /* next hte with same hash function */ + struct hte *h_link; /* next hte with same hash function */ struct hte *h_hte; /* pointer to other htes (for renames) */ } hte_t; Index: src/usr.bin/xlint/lint2/main2.c diff -u src/usr.bin/xlint/lint2/main2.c:1.34 src/usr.bin/xlint/lint2/main2.c:1.35 --- src/usr.bin/xlint/lint2/main2.c:1.34 Thu Jul 13 08:40:38 2023 +++ src/usr.bin/xlint/lint2/main2.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: main2.c,v 1.34 2023/07/13 08:40:38 rillig Exp $ */ +/* $NetBSD: main2.c,v 1.35 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: main2.c,v 1.34 2023/07/13 08:40:38 rillig Exp $"); +__RCSID("$NetBSD: main2.c,v 1.35 2023/12/03 18:17:41 rillig Exp $"); #endif #include <stdio.h> @@ -47,14 +47,14 @@ __RCSID("$NetBSD: main2.c,v 1.34 2023/07 #include "lint2.h" -bool Cflag; -bool Fflag; -bool Hflag; -bool hflag; -bool sflag; -bool tflag; -bool uflag; -bool xflag; +bool Cflag; +bool Fflag; +bool Hflag; +bool hflag; +bool sflag; +bool tflag; +bool uflag; +bool xflag; const char *libname; /* @@ -64,7 +64,7 @@ const char *libname; */ static const char **libs; -static void usage(void) __attribute__((noreturn)); +static void usage(void) __attribute__((noreturn)); static void check_name_non_const(hte_t *hte) Index: src/usr.bin/xlint/lint2/msg.c diff -u src/usr.bin/xlint/lint2/msg.c:1.24 src/usr.bin/xlint/lint2/msg.c:1.25 --- src/usr.bin/xlint/lint2/msg.c:1.24 Thu Jul 13 08:40:38 2023 +++ src/usr.bin/xlint/lint2/msg.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: msg.c,v 1.24 2023/07/13 08:40:38 rillig Exp $ */ +/* $NetBSD: msg.c,v 1.25 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: msg.c,v 1.24 2023/07/13 08:40:38 rillig Exp $"); +__RCSID("$NetBSD: msg.c,v 1.25 2023/12/03 18:17:41 rillig Exp $"); #endif #include <stdarg.h> @@ -46,7 +46,7 @@ __RCSID("$NetBSD: msg.c,v 1.24 2023/07/1 #include "lint2.h" -static const char *msgs[] = { +static const char *msgs[] = { "%s used( %s ), but not defined", /* 0 */ "%s defined( %s ), but never used", /* 1 */ "%s declared( %s ), but never used or defined", /* 2 */ Index: src/usr.bin/xlint/lint2/read.c diff -u src/usr.bin/xlint/lint2/read.c:1.89 src/usr.bin/xlint/lint2/read.c:1.90 --- src/usr.bin/xlint/lint2/read.c:1.89 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/lint2/read.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: read.c,v 1.89 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: read.c,v 1.90 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -38,7 +38,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: read.c,v 1.89 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: read.c,v 1.90 2023/12/03 18:17:41 rillig Exp $"); #endif #include <ctype.h> @@ -52,22 +52,22 @@ __RCSID("$NetBSD: read.c,v 1.89 2023/12/ /* index of current (included) source file */ -static int srcfile; +static int srcfile; /* * The array pointed to by inpfns maps the file name indices of input files * to the file name indices used in lint2 */ -static short *inpfns; -static size_t ninpfns; +static short *inpfns; +static size_t ninpfns; /* * The array pointed to by *fnames maps file name indices to file names. * Indices of type short are used instead of pointers to save memory. */ -const char **fnames; -static size_t *flines; -static size_t nfnames; +const char **fnames; +static size_t *flines; +static size_t nfnames; /* * Types are shared (to save memory for the types itself) and accessed @@ -81,32 +81,32 @@ typedef struct thtab { unsigned short th_idx; struct thtab *th_next; } thtab_t; -static thtab_t *thtab[1009]; /* hash table */ -type_t **tlst; /* array for indexed access */ -static size_t tlstlen; /* length of tlst */ +static thtab_t *thtab[1009]; /* hash table */ +type_t **tlst; /* array for indexed access */ +static size_t tlstlen; /* length of tlst */ -static hte_t **renametab; +static hte_t **renametab; /* index of current C source file (as specified at the command line) */ -static int csrcfile; +static int csrcfile; -static const char *readfile_line; +static const char *readfile_line; -static void inperr(const char *, ...) +static void inperr(const char *, ...) __printflike(1, 2) __attribute__((noreturn)); -static void setsrc(const char *); -static void setfnid(int, const char *); -static void funccall(pos_t, const char *); -static void decldef(pos_t, const char *); -static void usedsym(pos_t, const char *); -static unsigned short inptype(const char *, const char **); -static size_t gettlen(const char *, const char **); -static unsigned short findtype(const char *, size_t, int); -static unsigned short storetyp(type_t *, const char *, size_t, int); -static unsigned int thash(const char *, size_t); -static char *inpqstrg(const char *, const char **); -static const char *inpname(const char *, const char **); -static int getfnidx(const char *); +static void setsrc(const char *); +static void setfnid(int, const char *); +static void funccall(pos_t, const char *); +static void decldef(pos_t, const char *); +static void usedsym(pos_t, const char *); +static unsigned short inptype(const char *, const char **); +static size_t gettlen(const char *, const char **); +static unsigned short findtype(const char *, size_t, int); +static unsigned short storetyp(type_t *, const char *, size_t, int); +static unsigned int thash(const char *, size_t); +static char *inpqstrg(const char *, const char **); +static const char *inpname(const char *, const char **); +static int getfnidx(const char *); /* Allocate zero-initialized memory that doesn't need to be freed. */ static void * Index: src/usr.bin/xlint/xlint/xlint.c diff -u src/usr.bin/xlint/xlint/xlint.c:1.119 src/usr.bin/xlint/xlint/xlint.c:1.120 --- src/usr.bin/xlint/xlint/xlint.c:1.119 Sun Dec 3 13:12:40 2023 +++ src/usr.bin/xlint/xlint/xlint.c Sun Dec 3 18:17:41 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: xlint.c,v 1.119 2023/12/03 13:12:40 rillig Exp $ */ +/* $NetBSD: xlint.c,v 1.120 2023/12/03 18:17:41 rillig Exp $ */ /* * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. @@ -38,7 +38,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: xlint.c,v 1.119 2023/12/03 13:12:40 rillig Exp $"); +__RCSID("$NetBSD: xlint.c,v 1.120 2023/12/03 18:17:41 rillig Exp $"); #endif #include <sys/param.h> @@ -103,7 +103,7 @@ static bool seen_filename; * name of a file which is currently written by a child and should * be removed after abnormal termination of the child */ -static const char *currfn; +static const char *currfn; #if !defined(TARGET_PREFIX) #define TARGET_PREFIX ""