Module Name: src
Committed By: rillig
Date: Sat Oct 1 10:04:06 UTC 2022
Modified Files:
src/tests/usr.bin/xlint/lint2: emit.ln msg_001.ln
src/usr.bin/xlint/lint1: decl.c lex.c tree.c
Log Message:
lint: miscellaneous cleanup
No functional change.
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/usr.bin/xlint/lint2/emit.ln
cvs rdiff -u -r1.4 -r1.5 src/tests/usr.bin/xlint/lint2/msg_001.ln
cvs rdiff -u -r1.301 -r1.302 src/usr.bin/xlint/lint1/decl.c
cvs rdiff -u -r1.133 -r1.134 src/usr.bin/xlint/lint1/lex.c
cvs rdiff -u -r1.481 -r1.482 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/tests/usr.bin/xlint/lint2/emit.ln
diff -u src/tests/usr.bin/xlint/lint2/emit.ln:1.5 src/tests/usr.bin/xlint/lint2/emit.ln:1.6
--- src/tests/usr.bin/xlint/lint2/emit.ln:1.5 Sat Jan 15 17:33:42 2022
+++ src/tests/usr.bin/xlint/lint2/emit.ln Sat Oct 1 10:04:06 2022
@@ -1,4 +1,4 @@
-# $NetBSD: emit.ln,v 1.5 2022/01/15 17:33:42 rillig Exp $
+# $NetBSD: emit.ln,v 1.6 2022/10/01 10:04:06 rillig Exp $
#
# Test emitting a lint library file.
@@ -25,8 +25,8 @@ S emit.c
122 d 0.122 e 38return_implicit_int_unknown_parameters F I
125 d 0.125 e 32extern_return_void_no_parameters F0 V
-# Function calls are not part of a library's interface, therefore they are
-# omitted from the output.
+# Function calls are written as 'c'. They are not part of a library's
+# interface, therefore they are omitted from the output.
161 c 0.161 s2"%" i 9my_printf f2 PcC PC V
# Function definitions are copied to the output.
Index: src/tests/usr.bin/xlint/lint2/msg_001.ln
diff -u src/tests/usr.bin/xlint/lint2/msg_001.ln:1.4 src/tests/usr.bin/xlint/lint2/msg_001.ln:1.5
--- src/tests/usr.bin/xlint/lint2/msg_001.ln:1.4 Tue Aug 24 23:38:51 2021
+++ src/tests/usr.bin/xlint/lint2/msg_001.ln Sat Oct 1 10:04:06 2022
@@ -1,4 +1,4 @@
-# $NetBSD: msg_001.ln,v 1.4 2021/08/24 23:38:51 rillig Exp $
+# $NetBSD: msg_001.ln,v 1.5 2022/10/01 10:04:06 rillig Exp $
#
# Test data for message 1 of lint2:
# %s defined( %s ), but never used
@@ -16,7 +16,7 @@ S msg_001.c
# extern main() {}
12 d 0.12 e 4main F I
-# If a function is declared once in old style and once with prototype,
+# If a function is declared once in old-style and once with prototype,
# the prototype definition is preferred; see chkname.
#
# extern merge_old_style_and_prototype();
Index: src/usr.bin/xlint/lint1/decl.c
diff -u src/usr.bin/xlint/lint1/decl.c:1.301 src/usr.bin/xlint/lint1/decl.c:1.302
--- src/usr.bin/xlint/lint1/decl.c:1.301 Sat Oct 1 09:59:40 2022
+++ src/usr.bin/xlint/lint1/decl.c Sat Oct 1 10:04:06 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: decl.c,v 1.301 2022/10/01 09:59:40 rillig Exp $ */
+/* $NetBSD: decl.c,v 1.302 2022/10/01 10:04:06 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.301 2022/10/01 09:59:40 rillig Exp $");
+__RCSID("$NetBSD: decl.c,v 1.302 2022/10/01 10:04:06 rillig Exp $");
#endif
#include <sys/param.h>
@@ -252,8 +252,8 @@ dcs_add_storage_class(scl_t sc)
* dcs_end_type to build the type used for all declarators in this
* declaration.
*
- * If tp->t_typedef is 1, the type comes from a previously defined typename.
- * Otherwise it comes from a type specifier (int, long, ...) or a
+ * If tp->t_typedef is true, the type comes from a previously defined
+ * typename. Otherwise, it comes from a type specifier (int, long, ...) or a
* struct/union/enum tag.
*/
void
@@ -596,6 +596,7 @@ end_declaration_level(void)
lint_assert(dcs->d_enclosing != NULL);
di = dcs;
dcs = di->d_enclosing;
+
switch (di->d_kind) {
case DK_MOS:
case DK_MOU:
@@ -642,7 +643,7 @@ end_declaration_level(void)
rmsyms(di->d_dlsyms);
break;
case DK_EXTERN:
- /* there is nothing after external declarations */
+ /* there is nothing around an external declarations */
/* FALLTHROUGH */
default:
lint_assert(/*CONSTCOND*/false);
@@ -1862,11 +1863,11 @@ complete_tag_struct_or_union(type_t *tp,
}
type_t *
-complete_tag_enum(type_t *tp, sym_t *fmem)
+complete_tag_enum(type_t *tp, sym_t *first_enumerator)
{
tp->t_enum->en_incomplete = false;
- tp->t_enum->en_first_enumerator = fmem;
+ tp->t_enum->en_first_enumerator = first_enumerator;
return tp;
}
@@ -2974,11 +2975,11 @@ mark_as_used(sym_t *sym, bool fcall, boo
UNIQUE_CURR_POS(sym->s_use_pos);
}
/*
- * for function calls another record is written
+ * For function calls, another record is written.
*
- * XXX Should symbols used in sizeof() be treated as used or not?
- * Probably not, because there is no sense to declare an
- * external variable only to get their size.
+ * XXX: Should symbols used in sizeof() be treated as used or not?
+ * Probably not, because there is no point in declaring an external
+ * variable only to get its size.
*/
if (!fcall && !szof && sym->s_kind == FVFT && sym->s_scl == EXTERN)
outusg(sym);
Index: src/usr.bin/xlint/lint1/lex.c
diff -u src/usr.bin/xlint/lint1/lex.c:1.133 src/usr.bin/xlint/lint1/lex.c:1.134
--- src/usr.bin/xlint/lint1/lex.c:1.133 Thu Aug 25 19:03:47 2022
+++ src/usr.bin/xlint/lint1/lex.c Sat Oct 1 10:04:06 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: lex.c,v 1.133 2022/08/25 19:03:47 rillig Exp $ */
+/* $NetBSD: lex.c,v 1.134 2022/10/01 10:04:06 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.133 2022/08/25 19:03:47 rillig Exp $");
+__RCSID("$NetBSD: lex.c,v 1.134 2022/10/01 10:04:06 rillig Exp $");
#endif
#include <ctype.h>
@@ -636,18 +636,17 @@ lex_integer_constant(const char *yytext,
/*
* Extend or truncate q to match t. If t is signed, sign-extend.
*
- * len is the number of significant bits. If len is -1, len is set
+ * len is the number of significant bits. If len is 0, len is set
* to the width of type t.
*/
int64_t
convert_integer(int64_t q, tspec_t t, unsigned int len)
{
- uint64_t vbits;
if (len == 0)
len = size_in_bits(t);
- vbits = value_bits(len);
+ uint64_t vbits = value_bits(len);
return t == PTR || is_uinteger(t) || ((q & bit(len - 1)) == 0)
? (int64_t)(q & vbits)
: (int64_t)(q | ~vbits);
@@ -710,8 +709,8 @@ lex_floating_constant(const char *yytext
errno = 0;
break;
default:
- INTERNAL_ERROR("lex_floating_constant(%s->%s)",
- cp, eptr);
+ INTERNAL_ERROR("lex_floating_constant(%.*s)",
+ (int)(eptr - cp), cp);
}
}
if (errno != 0)
@@ -729,11 +728,10 @@ lex_floating_constant(const char *yytext
yylval.y_val = xcalloc(1, sizeof(*yylval.y_val));
yylval.y_val->v_tspec = typ;
- if (typ == FLOAT) {
+ if (typ == FLOAT)
yylval.y_val->v_ldbl = f;
- } else {
+ else
yylval.y_val->v_ldbl = d;
- }
return T_CON;
}
@@ -863,7 +861,7 @@ get_escaped_char(int delim)
return -2;
}
return c;
- case 0:
+ case '\0':
/* syntax error '%s' */
error(249, "EOF or null byte in literal");
return -2;
Index: src/usr.bin/xlint/lint1/tree.c
diff -u src/usr.bin/xlint/lint1/tree.c:1.481 src/usr.bin/xlint/lint1/tree.c:1.482
--- src/usr.bin/xlint/lint1/tree.c:1.481 Sat Oct 1 09:42:40 2022
+++ src/usr.bin/xlint/lint1/tree.c Sat Oct 1 10:04:06 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: tree.c,v 1.481 2022/10/01 09:42:40 rillig Exp $ */
+/* $NetBSD: tree.c,v 1.482 2022/10/01 10:04:06 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.481 2022/10/01 09:42:40 rillig Exp $");
+__RCSID("$NetBSD: tree.c,v 1.482 2022/10/01 10:04:06 rillig Exp $");
#endif
#include <float.h>
@@ -3357,6 +3357,7 @@ build_colon(bool sys, tnode_t *ln, tnode
return ntn;
}
+/* TODO: check for varargs */
static bool
is_cast_redundant(const tnode_t *tn)
{