Module Name:    src
Committed By:   rillig
Date:           Fri Jul  7 19:45:23 UTC 2023

Modified Files:
        src/tests/usr.bin/xlint/lint1: c11_atomic.c c11_generic_expression.c
            c99_bool_strict_suppressed.c d_alignof.c
            d_c99_compound_literal_comma.c d_c99_decls_after_stmt.c
            d_c99_union_cast.c d_cast_fun_array_param.c d_compound_literals1.c
            d_ellipsis_in_switch.c d_fold_test.c d_gcc_compound_statements2.c
            d_gcc_func.c d_gcc_variable_array_init.c d_init_pop_member.c
            d_long_double_int.c d_pr_22119.c d_return_type.c expr_cast.c
            gcc_attribute_aligned.c gcc_builtin_alloca.c gcc_builtin_overflow.c
            gcc_cast_union.c gcc_stmt_asm.c gcc_typeof_after_statement.c
            init_braces.c msg_003.c msg_011.c msg_012.c msg_021.c msg_023.c
            msg_028.c msg_030.c msg_032.c msg_043.c msg_050.c msg_052.c
            msg_053.c msg_057.c msg_059.c msg_062.c msg_063.c msg_072.c
            msg_084.c msg_092.c msg_093.c msg_094.c msg_096.c msg_099.c
            msg_103.c msg_104.c msg_106.c msg_107.c msg_108.c msg_109.c
            msg_110.c msg_113.c msg_114.c msg_116.c msg_117.c msg_118.c
            msg_119.c msg_120.c msg_121.c msg_122.c msg_125.c msg_126.c
            msg_128.c msg_132_lp64.c msg_133.c msg_136.c msg_138.c msg_143.c
            msg_144.c msg_145.c msg_146.c msg_149.c msg_159.c msg_163.c
            msg_164.c msg_165.c msg_166.c msg_167.c msg_170.c msg_171.c
            msg_174.c msg_182.c msg_183.c msg_184.c msg_191.c msg_192.c
            msg_194.c msg_195.c msg_200.c msg_201.c msg_202.c msg_205.c
            msg_206.c msg_209.c msg_211.c msg_213.c msg_214.c msg_215.c
            msg_216.c msg_217.c msg_223.c msg_224.c msg_225.c msg_228.c
            msg_229.c msg_230.c msg_231.c msg_232.c msg_236.c msg_237.c
            msg_239.c msg_240.c msg_244.c msg_246.c msg_261.c msg_267.c
            msg_268.c msg_274.c msg_275.c msg_280.c msg_281.c msg_283.c
            msg_288.c msg_289.c msg_290.c msg_293.c msg_299.c msg_300.c
            msg_302.c msg_306.c msg_307.c msg_309.c msg_310.c msg_311.c
            msg_314.c msg_317.c msg_318.c msg_320.c msg_324.c msg_328.c
            msg_329.c msg_333.c msg_335.c msg_340.c msg_345.c msg_350.c
            msg_351.c msg_352.c msg_353.c stmt_for.c stmt_goto.c
        src/tests/usr.bin/xlint/xlint: t_xlint.sh
        src/usr.bin/xlint/lint1: cgram.y decl.c externs1.h

Log Message:
lint: warn about function definitions without header declaration

The existing warning was only issued for function declarations, not for
function definitions.

The interesting change in the tests is in msg_351.c.  Many other tests
use non-static functions due to their syntactic brevity.  In these
tests, the warning is disabled individually, to allow new functions to
be added without generating warning 351.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/usr.bin/xlint/lint1/c11_atomic.c \
    src/tests/usr.bin/xlint/lint1/d_compound_literals1.c \
    src/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c \
    src/tests/usr.bin/xlint/lint1/d_pr_22119.c \
    src/tests/usr.bin/xlint/lint1/gcc_stmt_asm.c \
    src/tests/usr.bin/xlint/lint1/msg_012.c \
    src/tests/usr.bin/xlint/lint1/msg_021.c \
    src/tests/usr.bin/xlint/lint1/msg_023.c \
    src/tests/usr.bin/xlint/lint1/msg_028.c \
    src/tests/usr.bin/xlint/lint1/msg_043.c \
    src/tests/usr.bin/xlint/lint1/msg_052.c \
    src/tests/usr.bin/xlint/lint1/msg_059.c \
    src/tests/usr.bin/xlint/lint1/msg_084.c \
    src/tests/usr.bin/xlint/lint1/msg_103.c \
    src/tests/usr.bin/xlint/lint1/msg_104.c \
    src/tests/usr.bin/xlint/lint1/msg_113.c \
    src/tests/usr.bin/xlint/lint1/msg_125.c \
    src/tests/usr.bin/xlint/lint1/msg_133.c \
    src/tests/usr.bin/xlint/lint1/msg_136.c \
    src/tests/usr.bin/xlint/lint1/msg_143.c \
    src/tests/usr.bin/xlint/lint1/msg_145.c \
    src/tests/usr.bin/xlint/lint1/msg_146.c \
    src/tests/usr.bin/xlint/lint1/msg_149.c \
    src/tests/usr.bin/xlint/lint1/msg_163.c \
    src/tests/usr.bin/xlint/lint1/msg_166.c \
    src/tests/usr.bin/xlint/lint1/msg_167.c \
    src/tests/usr.bin/xlint/lint1/msg_183.c \
    src/tests/usr.bin/xlint/lint1/msg_191.c \
    src/tests/usr.bin/xlint/lint1/msg_192.c \
    src/tests/usr.bin/xlint/lint1/msg_194.c \
    src/tests/usr.bin/xlint/lint1/msg_213.c \
    src/tests/usr.bin/xlint/lint1/msg_214.c \
    src/tests/usr.bin/xlint/lint1/msg_224.c \
    src/tests/usr.bin/xlint/lint1/msg_225.c \
    src/tests/usr.bin/xlint/lint1/msg_231.c \
    src/tests/usr.bin/xlint/lint1/msg_236.c \
    src/tests/usr.bin/xlint/lint1/msg_246.c \
    src/tests/usr.bin/xlint/lint1/msg_268.c \
    src/tests/usr.bin/xlint/lint1/msg_281.c \
    src/tests/usr.bin/xlint/lint1/msg_289.c \
    src/tests/usr.bin/xlint/lint1/msg_290.c \
    src/tests/usr.bin/xlint/lint1/msg_299.c \
    src/tests/usr.bin/xlint/lint1/msg_300.c \
    src/tests/usr.bin/xlint/lint1/msg_306.c \
    src/tests/usr.bin/xlint/lint1/msg_307.c \
    src/tests/usr.bin/xlint/lint1/msg_314.c \
    src/tests/usr.bin/xlint/lint1/msg_317.c \
    src/tests/usr.bin/xlint/lint1/msg_329.c \
    src/tests/usr.bin/xlint/lint1/msg_340.c
cvs rdiff -u -r1.16 -r1.17 \
    src/tests/usr.bin/xlint/lint1/c11_generic_expression.c
cvs rdiff -u -r1.5 -r1.6 \
    src/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c \
    src/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c \
    src/tests/usr.bin/xlint/lint1/d_fold_test.c \
    src/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c \
    src/tests/usr.bin/xlint/lint1/d_long_double_int.c \
    src/tests/usr.bin/xlint/lint1/d_return_type.c \
    src/tests/usr.bin/xlint/lint1/gcc_attribute_aligned.c \
    src/tests/usr.bin/xlint/lint1/gcc_typeof_after_statement.c \
    src/tests/usr.bin/xlint/lint1/msg_003.c \
    src/tests/usr.bin/xlint/lint1/msg_050.c \
    src/tests/usr.bin/xlint/lint1/msg_092.c \
    src/tests/usr.bin/xlint/lint1/msg_093.c \
    src/tests/usr.bin/xlint/lint1/msg_094.c \
    src/tests/usr.bin/xlint/lint1/msg_099.c \
    src/tests/usr.bin/xlint/lint1/msg_107.c \
    src/tests/usr.bin/xlint/lint1/msg_109.c \
    src/tests/usr.bin/xlint/lint1/msg_116.c \
    src/tests/usr.bin/xlint/lint1/msg_122.c \
    src/tests/usr.bin/xlint/lint1/msg_138.c \
    src/tests/usr.bin/xlint/lint1/msg_144.c \
    src/tests/usr.bin/xlint/lint1/msg_164.c \
    src/tests/usr.bin/xlint/lint1/msg_165.c \
    src/tests/usr.bin/xlint/lint1/msg_170.c \
    src/tests/usr.bin/xlint/lint1/msg_174.c \
    src/tests/usr.bin/xlint/lint1/msg_182.c \
    src/tests/usr.bin/xlint/lint1/msg_184.c \
    src/tests/usr.bin/xlint/lint1/msg_211.c \
    src/tests/usr.bin/xlint/lint1/msg_240.c \
    src/tests/usr.bin/xlint/lint1/msg_261.c \
    src/tests/usr.bin/xlint/lint1/msg_275.c \
    src/tests/usr.bin/xlint/lint1/msg_283.c
cvs rdiff -u -r1.11 -r1.12 src/tests/usr.bin/xlint/lint1/d_alignof.c \
    src/tests/usr.bin/xlint/lint1/msg_217.c
cvs rdiff -u -r1.3 -r1.4 \
    src/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c \
    src/tests/usr.bin/xlint/lint1/d_cast_fun_array_param.c \
    src/tests/usr.bin/xlint/lint1/d_gcc_func.c \
    src/tests/usr.bin/xlint/lint1/d_gcc_variable_array_init.c \
    src/tests/usr.bin/xlint/lint1/expr_cast.c \
    src/tests/usr.bin/xlint/lint1/gcc_builtin_alloca.c \
    src/tests/usr.bin/xlint/lint1/gcc_cast_union.c \
    src/tests/usr.bin/xlint/lint1/msg_063.c \
    src/tests/usr.bin/xlint/lint1/msg_106.c \
    src/tests/usr.bin/xlint/lint1/msg_110.c \
    src/tests/usr.bin/xlint/lint1/msg_119.c \
    src/tests/usr.bin/xlint/lint1/msg_195.c \
    src/tests/usr.bin/xlint/lint1/msg_200.c \
    src/tests/usr.bin/xlint/lint1/msg_201.c \
    src/tests/usr.bin/xlint/lint1/msg_202.c \
    src/tests/usr.bin/xlint/lint1/msg_205.c \
    src/tests/usr.bin/xlint/lint1/msg_209.c \
    src/tests/usr.bin/xlint/lint1/msg_223.c \
    src/tests/usr.bin/xlint/lint1/msg_228.c \
    src/tests/usr.bin/xlint/lint1/msg_237.c \
    src/tests/usr.bin/xlint/lint1/msg_244.c \
    src/tests/usr.bin/xlint/lint1/msg_274.c \
    src/tests/usr.bin/xlint/lint1/msg_288.c \
    src/tests/usr.bin/xlint/lint1/msg_293.c \
    src/tests/usr.bin/xlint/lint1/msg_310.c \
    src/tests/usr.bin/xlint/lint1/msg_311.c \
    src/tests/usr.bin/xlint/lint1/msg_318.c \
    src/tests/usr.bin/xlint/lint1/msg_320.c \
    src/tests/usr.bin/xlint/lint1/msg_328.c \
    src/tests/usr.bin/xlint/lint1/msg_345.c \
    src/tests/usr.bin/xlint/lint1/stmt_for.c
cvs rdiff -u -r1.7 -r1.8 src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c \
    src/tests/usr.bin/xlint/lint1/init_braces.c \
    src/tests/usr.bin/xlint/lint1/msg_072.c \
    src/tests/usr.bin/xlint/lint1/msg_302.c
cvs rdiff -u -r1.9 -r1.10 src/tests/usr.bin/xlint/lint1/d_init_pop_member.c
cvs rdiff -u -r1.2 -r1.3 src/tests/usr.bin/xlint/lint1/gcc_builtin_overflow.c \
    src/tests/usr.bin/xlint/lint1/msg_335.c \
    src/tests/usr.bin/xlint/lint1/msg_350.c \
    src/tests/usr.bin/xlint/lint1/msg_353.c \
    src/tests/usr.bin/xlint/lint1/stmt_goto.c
cvs rdiff -u -r1.6 -r1.7 src/tests/usr.bin/xlint/lint1/msg_011.c \
    src/tests/usr.bin/xlint/lint1/msg_030.c \
    src/tests/usr.bin/xlint/lint1/msg_032.c \
    src/tests/usr.bin/xlint/lint1/msg_053.c \
    src/tests/usr.bin/xlint/lint1/msg_057.c \
    src/tests/usr.bin/xlint/lint1/msg_062.c \
    src/tests/usr.bin/xlint/lint1/msg_096.c \
    src/tests/usr.bin/xlint/lint1/msg_114.c \
    src/tests/usr.bin/xlint/lint1/msg_118.c \
    src/tests/usr.bin/xlint/lint1/msg_120.c \
    src/tests/usr.bin/xlint/lint1/msg_121.c \
    src/tests/usr.bin/xlint/lint1/msg_126.c \
    src/tests/usr.bin/xlint/lint1/msg_128.c \
    src/tests/usr.bin/xlint/lint1/msg_159.c \
    src/tests/usr.bin/xlint/lint1/msg_206.c \
    src/tests/usr.bin/xlint/lint1/msg_216.c \
    src/tests/usr.bin/xlint/lint1/msg_229.c \
    src/tests/usr.bin/xlint/lint1/msg_232.c \
    src/tests/usr.bin/xlint/lint1/msg_239.c \
    src/tests/usr.bin/xlint/lint1/msg_267.c \
    src/tests/usr.bin/xlint/lint1/msg_280.c \
    src/tests/usr.bin/xlint/lint1/msg_309.c \
    src/tests/usr.bin/xlint/lint1/msg_333.c \
    src/tests/usr.bin/xlint/lint1/msg_351.c
cvs rdiff -u -r1.8 -r1.9 src/tests/usr.bin/xlint/lint1/msg_108.c \
    src/tests/usr.bin/xlint/lint1/msg_171.c \
    src/tests/usr.bin/xlint/lint1/msg_324.c
cvs rdiff -u -r1.13 -r1.14 src/tests/usr.bin/xlint/lint1/msg_117.c \
    src/tests/usr.bin/xlint/lint1/msg_230.c
cvs rdiff -u -r1.1 -r1.2 src/tests/usr.bin/xlint/lint1/msg_132_lp64.c \
    src/tests/usr.bin/xlint/lint1/msg_352.c
cvs rdiff -u -r1.12 -r1.13 src/tests/usr.bin/xlint/lint1/msg_215.c
cvs rdiff -u -r1.2 -r1.3 src/tests/usr.bin/xlint/xlint/t_xlint.sh
cvs rdiff -u -r1.446 -r1.447 src/usr.bin/xlint/lint1/cgram.y
cvs rdiff -u -r1.342 -r1.343 src/usr.bin/xlint/lint1/decl.c
cvs rdiff -u -r1.189 -r1.190 src/usr.bin/xlint/lint1/externs1.h

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/lint1/c11_atomic.c
diff -u src/tests/usr.bin/xlint/lint1/c11_atomic.c:1.4 src/tests/usr.bin/xlint/lint1/c11_atomic.c:1.5
--- src/tests/usr.bin/xlint/lint1/c11_atomic.c:1.4	Fri Jul  7 00:20:39 2023
+++ src/tests/usr.bin/xlint/lint1/c11_atomic.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: c11_atomic.c,v 1.4 2023/07/07 00:20:39 rillig Exp $	*/
+/*	$NetBSD: c11_atomic.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "c11_atomic.c"
 
 /*
@@ -11,7 +11,7 @@
  *	msg_350.c
  */
 
-/* lint1-extra-flags: -Ac11 */
+/* lint1-extra-flags: -Ac11 -X 351 */
 
 /* C11 6.7.3 "Type qualifiers" */
 typedef _Atomic int atomic_int;
Index: src/tests/usr.bin/xlint/lint1/d_compound_literals1.c
diff -u src/tests/usr.bin/xlint/lint1/d_compound_literals1.c:1.4 src/tests/usr.bin/xlint/lint1/d_compound_literals1.c:1.5
--- src/tests/usr.bin/xlint/lint1/d_compound_literals1.c:1.4	Sun Apr 24 20:08:23 2022
+++ src/tests/usr.bin/xlint/lint1/d_compound_literals1.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: d_compound_literals1.c,v 1.4 2022/04/24 20:08:23 rillig Exp $	*/
+/*	$NetBSD: d_compound_literals1.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_compound_literals1.c"
 
 /* compound literals */
 
+/* lint1-extra-flags: -X 351 */
+
 struct p {
 	short a, b, c, d;
 };
Index: src/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c
diff -u src/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c:1.4 src/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c:1.5
--- src/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c:1.4	Sat Mar 27 13:59:18 2021
+++ src/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: d_ellipsis_in_switch.c,v 1.4 2021/03/27 13:59:18 rillig Exp $	*/
+/*	$NetBSD: d_ellipsis_in_switch.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_ellipsis_in_switch.c"
 
 /* Using a range in a case label is a GCC extension. */
 
+/* lint1-extra-flags: -X 351 */
+
 int
 x(void)
 {
Index: src/tests/usr.bin/xlint/lint1/d_pr_22119.c
diff -u src/tests/usr.bin/xlint/lint1/d_pr_22119.c:1.4 src/tests/usr.bin/xlint/lint1/d_pr_22119.c:1.5
--- src/tests/usr.bin/xlint/lint1/d_pr_22119.c:1.4	Fri Apr  1 22:28:21 2022
+++ src/tests/usr.bin/xlint/lint1/d_pr_22119.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: d_pr_22119.c,v 1.4 2022/04/01 22:28:21 rillig Exp $	*/
+/*	$NetBSD: d_pr_22119.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_pr_22119.c"
 
 /*
@@ -8,6 +8,8 @@
  * cast is NULL.
 */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 func1(void)
 {
Index: src/tests/usr.bin/xlint/lint1/gcc_stmt_asm.c
diff -u src/tests/usr.bin/xlint/lint1/gcc_stmt_asm.c:1.4 src/tests/usr.bin/xlint/lint1/gcc_stmt_asm.c:1.5
--- src/tests/usr.bin/xlint/lint1/gcc_stmt_asm.c:1.4	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/gcc_stmt_asm.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,12 @@
-/*	$NetBSD: gcc_stmt_asm.c,v 1.4 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: gcc_stmt_asm.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "gcc_stmt_asm.c"
 
 /*
  * Tests for the GCC 'asm' statement.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 function(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_012.c
diff -u src/tests/usr.bin/xlint/lint1/msg_012.c:1.4 src/tests/usr.bin/xlint/lint1/msg_012.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_012.c:1.4	Fri Apr  1 23:16:32 2022
+++ src/tests/usr.bin/xlint/lint1/msg_012.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,11 @@
-/*	$NetBSD: msg_012.c,v 1.4 2022/04/01 23:16:32 rillig Exp $	*/
+/*	$NetBSD: msg_012.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_012.c"
 
 // Test for message: compiler takes size of function [12]
 /* This message is not used. */
 
+/* lint1-extra-flags: -X 351 */
+
 unsigned long
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_021.c
diff -u src/tests/usr.bin/xlint/lint1/msg_021.c:1.4 src/tests/usr.bin/xlint/lint1/msg_021.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_021.c:1.4	Mon Jun 20 21:13:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_021.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,12 @@
-/*	$NetBSD: msg_021.c,v 1.4 2022/06/20 21:13:36 rillig Exp $	*/
+/*	$NetBSD: msg_021.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_021.c"
 
 // Test for message: redeclaration of formal parameter '%s' [21]
 
 /* See also message 237, which has the same text. */
 
+/* lint1-extra-flags: -X 351 */
+
 /*ARGSUSED*/
 void
 /* expect+1: error: redeclaration of formal parameter 'parameter' [21] */
Index: src/tests/usr.bin/xlint/lint1/msg_023.c
diff -u src/tests/usr.bin/xlint/lint1/msg_023.c:1.4 src/tests/usr.bin/xlint/lint1/msg_023.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_023.c:1.4	Sun Jul 11 19:30:56 2021
+++ src/tests/usr.bin/xlint/lint1/msg_023.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_023.c,v 1.4 2021/07/11 19:30:56 rillig Exp $	*/
+/*	$NetBSD: msg_023.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_023.c"
 
 // Test for message: undefined label '%s' [23]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 test(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_028.c
diff -u src/tests/usr.bin/xlint/lint1/msg_028.c:1.4 src/tests/usr.bin/xlint/lint1/msg_028.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_028.c:1.4	Sun Jun 19 11:50:42 2022
+++ src/tests/usr.bin/xlint/lint1/msg_028.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_028.c,v 1.4 2022/06/19 11:50:42 rillig Exp $	*/
+/*	$NetBSD: msg_028.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_028.c"
 
 // Test for message: redefinition of '%s' [28]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 defined(int arg)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_043.c
diff -u src/tests/usr.bin/xlint/lint1/msg_043.c:1.4 src/tests/usr.bin/xlint/lint1/msg_043.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_043.c:1.4	Mon Jun 20 21:13:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_043.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_043.c,v 1.4 2022/06/20 21:13:36 rillig Exp $	*/
+/*	$NetBSD: msg_043.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_043.c"
 
 /* Test for message: redefinition of '%s' hides earlier one [43] */
 
-/* lint1-extra-flags: -h */
+/* lint1-extra-flags: -h -X 351 */
 
 struct s {
 	int member;
Index: src/tests/usr.bin/xlint/lint1/msg_052.c
diff -u src/tests/usr.bin/xlint/lint1/msg_052.c:1.4 src/tests/usr.bin/xlint/lint1/msg_052.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_052.c:1.4	Mon Jun 20 21:13:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_052.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_052.c,v 1.4 2022/06/20 21:13:36 rillig Exp $	*/
+/*	$NetBSD: msg_052.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_052.c"
 
 // Test for message: cannot initialize parameter '%s' [52]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 definition(i)
 	/* expect+1: error: cannot initialize parameter 'i' [52] */
Index: src/tests/usr.bin/xlint/lint1/msg_059.c
diff -u src/tests/usr.bin/xlint/lint1/msg_059.c:1.4 src/tests/usr.bin/xlint/lint1/msg_059.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_059.c:1.4	Mon Jun 20 21:13:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_059.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_059.c,v 1.4 2022/06/20 21:13:36 rillig Exp $	*/
+/*	$NetBSD: msg_059.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_059.c"
 
 // Test for message: formal parameter #%d lacks name [59]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+4: error: formal parameter #2 lacks name [59] */
 /* expect+3: error: formal parameter #3 lacks name [59] */
 int
Index: src/tests/usr.bin/xlint/lint1/msg_084.c
diff -u src/tests/usr.bin/xlint/lint1/msg_084.c:1.4 src/tests/usr.bin/xlint/lint1/msg_084.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_084.c:1.4	Sat Apr 16 09:20:01 2022
+++ src/tests/usr.bin/xlint/lint1/msg_084.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_084.c,v 1.4 2022/04/16 09:20:01 rillig Exp $	*/
+/*	$NetBSD: msg_084.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_084.c"
 
 /* Test for message: ANSI C requires formal parameter before '...' [84] */
 
-/* lint1-flags: -sw */
+/* lint1-flags: -sw -X 351 */
 
 /* expect+2: error: ANSI C requires formal parameter before '...' [84] */
 void
Index: src/tests/usr.bin/xlint/lint1/msg_103.c
diff -u src/tests/usr.bin/xlint/lint1/msg_103.c:1.4 src/tests/usr.bin/xlint/lint1/msg_103.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_103.c:1.4	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_103.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_103.c,v 1.4 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_103.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_103.c"
 
 // Test for message: left operand of '.' must be struct or union, not '%s' [103]
 
+/* lint1-extra-flags: -X 351 */
+
 struct point {
 	int x, y;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_104.c
diff -u src/tests/usr.bin/xlint/lint1/msg_104.c:1.4 src/tests/usr.bin/xlint/lint1/msg_104.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_104.c:1.4	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_104.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_104.c,v 1.4 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_104.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_104.c"
 
 // Test for message: left operand of '->' must be pointer to struct or union, not '%s' [104]
 
+/* lint1-extra-flags: -X 351 */
+
 struct point {
 	int x, y;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_113.c
diff -u src/tests/usr.bin/xlint/lint1/msg_113.c:1.4 src/tests/usr.bin/xlint/lint1/msg_113.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_113.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_113.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_113.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_113.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_113.c"
 
 // Test for message: cannot take address of register '%s' [113]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 void
 example(register int arg)
Index: src/tests/usr.bin/xlint/lint1/msg_125.c
diff -u src/tests/usr.bin/xlint/lint1/msg_125.c:1.4 src/tests/usr.bin/xlint/lint1/msg_125.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_125.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_125.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_125.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_125.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_125.c"
 
 // Test for message: ANSI C forbids ordered comparisons of pointers to functions [125]
 
-/* lint1-extra-flags: -s */
+/* lint1-extra-flags: -s -X 351 */
 
 typedef void (*action)(void);
 
Index: src/tests/usr.bin/xlint/lint1/msg_133.c
diff -u src/tests/usr.bin/xlint/lint1/msg_133.c:1.4 src/tests/usr.bin/xlint/lint1/msg_133.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_133.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_133.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_133.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_133.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_133.c"
 
 // Test for message: conversion of pointer to '%s' loses bits [133]
 
+/* lint1-extra-flags: -X 351 */
+
 char
 to_char(void *ptr)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_136.c
diff -u src/tests/usr.bin/xlint/lint1/msg_136.c:1.4 src/tests/usr.bin/xlint/lint1/msg_136.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_136.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_136.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_136.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_136.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_136.c"
 
 // Test for message: cannot do pointer arithmetic on operand of unknown size [136]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: warning: struct 'incomplete' never defined [233] */
 struct incomplete;
 
Index: src/tests/usr.bin/xlint/lint1/msg_143.c
diff -u src/tests/usr.bin/xlint/lint1/msg_143.c:1.4 src/tests/usr.bin/xlint/lint1/msg_143.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_143.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_143.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_143.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_143.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_143.c"
 
 // Test for message: cannot take size/alignment of incomplete type [143]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: warning: struct 'incomplete' never defined [233] */
 struct incomplete;
 
Index: src/tests/usr.bin/xlint/lint1/msg_145.c
diff -u src/tests/usr.bin/xlint/lint1/msg_145.c:1.4 src/tests/usr.bin/xlint/lint1/msg_145.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_145.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_145.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_145.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_145.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_145.c"
 
 // Test for message: cannot take size/alignment of bit-field [145]
 
+/* lint1-extra-flags: -X 351 */
+
 struct bits {
 	unsigned one: 1;
 	unsigned eight: 8;
Index: src/tests/usr.bin/xlint/lint1/msg_146.c
diff -u src/tests/usr.bin/xlint/lint1/msg_146.c:1.4 src/tests/usr.bin/xlint/lint1/msg_146.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_146.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_146.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_146.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_146.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_146.c"
 
 // Test for message: cannot take size/alignment of void [146]
 
+/* lint1-extra-flags: -X 351 */
+
 unsigned long
 example(void *ptr)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_149.c
diff -u src/tests/usr.bin/xlint/lint1/msg_149.c:1.4 src/tests/usr.bin/xlint/lint1/msg_149.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_149.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_149.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_149.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_149.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_149.c"
 
 // Test for message: cannot call '%s', must be a function [149]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(int i)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_163.c
diff -u src/tests/usr.bin/xlint/lint1/msg_163.c:1.4 src/tests/usr.bin/xlint/lint1/msg_163.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_163.c:1.4	Sun Jul  4 12:24:39 2021
+++ src/tests/usr.bin/xlint/lint1/msg_163.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_163.c,v 1.4 2021/07/04 12:24:39 rillig Exp $	*/
+/*	$NetBSD: msg_163.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_163.c"
 
 // Test for message: a cast does not yield an lvalue [163]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(char *p, int i)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_166.c
diff -u src/tests/usr.bin/xlint/lint1/msg_166.c:1.4 src/tests/usr.bin/xlint/lint1/msg_166.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_166.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_166.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_166.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_166.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_166.c"
 
 // Test for message: precision lost in bit-field assignment [166]
 
-/* lint1-extra-flags: -hp */
+/* lint1-extra-flags: -hp -X 351 */
 
 struct bit_set {
 
Index: src/tests/usr.bin/xlint/lint1/msg_167.c
diff -u src/tests/usr.bin/xlint/lint1/msg_167.c:1.4 src/tests/usr.bin/xlint/lint1/msg_167.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_167.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_167.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_167.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_167.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_167.c"
 
 // Test for message: array subscript cannot be negative: %ld [167]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(int *ptr)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_183.c
diff -u src/tests/usr.bin/xlint/lint1/msg_183.c:1.4 src/tests/usr.bin/xlint/lint1/msg_183.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_183.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_183.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_183.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_183.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_183.c"
 
 // Test for message: illegal combination of %s '%s' and %s '%s' [183]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: warning: argument 'x' unused in function 'example' [231] */
 void *
 example(double x, int i, void *vp, int *ip, double *dp, void (*fp)(void))
Index: src/tests/usr.bin/xlint/lint1/msg_191.c
diff -u src/tests/usr.bin/xlint/lint1/msg_191.c:1.4 src/tests/usr.bin/xlint/lint1/msg_191.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_191.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_191.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_191.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_191.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_191.c"
 
 // Test for message: '%s' set but not used in function '%s' [191]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_192.c
diff -u src/tests/usr.bin/xlint/lint1/msg_192.c:1.4 src/tests/usr.bin/xlint/lint1/msg_192.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_192.c:1.4	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_192.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,12 @@
-/*	$NetBSD: msg_192.c,v 1.4 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_192.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_192.c"
 
 // Test for message: '%s' unused in function '%s' [192]
 
-/* ARGSUSED */
+/* lint1-extra-flags: -X 351 */
+
 void
+/* expect+1: warning: argument 'param' unused in function 'example' [231] */
 example(int param)
 {
 	/* expect+1: warning: 'local' unused in function 'example' [192] */
Index: src/tests/usr.bin/xlint/lint1/msg_194.c
diff -u src/tests/usr.bin/xlint/lint1/msg_194.c:1.4 src/tests/usr.bin/xlint/lint1/msg_194.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_194.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_194.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_194.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_194.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_194.c"
 
 // Test for message: label '%s' redefined [194]
 
+/* lint1-extra-flags: -X 351 */
+
 void example(void)
 {
 	int i = 0;
Index: src/tests/usr.bin/xlint/lint1/msg_213.c
diff -u src/tests/usr.bin/xlint/lint1/msg_213.c:1.4 src/tests/usr.bin/xlint/lint1/msg_213.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_213.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_213.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_213.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_213.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_213.c"
 
 // Test for message: void function '%s' cannot return value [213]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: warning: argument 'x' unused in function 'example' [231] */
 void
 example(int x)
Index: src/tests/usr.bin/xlint/lint1/msg_214.c
diff -u src/tests/usr.bin/xlint/lint1/msg_214.c:1.4 src/tests/usr.bin/xlint/lint1/msg_214.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_214.c:1.4	Tue Aug  3 18:44:33 2021
+++ src/tests/usr.bin/xlint/lint1/msg_214.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_214.c,v 1.4 2021/08/03 18:44:33 rillig Exp $	*/
+/*	$NetBSD: msg_214.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_214.c"
 
 // Test for message: function '%s' expects to return value [214]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 int_function(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_224.c
diff -u src/tests/usr.bin/xlint/lint1/msg_224.c:1.4 src/tests/usr.bin/xlint/lint1/msg_224.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_224.c:1.4	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_224.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_224.c,v 1.4 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_224.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_224.c"
 
 // Test for message: cannot recover from previous errors [224]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: error: syntax error 'error' [249] */
 void example1(void) { "syntax" error; }
 /* expect+1: error: syntax error 'error' [249] */
Index: src/tests/usr.bin/xlint/lint1/msg_225.c
diff -u src/tests/usr.bin/xlint/lint1/msg_225.c:1.4 src/tests/usr.bin/xlint/lint1/msg_225.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_225.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_225.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_225.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_225.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_225.c"
 
 // Test for message: static function '%s' called but not defined [225]
 
+/* lint1-extra-flags: -X 351 */
+
 static void undefined(void);
 
 static void defined_later(void);
Index: src/tests/usr.bin/xlint/lint1/msg_231.c
diff -u src/tests/usr.bin/xlint/lint1/msg_231.c:1.4 src/tests/usr.bin/xlint/lint1/msg_231.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_231.c:1.4	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_231.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_231.c,v 1.4 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_231.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_231.c"
 
 // Test for message: argument '%s' unused in function '%s' [231]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: warning: argument 'param' unused in function 'example' [231] */
 void
 example(int param)
Index: src/tests/usr.bin/xlint/lint1/msg_236.c
diff -u src/tests/usr.bin/xlint/lint1/msg_236.c:1.4 src/tests/usr.bin/xlint/lint1/msg_236.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_236.c:1.4	Sat Jun 11 11:52:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_236.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_236.c,v 1.4 2022/06/11 11:52:13 rillig Exp $	*/
+/*	$NetBSD: msg_236.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_236.c"
 
 // Test for message: static function '%s' unused [236]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 external_function(void)
 {
@@ -13,3 +15,8 @@ static void
 static_function(void)
 {
 }
+
+static inline void
+inline_function(void)
+{
+}
Index: src/tests/usr.bin/xlint/lint1/msg_246.c
diff -u src/tests/usr.bin/xlint/lint1/msg_246.c:1.4 src/tests/usr.bin/xlint/lint1/msg_246.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_246.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_246.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,11 @@
-/*	$NetBSD: msg_246.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_246.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_246.c"
 
 // Test for message: dubious conversion of enum to '%s' [246]
 // This message is not used.
 
+/* lint1-extra-flags: -X 351 */
+
 enum color {
 	RED, GREEN, BLUE
 };
Index: src/tests/usr.bin/xlint/lint1/msg_268.c
diff -u src/tests/usr.bin/xlint/lint1/msg_268.c:1.4 src/tests/usr.bin/xlint/lint1/msg_268.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_268.c:1.4	Sat Jun 11 11:52:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_268.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_268.c,v 1.4 2022/06/11 11:52:13 rillig Exp $	*/
+/*	$NetBSD: msg_268.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_268.c"
 
 // Test for message: variable '%s' declared inline [268]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 example(int arg)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_281.c
diff -u src/tests/usr.bin/xlint/lint1/msg_281.c:1.4 src/tests/usr.bin/xlint/lint1/msg_281.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_281.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_281.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_281.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_281.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_281.c"
 
 // Test for message: duplicate comment /* %s */ [281]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: warning: duplicate comment ** ARGSUSED ** [281] */
 /* ARGSUSED *//* ARGSUSED */
 void args_used(int x)
Index: src/tests/usr.bin/xlint/lint1/msg_289.c
diff -u src/tests/usr.bin/xlint/lint1/msg_289.c:1.4 src/tests/usr.bin/xlint/lint1/msg_289.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_289.c:1.4	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_289.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_289.c,v 1.4 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_289.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_289.c"
 
 // Test for message: can't be used together: /* PRINTFLIKE */ /* SCANFLIKE */ [289]
 
+/* lint1-extra-flags: -X 351 */
+
 /* PRINTFLIKE */ /* SCANFLIKE */
 void
 both(void)
Index: src/tests/usr.bin/xlint/lint1/msg_290.c
diff -u src/tests/usr.bin/xlint/lint1/msg_290.c:1.4 src/tests/usr.bin/xlint/lint1/msg_290.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_290.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_290.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_290.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_290.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_290.c"
 
 // Test for message: static function '%s' declared but not defined [290]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: warning: static function 'only_declared' declared but not defined [290] */
 static void only_declared(void);
 static void declared_and_called(void);
Index: src/tests/usr.bin/xlint/lint1/msg_299.c
diff -u src/tests/usr.bin/xlint/lint1/msg_299.c:1.4 src/tests/usr.bin/xlint/lint1/msg_299.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_299.c:1.4	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_299.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_299.c,v 1.4 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_299.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_299.c"
 
 /* Test for message: prototype does not match old-style definition, arg #%d [299] */
 
-/* lint1-flags: -w */
+/* lint1-flags: -w -X 351 */
 
 old_style(x)
 	double x;
Index: src/tests/usr.bin/xlint/lint1/msg_300.c
diff -u src/tests/usr.bin/xlint/lint1/msg_300.c:1.4 src/tests/usr.bin/xlint/lint1/msg_300.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_300.c:1.4	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_300.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_300.c,v 1.4 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_300.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_300.c"
 
 /* Test for message: old-style definition [300] */
 
-/* lint1-flags: -wr */
+/* lint1-flags: -wr -X 351 */
 
 /* expect+1: old-style definition [300] */
 old_style(x)
Index: src/tests/usr.bin/xlint/lint1/msg_306.c
diff -u src/tests/usr.bin/xlint/lint1/msg_306.c:1.4 src/tests/usr.bin/xlint/lint1/msg_306.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_306.c:1.4	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_306.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_306.c,v 1.4 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_306.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_306.c"
 
 // Test for message: constant truncated by conversion, op '%s' [306]
 
+/* lint1-extra-flags: -X 351 */
+
 unsigned char
 to_u8(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_307.c
diff -u src/tests/usr.bin/xlint/lint1/msg_307.c:1.4 src/tests/usr.bin/xlint/lint1/msg_307.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_307.c:1.4	Sat Jun 11 11:52:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_307.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_307.c,v 1.4 2022/06/11 11:52:13 rillig Exp $	*/
+/*	$NetBSD: msg_307.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_307.c"
 
 // Test for message: static variable '%s' set but not used [307]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: warning: static variable 'set_but_not_used' set but not used [307] */
 static int set_but_not_used;
 
Index: src/tests/usr.bin/xlint/lint1/msg_314.c
diff -u src/tests/usr.bin/xlint/lint1/msg_314.c:1.4 src/tests/usr.bin/xlint/lint1/msg_314.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_314.c:1.4	Sat Jun 11 11:52:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_314.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,11 @@
-/*	$NetBSD: msg_314.c,v 1.4 2022/06/11 11:52:13 rillig Exp $	*/
+/*	$NetBSD: msg_314.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_314.c"
 
 // Test for message: '%s' is not a structure or a union [314]
 /* This message is not used. */
 
+/* lint1-extra-flags: -X 351 */
+
 /*
  * Added in err.c 1.20 from 2002-10-21 when adding support for C99's
  * designated initializers, but never actually used.
Index: src/tests/usr.bin/xlint/lint1/msg_317.c
diff -u src/tests/usr.bin/xlint/lint1/msg_317.c:1.4 src/tests/usr.bin/xlint/lint1/msg_317.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_317.c:1.4	Sun Feb 27 12:00:27 2022
+++ src/tests/usr.bin/xlint/lint1/msg_317.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_317.c,v 1.4 2022/02/27 12:00:27 rillig Exp $	*/
+/*	$NetBSD: msg_317.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_317.c"
 
 /* Test for message: __func__ is a C99 feature [317] */
 
-/* lint1-flags: -sw */
+/* lint1-flags: -sw -X 351 */
 
 const char *
 function(void)
Index: src/tests/usr.bin/xlint/lint1/msg_329.c
diff -u src/tests/usr.bin/xlint/lint1/msg_329.c:1.4 src/tests/usr.bin/xlint/lint1/msg_329.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_329.c:1.4	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_329.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_329.c,v 1.4 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_329.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_329.c"
 
 // Test for message: type '%s' is not a member of '%s' [329]
 
+/* lint1-extra-flags: -X 351 */
+
 union u {
 	int i1;
 	int i2;
Index: src/tests/usr.bin/xlint/lint1/msg_340.c
diff -u src/tests/usr.bin/xlint/lint1/msg_340.c:1.4 src/tests/usr.bin/xlint/lint1/msg_340.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_340.c:1.4	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_340.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_340.c,v 1.4 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_340.c,v 1.5 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_340.c"
 
 // Test for message: initialization with '[a...b]' is a GCC extension [340]
@@ -7,7 +7,7 @@
  * In strict C mode, GCC extensions are flagged as such.
  */
 
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 int
 example(void)

Index: src/tests/usr.bin/xlint/lint1/c11_generic_expression.c
diff -u src/tests/usr.bin/xlint/lint1/c11_generic_expression.c:1.16 src/tests/usr.bin/xlint/lint1/c11_generic_expression.c:1.17
--- src/tests/usr.bin/xlint/lint1/c11_generic_expression.c:1.16	Fri Jul  7 00:20:39 2023
+++ src/tests/usr.bin/xlint/lint1/c11_generic_expression.c	Fri Jul  7 19:45:22 2023
@@ -1,6 +1,8 @@
-/*	$NetBSD: c11_generic_expression.c,v 1.16 2023/07/07 00:20:39 rillig Exp $	*/
+/*	$NetBSD: c11_generic_expression.c,v 1.17 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "c11_generic_expression.c"
 
+/* lint1-extra-flags: -X 351 */
+
 /*
  * C99 added support for type-generic macros, but these were limited to the
  * header <tgmath.h>.  C11 made this feature generally available.
@@ -101,7 +103,6 @@ primary_expression(void)
  * which is then silently ignored by init_expr.  This situation is already
  * covered by the compilers, so there is no need for lint to double-check it.
  */
-/* expect+1: warning: missing 'extern' header declaration for 'x' [351] */
 const char *x = _Generic(
     1ULL + 1.0f,
     int: 1

Index: src/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c
diff -u src/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c:1.5 src/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c:1.6
--- src/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c:1.5	Sun Jun 19 12:14:34 2022
+++ src/tests/usr.bin/xlint/lint1/c99_bool_strict_suppressed.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: c99_bool_strict_suppressed.c,v 1.5 2022/06/19 12:14:34 rillig Exp $	*/
+/*	$NetBSD: c99_bool_strict_suppressed.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "c99_bool_strict_suppressed.c"
 
 /*
@@ -18,7 +18,7 @@
  * tree.c 1.305 from 2021-07-04.
  */
 
-/* lint1-extra-flags: -T -X 107,330,331,332,333 */
+/* lint1-extra-flags: -T -X 107,330,331,332,333 -X 351 */
 
 /* ARGSUSED */
 void
Index: src/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c
diff -u src/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c:1.5 src/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c:1.6
--- src/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c:1.5	Sun Jan 22 17:17:25 2023
+++ src/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: d_c99_decls_after_stmt.c,v 1.5 2023/01/22 17:17:25 rillig Exp $	*/
+/*	$NetBSD: d_c99_decls_after_stmt.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_c99_decls_after_stmt.c"
 
 /*
@@ -8,6 +8,8 @@
  * https://gnats.netbsd.org/45417
  */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 two_groups_of_decl_plus_stmt(void)
 {
Index: src/tests/usr.bin/xlint/lint1/d_fold_test.c
diff -u src/tests/usr.bin/xlint/lint1/d_fold_test.c:1.5 src/tests/usr.bin/xlint/lint1/d_fold_test.c:1.6
--- src/tests/usr.bin/xlint/lint1/d_fold_test.c:1.5	Sat Jan 15 14:22:03 2022
+++ src/tests/usr.bin/xlint/lint1/d_fold_test.c	Fri Jul  7 19:45:22 2023
@@ -5,6 +5,8 @@
  * truthiness, such as in the condition of an if statement.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 struct s {
 	int member;
 };
Index: src/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c
diff -u src/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c:1.5 src/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c:1.6
--- src/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c:1.5	Sat Feb 26 20:36:11 2022
+++ src/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: d_gcc_compound_statements2.c,v 1.5 2022/02/26 20:36:11 rillig Exp $	*/
+/*	$NetBSD: d_gcc_compound_statements2.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_gcc_compound_statements2.c"
 
 /*
@@ -7,6 +7,8 @@
  * https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html
  */
 
+/* lint1-extra-flags: -X 351 */
+
 struct cpu_info {
 	int bar;
 };
Index: src/tests/usr.bin/xlint/lint1/d_long_double_int.c
diff -u src/tests/usr.bin/xlint/lint1/d_long_double_int.c:1.5 src/tests/usr.bin/xlint/lint1/d_long_double_int.c:1.6
--- src/tests/usr.bin/xlint/lint1/d_long_double_int.c:1.5	Sat Jan 15 14:22:03 2022
+++ src/tests/usr.bin/xlint/lint1/d_long_double_int.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: d_long_double_int.c,v 1.5 2022/01/15 14:22:03 rillig Exp $	*/
+/*	$NetBSD: d_long_double_int.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_long_double_int.c"
 
 /* PR bin/39639: writing "long double" gave "long int" */
 
+/* lint1-extra-flags: -X 351 */
+
 int
 fail(long double *a, long int *b)
 {
Index: src/tests/usr.bin/xlint/lint1/d_return_type.c
diff -u src/tests/usr.bin/xlint/lint1/d_return_type.c:1.5 src/tests/usr.bin/xlint/lint1/d_return_type.c:1.6
--- src/tests/usr.bin/xlint/lint1/d_return_type.c:1.5	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/d_return_type.c	Fri Jul  7 19:45:22 2023
@@ -1,6 +1,8 @@
-/*	$NetBSD: d_return_type.c,v 1.5 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: d_return_type.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_return_type.c"
 
+/* lint1-extra-flags: -X 351 */
+
 enum A {
 	A
 };
Index: src/tests/usr.bin/xlint/lint1/gcc_attribute_aligned.c
diff -u src/tests/usr.bin/xlint/lint1/gcc_attribute_aligned.c:1.5 src/tests/usr.bin/xlint/lint1/gcc_attribute_aligned.c:1.6
--- src/tests/usr.bin/xlint/lint1/gcc_attribute_aligned.c:1.5	Sat Aug 27 23:24:37 2022
+++ src/tests/usr.bin/xlint/lint1/gcc_attribute_aligned.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,12 @@
-/*	$NetBSD: gcc_attribute_aligned.c,v 1.5 2022/08/27 23:24:37 rillig Exp $	*/
+/*	$NetBSD: gcc_attribute_aligned.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "gcc_attribute_aligned.c"
 
 /*
  * Test size computations on aligned and packed structs.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 typedef unsigned short uint16_t;
 typedef unsigned int uint32_t;
 typedef unsigned long long uint64_t;
Index: src/tests/usr.bin/xlint/lint1/gcc_typeof_after_statement.c
diff -u src/tests/usr.bin/xlint/lint1/gcc_typeof_after_statement.c:1.5 src/tests/usr.bin/xlint/lint1/gcc_typeof_after_statement.c:1.6
--- src/tests/usr.bin/xlint/lint1/gcc_typeof_after_statement.c:1.5	Sun Feb  5 10:57:48 2023
+++ src/tests/usr.bin/xlint/lint1/gcc_typeof_after_statement.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: gcc_typeof_after_statement.c,v 1.5 2023/02/05 10:57:48 rillig Exp $	*/
+/*	$NetBSD: gcc_typeof_after_statement.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "gcc_typeof_after_statement.c"
 
 /*
@@ -6,6 +6,8 @@
  * there was a statement before it.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 void *
 example(void **ptr)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_003.c
diff -u src/tests/usr.bin/xlint/lint1/msg_003.c:1.5 src/tests/usr.bin/xlint/lint1/msg_003.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_003.c:1.5	Wed Jun 15 20:18:31 2022
+++ src/tests/usr.bin/xlint/lint1/msg_003.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_003.c,v 1.5 2022/06/15 20:18:31 rillig Exp $	*/
+/*	$NetBSD: msg_003.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_003.c"
 
 // Test for message: '%s' declared in argument declaration list [3]
 
+/* lint1-extra-flags: -X 351 */
+
 /*ARGSUSED*/
 void
 example(declare_struct, declare_union, declare_enum)
Index: src/tests/usr.bin/xlint/lint1/msg_050.c
diff -u src/tests/usr.bin/xlint/lint1/msg_050.c:1.5 src/tests/usr.bin/xlint/lint1/msg_050.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_050.c:1.5	Mon Jun 20 21:13:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_050.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_050.c,v 1.5 2022/06/20 21:13:36 rillig Exp $	*/
+/*	$NetBSD: msg_050.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_050.c"
 
 /* Test for message: argument '%s' has function type, should be pointer [50] */
 
-/* lint1-flags: -Stw */
+/* lint1-flags: -tw */
 
 typedef void (function)();
 
Index: src/tests/usr.bin/xlint/lint1/msg_092.c
diff -u src/tests/usr.bin/xlint/lint1/msg_092.c:1.5 src/tests/usr.bin/xlint/lint1/msg_092.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_092.c:1.5	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_092.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_092.c,v 1.5 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_092.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_092.c"
 
 // Test for message: inconsistent redeclaration of static '%s' [92]
 
+/* lint1-extra-flags: -X 351 */
+
 static int
 random(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_093.c
diff -u src/tests/usr.bin/xlint/lint1/msg_093.c:1.5 src/tests/usr.bin/xlint/lint1/msg_093.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_093.c:1.5	Tue Jun 21 21:18:30 2022
+++ src/tests/usr.bin/xlint/lint1/msg_093.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_093.c,v 1.5 2022/06/21 21:18:30 rillig Exp $	*/
+/*	$NetBSD: msg_093.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_093.c"
 
 // Test for message: dubious static function '%s' at block level [93]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_094.c
diff -u src/tests/usr.bin/xlint/lint1/msg_094.c:1.5 src/tests/usr.bin/xlint/lint1/msg_094.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_094.c:1.5	Tue Jun 21 21:18:30 2022
+++ src/tests/usr.bin/xlint/lint1/msg_094.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_094.c,v 1.5 2022/06/21 21:18:30 rillig Exp $	*/
+/*	$NetBSD: msg_094.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_094.c"
 
 // Test for message: function '%s' has illegal storage class [94]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: error: illegal storage class [8] */
 register int
 global_example(int arg)
Index: src/tests/usr.bin/xlint/lint1/msg_099.c
diff -u src/tests/usr.bin/xlint/lint1/msg_099.c:1.5 src/tests/usr.bin/xlint/lint1/msg_099.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_099.c:1.5	Sun Apr  3 09:34:45 2022
+++ src/tests/usr.bin/xlint/lint1/msg_099.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_099.c,v 1.5 2022/04/03 09:34:45 rillig Exp $	*/
+/*	$NetBSD: msg_099.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_099.c"
 
 // Test for message: '%s' undefined [99]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(int defined_variable)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_107.c
diff -u src/tests/usr.bin/xlint/lint1/msg_107.c:1.5 src/tests/usr.bin/xlint/lint1/msg_107.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_107.c:1.5	Sat Jun  3 20:28:54 2023
+++ src/tests/usr.bin/xlint/lint1/msg_107.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_107.c,v 1.5 2023/06/03 20:28:54 rillig Exp $	*/
+/*	$NetBSD: msg_107.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_107.c"
 
 // Test for message: operands of '%s' have incompatible types '%s' and '%s' [107]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 void
 compare(double d, void *ptr)
Index: src/tests/usr.bin/xlint/lint1/msg_109.c
diff -u src/tests/usr.bin/xlint/lint1/msg_109.c:1.5 src/tests/usr.bin/xlint/lint1/msg_109.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_109.c:1.5	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_109.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_109.c,v 1.5 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_109.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_109.c"
 
 // Test for message: void type illegal in expression [109]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 int
 example(int arg)
Index: src/tests/usr.bin/xlint/lint1/msg_116.c
diff -u src/tests/usr.bin/xlint/lint1/msg_116.c:1.5 src/tests/usr.bin/xlint/lint1/msg_116.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_116.c:1.5	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_116.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_116.c,v 1.5 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_116.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_116.c"
 
 // Test for message: illegal pointer subtraction [116]
 
+/* lint1-extra-flags: -X 351 */
+
 /*
  * Subtracting an int pointer from a double pointer does not make sense.
  * The result cannot be reasonably defined since it is "the difference of
Index: src/tests/usr.bin/xlint/lint1/msg_122.c
diff -u src/tests/usr.bin/xlint/lint1/msg_122.c:1.5 src/tests/usr.bin/xlint/lint1/msg_122.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_122.c:1.5	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_122.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_122.c,v 1.5 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_122.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_122.c"
 
 // Test for message: shift amount %llu is greater than bit-size %llu of '%s' [122]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 example(int x)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_138.c
diff -u src/tests/usr.bin/xlint/lint1/msg_138.c:1.5 src/tests/usr.bin/xlint/lint1/msg_138.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_138.c:1.5	Fri Jul  1 20:53:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_138.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_138.c,v 1.5 2022/07/01 20:53:13 rillig Exp $	*/
+/*	$NetBSD: msg_138.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_138.c"
 
 // Test for message: unknown operand size, op '%s' [138]
 
-/* lint1-extra-flags: -z */
+/* lint1-extra-flags: -z -X 351 */
 
 struct incomplete;
 
Index: src/tests/usr.bin/xlint/lint1/msg_144.c
diff -u src/tests/usr.bin/xlint/lint1/msg_144.c:1.5 src/tests/usr.bin/xlint/lint1/msg_144.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_144.c:1.5	Fri Apr  1 23:16:32 2022
+++ src/tests/usr.bin/xlint/lint1/msg_144.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_144.c,v 1.5 2022/04/01 23:16:32 rillig Exp $	*/
+/*	$NetBSD: msg_144.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_144.c"
 
 // Test for message: cannot take size/alignment of function type '%s' [144]
 
+/* lint1-extra-flags: -X 351 */
+
 unsigned long
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_164.c
diff -u src/tests/usr.bin/xlint/lint1/msg_164.c:1.5 src/tests/usr.bin/xlint/lint1/msg_164.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_164.c:1.5	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_164.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_164.c,v 1.5 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_164.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_164.c"
 
 // Test for message: assignment of negative constant to unsigned type [164]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_165.c
diff -u src/tests/usr.bin/xlint/lint1/msg_165.c:1.5 src/tests/usr.bin/xlint/lint1/msg_165.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_165.c:1.5	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_165.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_165.c,v 1.5 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_165.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_165.c"
 
 // Test for message: constant truncated by assignment [165]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_170.c
diff -u src/tests/usr.bin/xlint/lint1/msg_170.c:1.5 src/tests/usr.bin/xlint/lint1/msg_170.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_170.c:1.5	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_170.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_170.c,v 1.5 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_170.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_170.c"
 
 // Test for message: first operand must have scalar type, op ? : [170]
 
+/* lint1-extra-flags: -X 351 */
+
 struct number {
 	int value;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_174.c
diff -u src/tests/usr.bin/xlint/lint1/msg_174.c:1.5 src/tests/usr.bin/xlint/lint1/msg_174.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_174.c:1.5	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_174.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_174.c,v 1.5 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_174.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_174.c"
 
 // Test for message: too many initializers [174]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_182.c
diff -u src/tests/usr.bin/xlint/lint1/msg_182.c:1.5 src/tests/usr.bin/xlint/lint1/msg_182.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_182.c:1.5	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_182.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_182.c,v 1.5 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_182.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_182.c"
 
 // Test for message: incompatible pointer types to '%s' and '%s' [182]
 
+/* lint1-extra-flags: -X 351 */
+
 void *
 return_discarding_volatile(volatile void *arg)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_184.c
diff -u src/tests/usr.bin/xlint/lint1/msg_184.c:1.5 src/tests/usr.bin/xlint/lint1/msg_184.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_184.c:1.5	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_184.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_184.c,v 1.5 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_184.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_184.c"
 
 // Test for message: illegal combination of '%s' and '%s' [184]
 
+/* lint1-extra-flags: -X 351 */
+
 int *
 example(char *cp)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_211.c
diff -u src/tests/usr.bin/xlint/lint1/msg_211.c:1.5 src/tests/usr.bin/xlint/lint1/msg_211.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_211.c:1.5	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_211.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_211.c,v 1.5 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_211.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_211.c"
 
 // Test for message: function has return type '%s' but returns '%s' [211]
 
+/* lint1-extra-flags: -X 351 */
+
 struct str {
 	int member;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_240.c
diff -u src/tests/usr.bin/xlint/lint1/msg_240.c:1.5 src/tests/usr.bin/xlint/lint1/msg_240.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_240.c:1.5	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_240.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,11 @@
-/*	$NetBSD: msg_240.c,v 1.5 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_240.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_240.c"
 
 // Test for message: assignment of different structures (%s != %s) [240]
 // This message is not used.
 
+/* lint1-extra-flags: -X 351 */
+
 struct s_arg {
 	int member;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_261.c
diff -u src/tests/usr.bin/xlint/lint1/msg_261.c:1.5 src/tests/usr.bin/xlint/lint1/msg_261.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_261.c:1.5	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_261.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_261.c,v 1.5 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_261.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_261.c"
 
 // Test for message: previous definition of '%s' [261]
 
-/* lint1-extra-flags: -r */
+/* lint1-extra-flags: -r -X 351 */
 
 /* expect+2: previous definition of 'function' [261] */
 void
Index: src/tests/usr.bin/xlint/lint1/msg_275.c
diff -u src/tests/usr.bin/xlint/lint1/msg_275.c:1.5 src/tests/usr.bin/xlint/lint1/msg_275.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_275.c:1.5	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_275.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_275.c,v 1.5 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_275.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_275.c"
 
 // Test for message: cast discards 'const' from type '%s' [275]
 
-/* lint1-extra-flags: -h */
+/* lint1-extra-flags: -h -X 351 */
 
 char *
 unconst_string(const char *s)
Index: src/tests/usr.bin/xlint/lint1/msg_283.c
diff -u src/tests/usr.bin/xlint/lint1/msg_283.c:1.5 src/tests/usr.bin/xlint/lint1/msg_283.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_283.c:1.5	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_283.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,10 @@
-/*	$NetBSD: msg_283.c,v 1.5 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_283.c,v 1.6 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_283.c"
 
 // Test for message: argument number mismatch with directive /* %s */ [283]
 
 /* Do not warn about unused parameters. */
-/* lint1-extra-flags: -X 231 */
+/* lint1-extra-flags: -X 231,351 */
 
 /* PRINTFLIKE */
 void

Index: src/tests/usr.bin/xlint/lint1/d_alignof.c
diff -u src/tests/usr.bin/xlint/lint1/d_alignof.c:1.11 src/tests/usr.bin/xlint/lint1/d_alignof.c:1.12
--- src/tests/usr.bin/xlint/lint1/d_alignof.c:1.11	Fri Jun 30 16:39:17 2023
+++ src/tests/usr.bin/xlint/lint1/d_alignof.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: d_alignof.c,v 1.11 2023/06/30 16:39:17 rillig Exp $	*/
+/*	$NetBSD: d_alignof.c,v 1.12 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_alignof.c"
 
 /* https://gcc.gnu.org/onlinedocs/gcc/Alignment.html */
 
+/* lint1-extra-flags: -X 351 */
+
 unsigned long
 leading_and_trailing_alignof_type(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_217.c
diff -u src/tests/usr.bin/xlint/lint1/msg_217.c:1.11 src/tests/usr.bin/xlint/lint1/msg_217.c:1.12
--- src/tests/usr.bin/xlint/lint1/msg_217.c:1.11	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_217.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_217.c,v 1.11 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_217.c,v 1.12 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_217.c"
 
 // Test for message: function '%s' falls off bottom without returning value [217]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 random(int n)
 {

Index: src/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c
diff -u src/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c:1.3 src/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c:1.4
--- src/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c:1.3	Sat Mar 20 11:24:49 2021
+++ src/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: d_c99_compound_literal_comma.c,v 1.3 2021/03/20 11:24:49 rillig Exp $	*/
+/*	$NetBSD: d_c99_compound_literal_comma.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_c99_compound_literal_comma.c"
 
 /*-
@@ -8,6 +8,8 @@
  * C99 6.5.2.5 "Compound literals" for the semantics.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 struct point {
 	int x;
 	int y;
Index: src/tests/usr.bin/xlint/lint1/d_cast_fun_array_param.c
diff -u src/tests/usr.bin/xlint/lint1/d_cast_fun_array_param.c:1.3 src/tests/usr.bin/xlint/lint1/d_cast_fun_array_param.c:1.4
--- src/tests/usr.bin/xlint/lint1/d_cast_fun_array_param.c:1.3	Sun Jan 31 14:57:28 2021
+++ src/tests/usr.bin/xlint/lint1/d_cast_fun_array_param.c	Fri Jul  7 19:45:22 2023
@@ -1,6 +1,8 @@
-/*	$NetBSD: d_cast_fun_array_param.c,v 1.3 2021/01/31 14:57:28 rillig Exp $	*/
+/*	$NetBSD: d_cast_fun_array_param.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_cast_fun_array_param.c"
 
+/* lint1-extra-flags: -X 351 */
+
 static void
 f(void *b[4])
 {
Index: src/tests/usr.bin/xlint/lint1/d_gcc_func.c
diff -u src/tests/usr.bin/xlint/lint1/d_gcc_func.c:1.3 src/tests/usr.bin/xlint/lint1/d_gcc_func.c:1.4
--- src/tests/usr.bin/xlint/lint1/d_gcc_func.c:1.3	Sun Jan 31 14:57:28 2021
+++ src/tests/usr.bin/xlint/lint1/d_gcc_func.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: d_gcc_func.c,v 1.3 2021/01/31 14:57:28 rillig Exp $	*/
+/*	$NetBSD: d_gcc_func.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_gcc_func.c"
 
 /* gcc __FUNCTION__ */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 foo(const char *p)
 {
Index: src/tests/usr.bin/xlint/lint1/d_gcc_variable_array_init.c
diff -u src/tests/usr.bin/xlint/lint1/d_gcc_variable_array_init.c:1.3 src/tests/usr.bin/xlint/lint1/d_gcc_variable_array_init.c:1.4
--- src/tests/usr.bin/xlint/lint1/d_gcc_variable_array_init.c:1.3	Sun Jan 31 14:57:28 2021
+++ src/tests/usr.bin/xlint/lint1/d_gcc_variable_array_init.c	Fri Jul  7 19:45:22 2023
@@ -1,7 +1,10 @@
-/*	$NetBSD: d_gcc_variable_array_init.c,v 1.3 2021/01/31 14:57:28 rillig Exp $	*/
+/*	$NetBSD: d_gcc_variable_array_init.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_gcc_variable_array_init.c"
 
 /* gcc: variable array initializer */
+
+/* lint1-extra-flags: -X 351 */
+
 void
 foo(int i)
 {
Index: src/tests/usr.bin/xlint/lint1/expr_cast.c
diff -u src/tests/usr.bin/xlint/lint1/expr_cast.c:1.3 src/tests/usr.bin/xlint/lint1/expr_cast.c:1.4
--- src/tests/usr.bin/xlint/lint1/expr_cast.c:1.3	Tue Aug  3 18:44:33 2021
+++ src/tests/usr.bin/xlint/lint1/expr_cast.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: expr_cast.c,v 1.3 2021/08/03 18:44:33 rillig Exp $	*/
+/*	$NetBSD: expr_cast.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "expr_cast.c"
 
 /*
@@ -12,7 +12,7 @@
  * c-typeck.c, function build_c_cast, RECORD_OR_UNION_TYPE_P.
  */
 
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 struct S {
 	int member;
Index: src/tests/usr.bin/xlint/lint1/gcc_builtin_alloca.c
diff -u src/tests/usr.bin/xlint/lint1/gcc_builtin_alloca.c:1.3 src/tests/usr.bin/xlint/lint1/gcc_builtin_alloca.c:1.4
--- src/tests/usr.bin/xlint/lint1/gcc_builtin_alloca.c:1.3	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/gcc_builtin_alloca.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: gcc_builtin_alloca.c,v 1.3 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: gcc_builtin_alloca.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "gcc_builtin_alloca.c"
 
 /*
@@ -8,6 +8,8 @@
  * https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html
  */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/gcc_cast_union.c
diff -u src/tests/usr.bin/xlint/lint1/gcc_cast_union.c:1.3 src/tests/usr.bin/xlint/lint1/gcc_cast_union.c:1.4
--- src/tests/usr.bin/xlint/lint1/gcc_cast_union.c:1.3	Tue Aug  3 21:18:24 2021
+++ src/tests/usr.bin/xlint/lint1/gcc_cast_union.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: gcc_cast_union.c,v 1.3 2021/08/03 21:18:24 rillig Exp $	*/
+/*	$NetBSD: gcc_cast_union.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "gcc_cast_union.c"
 
 /*
@@ -11,7 +11,7 @@
  * https://gcc.gnu.org/onlinedocs/gcc/Cast-to-Union.html
  */
 
-/* lint1-extra-flags: -e */
+/* lint1-extra-flags: -e -X 351 */
 
 union anything {
 	_Bool m_bool;
Index: src/tests/usr.bin/xlint/lint1/msg_063.c
diff -u src/tests/usr.bin/xlint/lint1/msg_063.c:1.3 src/tests/usr.bin/xlint/lint1/msg_063.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_063.c:1.3	Sun Feb 27 20:02:44 2022
+++ src/tests/usr.bin/xlint/lint1/msg_063.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_063.c,v 1.3 2022/02/27 20:02:44 rillig Exp $	*/
+/*	$NetBSD: msg_063.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_063.c"
 
 // Test for message: prototype does not match old-style definition [63]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 function(a, b)
 	int a, b;
Index: src/tests/usr.bin/xlint/lint1/msg_106.c
diff -u src/tests/usr.bin/xlint/lint1/msg_106.c:1.3 src/tests/usr.bin/xlint/lint1/msg_106.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_106.c:1.3	Wed Jun 15 20:18:31 2022
+++ src/tests/usr.bin/xlint/lint1/msg_106.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,11 @@
-/*	$NetBSD: msg_106.c,v 1.3 2022/06/15 20:18:31 rillig Exp $	*/
+/*	$NetBSD: msg_106.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_106.c"
 
 // Test for message: left operand of '->' must be pointer [106]
 // This message is not used.
 
+/* lint1-extra-flags: -X 351 */
+
 struct s {
 	int member;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_110.c
diff -u src/tests/usr.bin/xlint/lint1/msg_110.c:1.3 src/tests/usr.bin/xlint/lint1/msg_110.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_110.c:1.3	Sun Jul 25 10:26:46 2021
+++ src/tests/usr.bin/xlint/lint1/msg_110.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_110.c,v 1.3 2021/07/25 10:26:46 rillig Exp $	*/
+/*	$NetBSD: msg_110.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_110.c"
 
 // Test for message: pointer to function is not allowed here [110]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 void
 call_take(int (*ptr)(int))
Index: src/tests/usr.bin/xlint/lint1/msg_119.c
diff -u src/tests/usr.bin/xlint/lint1/msg_119.c:1.3 src/tests/usr.bin/xlint/lint1/msg_119.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_119.c:1.3	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_119.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_119.c,v 1.3 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_119.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_119.c"
 
 // Test for message: conversion of '%s' to '%s' is out of range [119]
 
+/* lint1-extra-flags: -X 351 */
+
 float
 too_big(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_195.c
diff -u src/tests/usr.bin/xlint/lint1/msg_195.c:1.3 src/tests/usr.bin/xlint/lint1/msg_195.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_195.c:1.3	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_195.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_195.c,v 1.3 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_195.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_195.c"
 
 // Test for message: case not in switch [195]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 example(int x)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_200.c
diff -u src/tests/usr.bin/xlint/lint1/msg_200.c:1.3 src/tests/usr.bin/xlint/lint1/msg_200.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_200.c:1.3	Fri Aug 27 20:16:50 2021
+++ src/tests/usr.bin/xlint/lint1/msg_200.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_200.c,v 1.3 2021/08/27 20:16:50 rillig Exp $	*/
+/*	$NetBSD: msg_200.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_200.c"
 
 // Test for message: duplicate case in switch: %lu [200]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(unsigned x)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_201.c
diff -u src/tests/usr.bin/xlint/lint1/msg_201.c:1.3 src/tests/usr.bin/xlint/lint1/msg_201.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_201.c:1.3	Thu Aug 26 19:23:25 2021
+++ src/tests/usr.bin/xlint/lint1/msg_201.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_201.c,v 1.3 2021/08/26 19:23:25 rillig Exp $	*/
+/*	$NetBSD: msg_201.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_201.c"
 
 // Test for message: default outside switch [201]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_202.c
diff -u src/tests/usr.bin/xlint/lint1/msg_202.c:1.3 src/tests/usr.bin/xlint/lint1/msg_202.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_202.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_202.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_202.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_202.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_202.c"
 
 // Test for message: duplicate default in switch [202]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(int x)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_205.c
diff -u src/tests/usr.bin/xlint/lint1/msg_205.c:1.3 src/tests/usr.bin/xlint/lint1/msg_205.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_205.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_205.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_205.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_205.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_205.c"
 
 // Test for message: switch expression must have integral type [205]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 void
 example(double x)
Index: src/tests/usr.bin/xlint/lint1/msg_209.c
diff -u src/tests/usr.bin/xlint/lint1/msg_209.c:1.3 src/tests/usr.bin/xlint/lint1/msg_209.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_209.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_209.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_209.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_209.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_209.c"
 
 // Test for message: continue outside loop [209]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_223.c
diff -u src/tests/usr.bin/xlint/lint1/msg_223.c:1.3 src/tests/usr.bin/xlint/lint1/msg_223.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_223.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_223.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_223.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_223.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_223.c"
 
 // Test for message: end-of-loop code not reached [223]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(int n)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_228.c
diff -u src/tests/usr.bin/xlint/lint1/msg_228.c:1.3 src/tests/usr.bin/xlint/lint1/msg_228.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_228.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_228.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,10 @@
-/*	$NetBSD: msg_228.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_228.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_228.c"
 
 /* Test for message: function cannot return const or volatile object [228] */
 
 /* TODO: Also warn in C99 mode and later. */
-/* lint1-flags: -sw */
+/* lint1-flags: -sw -X 351 */
 
 const int
 return_const_int(void)
Index: src/tests/usr.bin/xlint/lint1/msg_237.c
diff -u src/tests/usr.bin/xlint/lint1/msg_237.c:1.3 src/tests/usr.bin/xlint/lint1/msg_237.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_237.c:1.3	Sat Jun 11 12:24:00 2022
+++ src/tests/usr.bin/xlint/lint1/msg_237.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,12 @@
-/*	$NetBSD: msg_237.c,v 1.3 2022/06/11 12:24:00 rillig Exp $	*/
+/*	$NetBSD: msg_237.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_237.c"
 
 // Test for message: redeclaration of formal parameter '%s' [237]
 
 /* See also message 21, which has the same text. */
 
+/* lint1-extra-flags: -X 351 */
+
 /*ARGSUSED*/
 void
 /* expect+1: error: redeclaration of formal parameter 'param' [237] */
Index: src/tests/usr.bin/xlint/lint1/msg_244.c
diff -u src/tests/usr.bin/xlint/lint1/msg_244.c:1.3 src/tests/usr.bin/xlint/lint1/msg_244.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_244.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_244.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_244.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_244.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_244.c"
 
 // Test for message: illegal structure pointer combination [244]
 
+/* lint1-extra-flags: -X 351 */
+
 struct a {
 	int member;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_274.c
diff -u src/tests/usr.bin/xlint/lint1/msg_274.c:1.3 src/tests/usr.bin/xlint/lint1/msg_274.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_274.c:1.3	Sun Aug 22 13:45:56 2021
+++ src/tests/usr.bin/xlint/lint1/msg_274.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_274.c,v 1.3 2021/08/22 13:45:56 rillig Exp $	*/
+/*	$NetBSD: msg_274.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_274.c"
 
 /* Test for message: ANSI C forbids comparison of %s with %s [274] */
 
-/* lint1-flags: -sw */
+/* lint1-flags: -sw -X 351 */
 
 void
 example(void (*function_pointer)(void), void *void_pointer)
Index: src/tests/usr.bin/xlint/lint1/msg_288.c
diff -u src/tests/usr.bin/xlint/lint1/msg_288.c:1.3 src/tests/usr.bin/xlint/lint1/msg_288.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_288.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_288.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_288.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_288.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_288.c"
 
 // Test for message: dubious use of /* VARARGS */ with /* %s */ [288]
 
+/* lint1-extra-flags: -X 351 */
+
 /* VARARGS */
 int
 just_varargs(char x)
Index: src/tests/usr.bin/xlint/lint1/msg_293.c
diff -u src/tests/usr.bin/xlint/lint1/msg_293.c:1.3 src/tests/usr.bin/xlint/lint1/msg_293.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_293.c:1.3	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_293.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_293.c,v 1.3 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_293.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_293.c"
 
 // Test for message: argument %d must be 'char *' for PRINTFLIKE/SCANFLIKE [293]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+3: warning: argument 1 must be 'char *' for PRINTFLIKE/SCANFLIKE [293] */
 /* expect+2: warning: argument 'msgid' unused in function 'my_printf' [231] */
 /* PRINTFLIKE 1 */
Index: src/tests/usr.bin/xlint/lint1/msg_310.c
diff -u src/tests/usr.bin/xlint/lint1/msg_310.c:1.3 src/tests/usr.bin/xlint/lint1/msg_310.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_310.c:1.3	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_310.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_310.c,v 1.3 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_310.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_310.c"
 
 // Test for message: symbol renaming can't be used on function arguments [310]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: warning: argument 'callback' unused in function 'function' [231] */
 void
 function(int (*callback)(void) __symbolrename(argument))
Index: src/tests/usr.bin/xlint/lint1/msg_311.c
diff -u src/tests/usr.bin/xlint/lint1/msg_311.c:1.3 src/tests/usr.bin/xlint/lint1/msg_311.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_311.c:1.3	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_311.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_311.c,v 1.3 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_311.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_311.c"
 
 // Test for message: symbol renaming can't be used on automatic variables [311]
 
+/* lint1-extra-flags: -X 351 */
+
 typedef int (*callback)(void);
 
 callback
Index: src/tests/usr.bin/xlint/lint1/msg_318.c
diff -u src/tests/usr.bin/xlint/lint1/msg_318.c:1.3 src/tests/usr.bin/xlint/lint1/msg_318.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_318.c:1.3	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_318.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_318.c,v 1.3 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_318.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_318.c"
 
 // Test for message: variable array dimension is a C99/GCC extension [318]
 
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 unsigned long
 example(int n)
Index: src/tests/usr.bin/xlint/lint1/msg_320.c
diff -u src/tests/usr.bin/xlint/lint1/msg_320.c:1.3 src/tests/usr.bin/xlint/lint1/msg_320.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_320.c:1.3	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_320.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_320.c,v 1.3 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_320.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_320.c"
 
 // Test for message: ({ }) is a GCC extension [320]
 
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 int
 example(void)
Index: src/tests/usr.bin/xlint/lint1/msg_328.c
diff -u src/tests/usr.bin/xlint/lint1/msg_328.c:1.3 src/tests/usr.bin/xlint/lint1/msg_328.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_328.c:1.3	Tue Aug  3 20:57:06 2021
+++ src/tests/usr.bin/xlint/lint1/msg_328.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_328.c,v 1.3 2021/08/03 20:57:06 rillig Exp $	*/
+/*	$NetBSD: msg_328.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_328.c"
 
 // Test for message: union cast is a GCC extension [328]
 
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 union target {
 	int b;
Index: src/tests/usr.bin/xlint/lint1/msg_345.c
diff -u src/tests/usr.bin/xlint/lint1/msg_345.c:1.3 src/tests/usr.bin/xlint/lint1/msg_345.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_345.c:1.3	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_345.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,10 @@
-/*	$NetBSD: msg_345.c,v 1.3 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_345.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_345.c"
 
 // Test for message: generic selection requires C11 or later [345]
 
 /* Omit flag -g since it silences c11ism. */
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 int
 test(int x)
Index: src/tests/usr.bin/xlint/lint1/stmt_for.c
diff -u src/tests/usr.bin/xlint/lint1/stmt_for.c:1.3 src/tests/usr.bin/xlint/lint1/stmt_for.c:1.4
--- src/tests/usr.bin/xlint/lint1/stmt_for.c:1.3	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/stmt_for.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: stmt_for.c,v 1.3 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: stmt_for.c,v 1.4 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "stmt_for.c"
 
 /*
@@ -7,6 +7,8 @@
  * "dcs->d_next == NULL" failed in funcend at func.c:422
  */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 test(void)
 {

Index: src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c
diff -u src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c:1.7 src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c:1.8
--- src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c:1.7	Tue Aug  3 20:57:06 2021
+++ src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: d_c99_union_cast.c,v 1.7 2021/08/03 20:57:06 rillig Exp $	*/
+/*	$NetBSD: d_c99_union_cast.c,v 1.8 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_c99_union_cast.c"
 
 /* C99 does not define union cast, it is a GCC extension. */
 
-/* lint1-flags: -Sw */
+/* lint1-flags: -Sw -X 351 */
 
 struct bar {
 	int a;
Index: src/tests/usr.bin/xlint/lint1/init_braces.c
diff -u src/tests/usr.bin/xlint/lint1/init_braces.c:1.7 src/tests/usr.bin/xlint/lint1/init_braces.c:1.8
--- src/tests/usr.bin/xlint/lint1/init_braces.c:1.7	Sat Jul  1 06:09:24 2023
+++ src/tests/usr.bin/xlint/lint1/init_braces.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: init_braces.c,v 1.7 2023/07/01 06:09:24 rillig Exp $	*/
+/*	$NetBSD: init_braces.c,v 1.8 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "init_braces.c"
 
 /*
@@ -9,6 +9,8 @@
  *	C11 6.7.9
  */
 
+/* lint1-extra-flags: -X 351 */
+
 void
 init_int(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_072.c
diff -u src/tests/usr.bin/xlint/lint1/msg_072.c:1.7 src/tests/usr.bin/xlint/lint1/msg_072.c:1.8
--- src/tests/usr.bin/xlint/lint1/msg_072.c:1.7	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_072.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_072.c,v 1.7 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_072.c,v 1.8 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_072.c"
 
 // Test for message: typedef declares no type name [72]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: warning: typedef declares no type name [72] */
 typedef int;
 
Index: src/tests/usr.bin/xlint/lint1/msg_302.c
diff -u src/tests/usr.bin/xlint/lint1/msg_302.c:1.7 src/tests/usr.bin/xlint/lint1/msg_302.c:1.8
--- src/tests/usr.bin/xlint/lint1/msg_302.c:1.7	Sat Apr 15 12:59:02 2023
+++ src/tests/usr.bin/xlint/lint1/msg_302.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_302.c,v 1.7 2023/04/15 12:59:02 rillig Exp $	*/
+/*	$NetBSD: msg_302.c,v 1.8 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_302.c"
 
 // Test for message: '%s' returns pointer to automatic object [302]
 
+/* lint1-extra-flags: -X 351 */
+
 void *
 return_arg(int arg)
 {

Index: src/tests/usr.bin/xlint/lint1/d_init_pop_member.c
diff -u src/tests/usr.bin/xlint/lint1/d_init_pop_member.c:1.9 src/tests/usr.bin/xlint/lint1/d_init_pop_member.c:1.10
--- src/tests/usr.bin/xlint/lint1/d_init_pop_member.c:1.9	Sat Jan 15 14:22:03 2022
+++ src/tests/usr.bin/xlint/lint1/d_init_pop_member.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: d_init_pop_member.c,v 1.9 2022/01/15 14:22:03 rillig Exp $	*/
+/*	$NetBSD: d_init_pop_member.c,v 1.10 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "d_init_pop_member.c"
 
 /*
@@ -8,6 +8,8 @@
  * named initializer.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 struct rgb {
 	unsigned red;
 	unsigned green;

Index: src/tests/usr.bin/xlint/lint1/gcc_builtin_overflow.c
diff -u src/tests/usr.bin/xlint/lint1/gcc_builtin_overflow.c:1.2 src/tests/usr.bin/xlint/lint1/gcc_builtin_overflow.c:1.3
--- src/tests/usr.bin/xlint/lint1/gcc_builtin_overflow.c:1.2	Fri Sep  3 22:48:49 2021
+++ src/tests/usr.bin/xlint/lint1/gcc_builtin_overflow.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: gcc_builtin_overflow.c,v 1.2 2021/09/03 22:48:49 rillig Exp $	*/
+/*	$NetBSD: gcc_builtin_overflow.c,v 1.3 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "gcc_builtin_overflow.c"
 
 /*
@@ -8,7 +8,7 @@
  * https://gcc.gnu.org/onlinedocs/gcc/Integer-Overflow-Builtins.html
  */
 
-/* lint1-extra-flags: -T */
+/* lint1-extra-flags: -T -X 351 */
 
 void
 is_overflow(void)
Index: src/tests/usr.bin/xlint/lint1/msg_335.c
diff -u src/tests/usr.bin/xlint/lint1/msg_335.c:1.2 src/tests/usr.bin/xlint/lint1/msg_335.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_335.c:1.2	Fri Jun 17 06:59:16 2022
+++ src/tests/usr.bin/xlint/lint1/msg_335.c	Fri Jul  7 19:45:22 2023
@@ -1,11 +1,11 @@
-/*	$NetBSD: msg_335.c,v 1.2 2022/06/17 06:59:16 rillig Exp $	*/
+/*	$NetBSD: msg_335.c,v 1.3 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_335.c"
 
 // Test for message: operand of '%s' must not be bool [335]
 //
 // See d_c99_bool_strict.c for many more examples.
 
-/* lint1-extra-flags: -T */
+/* lint1-extra-flags: -T -X 351 */
 
 typedef _Bool bool;
 
Index: src/tests/usr.bin/xlint/lint1/msg_350.c
diff -u src/tests/usr.bin/xlint/lint1/msg_350.c:1.2 src/tests/usr.bin/xlint/lint1/msg_350.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_350.c:1.2	Fri Jul  7 00:20:39 2023
+++ src/tests/usr.bin/xlint/lint1/msg_350.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_350.c,v 1.2 2023/07/07 00:20:39 rillig Exp $	*/
+/*	$NetBSD: msg_350.c,v 1.3 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_350.c"
 
 // Test for message 350: '_Atomic' requires C11 or later [350]
@@ -11,6 +11,8 @@
  *	c11_atomic.c
  */
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: error: '_Atomic' requires C11 or later [350] */
 typedef _Atomic int atomic_int;
 
Index: src/tests/usr.bin/xlint/lint1/msg_353.c
diff -u src/tests/usr.bin/xlint/lint1/msg_353.c:1.2 src/tests/usr.bin/xlint/lint1/msg_353.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_353.c:1.2	Mon Jul  3 09:33:07 2023
+++ src/tests/usr.bin/xlint/lint1/msg_353.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_353.c,v 1.2 2023/07/03 09:33:07 rillig Exp $	*/
+/*	$NetBSD: msg_353.c,v 1.3 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_353.c"
 
 // Test for message 353: empty initializer braces require C23 or later [353]
@@ -6,7 +6,7 @@
 // See also:
 //	c23.c
 
-/* lint1-extra-flags: -Ac11 */
+/* lint1-extra-flags: -Ac11 -X 351 */
 
 void
 c23(void)
Index: src/tests/usr.bin/xlint/lint1/stmt_goto.c
diff -u src/tests/usr.bin/xlint/lint1/stmt_goto.c:1.2 src/tests/usr.bin/xlint/lint1/stmt_goto.c:1.3
--- src/tests/usr.bin/xlint/lint1/stmt_goto.c:1.2	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/stmt_goto.c	Fri Jul  7 19:45:22 2023
@@ -1,10 +1,12 @@
-/*	$NetBSD: stmt_goto.c,v 1.2 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: stmt_goto.c,v 1.3 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "stmt_goto.c"
 
 /*
  * Tests for the 'goto' statement.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: error: syntax error 'goto' [249] */
 goto invalid_at_top_level;
 

Index: src/tests/usr.bin/xlint/lint1/msg_011.c
diff -u src/tests/usr.bin/xlint/lint1/msg_011.c:1.6 src/tests/usr.bin/xlint/lint1/msg_011.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_011.c:1.6	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_011.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_011.c,v 1.6 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_011.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_011.c"
 
 // Test for message: bit-field initializer out of range [11]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_030.c
diff -u src/tests/usr.bin/xlint/lint1/msg_030.c:1.6 src/tests/usr.bin/xlint/lint1/msg_030.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_030.c:1.6	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_030.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_030.c,v 1.6 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_030.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_030.c"
 
 /* Test for message: redeclaration of '%s'; ANSI C requires static [30] */
 
-/* lint1-flags: -sw */
+/* lint1-flags: -sw -X 351 */
 
 /* expect+1: error: old-style declaration; add 'int' [1] */
 static a;
Index: src/tests/usr.bin/xlint/lint1/msg_032.c
diff -u src/tests/usr.bin/xlint/lint1/msg_032.c:1.6 src/tests/usr.bin/xlint/lint1/msg_032.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_032.c:1.6	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_032.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_032.c,v 1.6 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_032.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_032.c"
 
 // Test for message: type of argument '%s' defaults to 'int' [32]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+5: error: old-style declaration; add 'int' [1] */
 add(a, b, c)
 /* expect+3: warning: type of argument 'a' defaults to 'int' [32] */
Index: src/tests/usr.bin/xlint/lint1/msg_053.c
diff -u src/tests/usr.bin/xlint/lint1/msg_053.c:1.6 src/tests/usr.bin/xlint/lint1/msg_053.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_053.c:1.6	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_053.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_053.c,v 1.6 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_053.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_053.c"
 
 // Test for message: declared argument '%s' is missing [53]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: error: old-style declaration; add 'int' [1] */
 oldstyle(argument)
 	int argument;
Index: src/tests/usr.bin/xlint/lint1/msg_057.c
diff -u src/tests/usr.bin/xlint/lint1/msg_057.c:1.6 src/tests/usr.bin/xlint/lint1/msg_057.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_057.c:1.6	Mon Jun 20 21:13:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_057.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_057.c,v 1.6 2022/06/20 21:13:36 rillig Exp $	*/
+/*	$NetBSD: msg_057.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_057.c"
 
 // Test for message: enumeration constant '%s' hides parameter [57]
 
+/* lint1-extra-flags: -X 351 */
+
 long
 /* expect+3: warning: argument 'red' unused in function 'rgb' [231] */
 /* expect+2: warning: argument 'green' unused in function 'rgb' [231] */
Index: src/tests/usr.bin/xlint/lint1/msg_062.c
diff -u src/tests/usr.bin/xlint/lint1/msg_062.c:1.6 src/tests/usr.bin/xlint/lint1/msg_062.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_062.c:1.6	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_062.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_062.c,v 1.6 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_062.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_062.c"
 
 // Test for message: function prototype parameters must have types [62]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+1: error: old-style declaration; add 'int' [1] */
 outer() {
 	/* expect+2: warning: function prototype parameters must have types [62] */
Index: src/tests/usr.bin/xlint/lint1/msg_096.c
diff -u src/tests/usr.bin/xlint/lint1/msg_096.c:1.6 src/tests/usr.bin/xlint/lint1/msg_096.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_096.c:1.6	Tue Jun 21 21:18:30 2022
+++ src/tests/usr.bin/xlint/lint1/msg_096.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_096.c,v 1.6 2022/06/21 21:18:30 rillig Exp $	*/
+/*	$NetBSD: msg_096.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_096.c"
 
 // Test for message: cannot dereference non-pointer type '%s' [96]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 unary_plus(int i)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_114.c
diff -u src/tests/usr.bin/xlint/lint1/msg_114.c:1.6 src/tests/usr.bin/xlint/lint1/msg_114.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_114.c:1.6	Tue Jun 21 21:18:30 2022
+++ src/tests/usr.bin/xlint/lint1/msg_114.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_114.c,v 1.6 2022/06/21 21:18:30 rillig Exp $	*/
+/*	$NetBSD: msg_114.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_114.c"
 
 // Test for message: %soperand of '%s' must be lvalue [114]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 void
 example(int a)
Index: src/tests/usr.bin/xlint/lint1/msg_118.c
diff -u src/tests/usr.bin/xlint/lint1/msg_118.c:1.6 src/tests/usr.bin/xlint/lint1/msg_118.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_118.c:1.6	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_118.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_118.c,v 1.6 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_118.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_118.c"
 
 /* Test for message: semantics of '%s' change in ANSI C; use explicit cast [118] */
 
-/* lint1-flags: -hw */
+/* lint1-flags: -hw -X 351 */
 
 int
 int_shl_uint(int left, unsigned int right)
Index: src/tests/usr.bin/xlint/lint1/msg_120.c
diff -u src/tests/usr.bin/xlint/lint1/msg_120.c:1.6 src/tests/usr.bin/xlint/lint1/msg_120.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_120.c:1.6	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_120.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_120.c,v 1.6 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_120.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_120.c"
 
 // Test for message: bitwise '%s' on signed value nonportable [120]
 
-/* lint1-extra-flags: -p */
+/* lint1-extra-flags: -p -X 351 */
 
 int
 shr(int a, int b)
Index: src/tests/usr.bin/xlint/lint1/msg_121.c
diff -u src/tests/usr.bin/xlint/lint1/msg_121.c:1.6 src/tests/usr.bin/xlint/lint1/msg_121.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_121.c:1.6	Sun Jun 19 12:14:34 2022
+++ src/tests/usr.bin/xlint/lint1/msg_121.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_121.c,v 1.6 2022/06/19 12:14:34 rillig Exp $	*/
+/*	$NetBSD: msg_121.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_121.c"
 
 // Test for message: negative shift [121]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 example(int x)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_126.c
diff -u src/tests/usr.bin/xlint/lint1/msg_126.c:1.6 src/tests/usr.bin/xlint/lint1/msg_126.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_126.c:1.6	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_126.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_126.c,v 1.6 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_126.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_126.c"
 
 // Test for message: incompatible types '%s' and '%s' in conditional [126]
 
+/* lint1-extra-flags: -X 351 */
+
 /* ARGSUSED */
 int
 max(int cond, void *ptr, double dbl)
Index: src/tests/usr.bin/xlint/lint1/msg_128.c
diff -u src/tests/usr.bin/xlint/lint1/msg_128.c:1.6 src/tests/usr.bin/xlint/lint1/msg_128.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_128.c:1.6	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_128.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_128.c,v 1.6 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_128.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_128.c"
 
 // Test for message: operands of '%s' have incompatible pointer types to '%s' and '%s' [128]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 conversion_to_unconst(const char *cstr)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_159.c
diff -u src/tests/usr.bin/xlint/lint1/msg_159.c:1.6 src/tests/usr.bin/xlint/lint1/msg_159.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_159.c:1.6	Sat Apr 22 17:30:35 2023
+++ src/tests/usr.bin/xlint/lint1/msg_159.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_159.c,v 1.6 2023/04/22 17:30:35 rillig Exp $	*/
+/*	$NetBSD: msg_159.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_159.c"
 
 // Test for message: assignment in conditional context [159]
 
-/* lint1-extra-flags: -h */
+/* lint1-extra-flags: -h -X 351 */
 
 const char *
 example(int a, int b)
Index: src/tests/usr.bin/xlint/lint1/msg_206.c
diff -u src/tests/usr.bin/xlint/lint1/msg_206.c:1.6 src/tests/usr.bin/xlint/lint1/msg_206.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_206.c:1.6	Sun May 22 13:58:59 2022
+++ src/tests/usr.bin/xlint/lint1/msg_206.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_206.c,v 1.6 2022/05/22 13:58:59 rillig Exp $	*/
+/*	$NetBSD: msg_206.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_206.c"
 
 // Test for message: enumeration value(s) not handled in switch [206]
 
-/* lint1-extra-flags: -eh */
+/* lint1-extra-flags: -eh -X 351 */
 
 enum number {
 	ONE, TWO, THREE
Index: src/tests/usr.bin/xlint/lint1/msg_216.c
diff -u src/tests/usr.bin/xlint/lint1/msg_216.c:1.6 src/tests/usr.bin/xlint/lint1/msg_216.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_216.c:1.6	Sat Oct  1 09:42:40 2022
+++ src/tests/usr.bin/xlint/lint1/msg_216.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_216.c,v 1.6 2022/10/01 09:42:40 rillig Exp $	*/
+/*	$NetBSD: msg_216.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_216.c"
 
 // Test for message: function '%s' has 'return expr' and 'return' [216]
 
+/* lint1-extra-flags: -X 351 */
+
 /* expect+2: error: old-style declaration; add 'int' [1] */
 random(int n)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_229.c
diff -u src/tests/usr.bin/xlint/lint1/msg_229.c:1.6 src/tests/usr.bin/xlint/lint1/msg_229.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_229.c:1.6	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_229.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_229.c,v 1.6 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_229.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_229.c"
 
 // Test for message: converting '%s' to '%s' is questionable [229]
 
+/* lint1-extra-flags: -X 351 */
+
 typedef double (*unary_operator)(double);
 
 int *
Index: src/tests/usr.bin/xlint/lint1/msg_232.c
diff -u src/tests/usr.bin/xlint/lint1/msg_232.c:1.6 src/tests/usr.bin/xlint/lint1/msg_232.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_232.c:1.6	Fri Jun 17 18:54:53 2022
+++ src/tests/usr.bin/xlint/lint1/msg_232.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_232.c,v 1.6 2022/06/17 18:54:53 rillig Exp $	*/
+/*	$NetBSD: msg_232.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_232.c"
 
 // Test for message: label '%s' unused in function '%s' [232]
 
+/* lint1-extra-flags: -X 351 */
+
 void
 example(void)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_239.c
diff -u src/tests/usr.bin/xlint/lint1/msg_239.c:1.6 src/tests/usr.bin/xlint/lint1/msg_239.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_239.c:1.6	Thu Jun 16 21:24:41 2022
+++ src/tests/usr.bin/xlint/lint1/msg_239.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_239.c,v 1.6 2022/06/16 21:24:41 rillig Exp $	*/
+/*	$NetBSD: msg_239.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_239.c"
 
 // Test for message: constant argument to '!' [239]
 
-/* lint1-extra-flags: -h */
+/* lint1-extra-flags: -h -X 351 */
 
 _Bool
 example(int n)
Index: src/tests/usr.bin/xlint/lint1/msg_267.c
diff -u src/tests/usr.bin/xlint/lint1/msg_267.c:1.6 src/tests/usr.bin/xlint/lint1/msg_267.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_267.c:1.6	Fri Aug 19 19:40:39 2022
+++ src/tests/usr.bin/xlint/lint1/msg_267.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_267.c,v 1.6 2022/08/19 19:40:39 rillig Exp $	*/
+/*	$NetBSD: msg_267.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_267.c"
 
 // Test for message: shift amount %u equals bit-size of '%s' [267]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 shr32(unsigned int x)
 {
Index: src/tests/usr.bin/xlint/lint1/msg_280.c
diff -u src/tests/usr.bin/xlint/lint1/msg_280.c:1.6 src/tests/usr.bin/xlint/lint1/msg_280.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_280.c:1.6	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_280.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_280.c,v 1.6 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_280.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_280.c"
 
 // Test for message: comment /* %s */ must be outside function [280]
 
+/* lint1-extra-flags: -X 351 */
+
 /* VARARGS */
 void
 varargs_ok(const char *str, ...)
Index: src/tests/usr.bin/xlint/lint1/msg_309.c
diff -u src/tests/usr.bin/xlint/lint1/msg_309.c:1.6 src/tests/usr.bin/xlint/lint1/msg_309.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_309.c:1.6	Sat Oct 15 21:19:15 2022
+++ src/tests/usr.bin/xlint/lint1/msg_309.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_309.c,v 1.6 2022/10/15 21:19:15 rillig Exp $	*/
+/*	$NetBSD: msg_309.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_309.c"
 
 // Test for message: extra bits set to 0 in conversion of '%s' to '%s', op '%s' [309]
 
+/* lint1-extra-flags: -X 351 */
+
 int
 scale(unsigned long long x) {
 
Index: src/tests/usr.bin/xlint/lint1/msg_333.c
diff -u src/tests/usr.bin/xlint/lint1/msg_333.c:1.6 src/tests/usr.bin/xlint/lint1/msg_333.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_333.c:1.6	Thu May 11 08:01:36 2023
+++ src/tests/usr.bin/xlint/lint1/msg_333.c	Fri Jul  7 19:45:22 2023
@@ -1,11 +1,11 @@
-/*	$NetBSD: msg_333.c,v 1.6 2023/05/11 08:01:36 rillig Exp $	*/
+/*	$NetBSD: msg_333.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_333.c"
 
 // Test for message: controlling expression must be bool, not '%s' [333]
 //
 // See d_c99_bool_strict.c for many more examples.
 
-/* lint1-extra-flags: -T */
+/* lint1-extra-flags: -T -X 351 */
 
 typedef _Bool bool;
 
Index: src/tests/usr.bin/xlint/lint1/msg_351.c
diff -u src/tests/usr.bin/xlint/lint1/msg_351.c:1.6 src/tests/usr.bin/xlint/lint1/msg_351.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_351.c:1.6	Fri Jul  7 00:25:23 2023
+++ src/tests/usr.bin/xlint/lint1/msg_351.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_351.c,v 1.6 2023/07/07 00:25:23 rillig Exp $	*/
+/*	$NetBSD: msg_351.c,v 1.7 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_351.c"
 
 // Test for message 351: missing%s header declaration for '%s' [351]
@@ -23,13 +23,13 @@ void func_decl(void);
 extern void extern_func_decl(void);
 static int static_func_decl(void);
 
-// TODO: missing header declaration
+/* expect+3: warning: missing header declaration for 'func_def' [351] */
 void
 func_def(void)
 {
 }
 
-// TODO: missing header declaration
+/* expect+3: warning: missing header declaration for 'extern_func_def' [351] */
 extern void
 extern_func_def(void)
 {

Index: src/tests/usr.bin/xlint/lint1/msg_108.c
diff -u src/tests/usr.bin/xlint/lint1/msg_108.c:1.8 src/tests/usr.bin/xlint/lint1/msg_108.c:1.9
--- src/tests/usr.bin/xlint/lint1/msg_108.c:1.8	Mon May 22 12:55:04 2023
+++ src/tests/usr.bin/xlint/lint1/msg_108.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_108.c,v 1.8 2023/05/22 12:55:04 rillig Exp $	*/
+/*	$NetBSD: msg_108.c,v 1.9 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_108.c"
 
 // Test for message: operand of '%s' has invalid type '%s' [108]
 
+/* lint1-extra-flags: -X 351 */
+
 /*
  * Before tree.c 1.137 from 2021-01-19, taking the complement of a struct
  * (an absurd idea, by the way), resulted in an internal error because the
Index: src/tests/usr.bin/xlint/lint1/msg_171.c
diff -u src/tests/usr.bin/xlint/lint1/msg_171.c:1.8 src/tests/usr.bin/xlint/lint1/msg_171.c:1.9
--- src/tests/usr.bin/xlint/lint1/msg_171.c:1.8	Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/msg_171.c	Fri Jul  7 19:45:22 2023
@@ -1,8 +1,10 @@
-/*	$NetBSD: msg_171.c,v 1.8 2022/06/16 16:58:36 rillig Exp $	*/
+/*	$NetBSD: msg_171.c,v 1.9 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_171.c"
 
 // Test for message: cannot assign to '%s' from '%s' [171]
 
+/* lint1-extra-flags: -X 351 */
+
 struct s {
 	int member;
 };
Index: src/tests/usr.bin/xlint/lint1/msg_324.c
diff -u src/tests/usr.bin/xlint/lint1/msg_324.c:1.8 src/tests/usr.bin/xlint/lint1/msg_324.c:1.9
--- src/tests/usr.bin/xlint/lint1/msg_324.c:1.8	Fri Jul  7 06:03:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_324.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_324.c,v 1.8 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: msg_324.c,v 1.9 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_324.c"
 
 // Test for message: suggest cast from '%s' to '%s' on op '%s' to avoid overflow [324]
@@ -14,7 +14,7 @@
  * have been lost.
  */
 
-/* lint1-flags: -g -S -w -P */
+/* lint1-flags: -g -S -w -P -X 351 */
 
 void
 example(char c, int i, unsigned u)

Index: src/tests/usr.bin/xlint/lint1/msg_117.c
diff -u src/tests/usr.bin/xlint/lint1/msg_117.c:1.13 src/tests/usr.bin/xlint/lint1/msg_117.c:1.14
--- src/tests/usr.bin/xlint/lint1/msg_117.c:1.13	Sun Jan 29 17:13:10 2023
+++ src/tests/usr.bin/xlint/lint1/msg_117.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_117.c,v 1.13 2023/01/29 17:13:10 rillig Exp $	*/
+/*	$NetBSD: msg_117.c,v 1.14 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_117.c"
 
 // Test for message: bitwise '%s' on signed value possibly nonportable [117]
 
-/* lint1-extra-flags: -p */
+/* lint1-extra-flags: -p -X 351 */
 
 int
 shr(int a, int b)
Index: src/tests/usr.bin/xlint/lint1/msg_230.c
diff -u src/tests/usr.bin/xlint/lint1/msg_230.c:1.13 src/tests/usr.bin/xlint/lint1/msg_230.c:1.14
--- src/tests/usr.bin/xlint/lint1/msg_230.c:1.13	Sat Jun 24 17:50:31 2023
+++ src/tests/usr.bin/xlint/lint1/msg_230.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_230.c,v 1.13 2023/06/24 17:50:31 rillig Exp $	*/
+/*	$NetBSD: msg_230.c,v 1.14 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_230.c"
 
 // Test for message: nonportable character comparison '%s' [230]
 
-/* lint1-flags: -S -g -p -w */
+/* lint1-flags: -S -g -p -w -X 351 */
 /* lint1-only-if: schar */
 
 /*

Index: src/tests/usr.bin/xlint/lint1/msg_132_lp64.c
diff -u src/tests/usr.bin/xlint/lint1/msg_132_lp64.c:1.1 src/tests/usr.bin/xlint/lint1/msg_132_lp64.c:1.2
--- src/tests/usr.bin/xlint/lint1/msg_132_lp64.c:1.1	Fri Jun 10 18:29:01 2022
+++ src/tests/usr.bin/xlint/lint1/msg_132_lp64.c	Fri Jul  7 19:45:22 2023
@@ -1,9 +1,9 @@
-/*	$NetBSD: msg_132_lp64.c,v 1.1 2022/06/10 18:29:01 rillig Exp $	*/
+/*	$NetBSD: msg_132_lp64.c,v 1.2 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_132_lp64.c"
 
 // Test for message: conversion from '%s' to '%s' may lose accuracy [132]
 
-/* lint1-extra-flags: -a */
+/* lint1-extra-flags: -a -X 351 */
 /* lint1-only-if: lp64 */
 
 unsigned int
Index: src/tests/usr.bin/xlint/lint1/msg_352.c
diff -u src/tests/usr.bin/xlint/lint1/msg_352.c:1.1 src/tests/usr.bin/xlint/lint1/msg_352.c:1.2
--- src/tests/usr.bin/xlint/lint1/msg_352.c:1.1	Tue Mar 28 20:04:52 2023
+++ src/tests/usr.bin/xlint/lint1/msg_352.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_352.c,v 1.1 2023/03/28 20:04:52 rillig Exp $	*/
+/*	$NetBSD: msg_352.c,v 1.2 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_352.c"
 
 // Test for message 352: nested 'extern' declaration of '%s' [352]
@@ -10,6 +10,8 @@
  * Instead, any external functions or objects should be declared in headers.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 int
 function(void)
 {

Index: src/tests/usr.bin/xlint/lint1/msg_215.c
diff -u src/tests/usr.bin/xlint/lint1/msg_215.c:1.12 src/tests/usr.bin/xlint/lint1/msg_215.c:1.13
--- src/tests/usr.bin/xlint/lint1/msg_215.c:1.12	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_215.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: msg_215.c,v 1.12 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: msg_215.c,v 1.13 2023/07/07 19:45:22 rillig Exp $	*/
 # 3 "msg_215.c"
 
 // Test for message: function '%s' implicitly declared to return int [215]
@@ -9,6 +9,8 @@
  * would then be defined as taking unspecified parameters and returning int.
  */
 
+/* lint1-extra-flags: -X 351 */
+
 struct str {
 	int dummy;
 };

Index: src/tests/usr.bin/xlint/xlint/t_xlint.sh
diff -u src/tests/usr.bin/xlint/xlint/t_xlint.sh:1.2 src/tests/usr.bin/xlint/xlint/t_xlint.sh:1.3
--- src/tests/usr.bin/xlint/xlint/t_xlint.sh:1.2	Wed Jun 28 09:35:43 2023
+++ src/tests/usr.bin/xlint/xlint/t_xlint.sh	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-# $NetBSD: t_xlint.sh,v 1.2 2023/06/28 09:35:43 rillig Exp $
+# $NetBSD: t_xlint.sh,v 1.3 2023/07/07 19:45:22 rillig Exp $
 #
 # Copyright (c) 2023 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -41,9 +41,14 @@ run_lint1_error_body()
 	EOF
 	echo 'previous content' > input.ln
 
+	cat <<-EOF > expected.out
+		input.c(5): warning: missing header declaration for 'return_true' [351]
+		input.c(6): error: function has return type '_Bool' but returns 'int' [211]
+	EOF
+
 	atf_check \
 	    -s 'exit:1' \
-	    -o "inline:input.c(6): error: function has return type '_Bool' but returns 'int' [211]\n" \
+	    -o 'file:expected.out' \
 	    "$lint" -aabceghiprSTxz input.c
 
 	# In case of an error, any previous output file is overwritten, and the
@@ -73,9 +78,13 @@ run_lint1_warning_body()
 		2s<command-line>
 		4d0.4dr8functionF2IPcCPcV
 	EOF
+	cat <<-EOF >expected.out
+		input.c(5): warning: missing header declaration for 'function' [351]
+		input.c(1): warning: static variable 'number' unused [226]
+	EOF
 
 	atf_check \
-	    -o "inline:input.c(1): warning: static variable 'number' unused [226]\n" \
+	    -o 'file:expected.out' \
 	    "$lint" -aabceghiprSTxz input.c
 	atf_check \
 	    -o 'file:input.exp' \

Index: src/usr.bin/xlint/lint1/cgram.y
diff -u src/usr.bin/xlint/lint1/cgram.y:1.446 src/usr.bin/xlint/lint1/cgram.y:1.447
--- src/usr.bin/xlint/lint1/cgram.y:1.446	Sun Jul  2 23:40:23 2023
+++ src/usr.bin/xlint/lint1/cgram.y	Fri Jul  7 19:45:22 2023
@@ -1,5 +1,5 @@
 %{
-/* $NetBSD: cgram.y,v 1.446 2023/07/02 23:40:23 rillig Exp $ */
+/* $NetBSD: cgram.y,v 1.447 2023/07/07 19:45:22 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.446 2023/07/02 23:40:23 rillig Exp $");
+__RCSID("$NetBSD: cgram.y,v 1.447 2023/07/07 19:45:22 rillig Exp $");
 #endif
 
 #include <limits.h>
@@ -1970,6 +1970,7 @@ function_definition:		/* C99 6.9.1 */
 			error(64);
 			YYERROR;
 		}
+		check_extern_declaration($1);
 		begin_function($1);
 		block_level++;
 		begin_declaration_level(DLK_OLD_STYLE_ARGS);

Index: src/usr.bin/xlint/lint1/decl.c
diff -u src/usr.bin/xlint/lint1/decl.c:1.342 src/usr.bin/xlint/lint1/decl.c:1.343
--- src/usr.bin/xlint/lint1/decl.c:1.342	Fri Jul  7 06:03:31 2023
+++ src/usr.bin/xlint/lint1/decl.c	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: decl.c,v 1.342 2023/07/07 06:03:31 rillig Exp $ */
+/* $NetBSD: decl.c,v 1.343 2023/07/07 19:45:22 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.342 2023/07/07 06:03:31 rillig Exp $");
+__RCSID("$NetBSD: decl.c,v 1.343 2023/07/07 19:45:22 rillig Exp $");
 #endif
 
 #include <sys/param.h>
@@ -1816,14 +1816,16 @@ ends_with(const char *s, const char *suf
 	       memcmp(s + s_len - suffix_len, suffix, suffix_len) == 0;
 }
 
-static void
+void
 check_extern_declaration(const sym_t *sym)
 {
 
 	if (sym->s_scl == EXTERN &&
 	    dcs->d_redeclared_symbol == NULL &&
 	    ends_with(curr_pos.p_file, ".c") &&
-	    !ch_isdigit(sym->s_name[0])) {	/* see mktempsym */
+	    allow_c90 &&
+	    !ch_isdigit(sym->s_name[0]) &&	/* see mktempsym */
+	    strcmp(sym->s_name, "main") != 0) {
 		/* missing%s header declaration for '%s' */
 		warning(351, sym->s_type->t_tspec == FUNC ? "" : " 'extern'",
 		    sym->s_name);

Index: src/usr.bin/xlint/lint1/externs1.h
diff -u src/usr.bin/xlint/lint1/externs1.h:1.189 src/usr.bin/xlint/lint1/externs1.h:1.190
--- src/usr.bin/xlint/lint1/externs1.h:1.189	Fri Jul  7 06:03:31 2023
+++ src/usr.bin/xlint/lint1/externs1.h	Fri Jul  7 19:45:22 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: externs1.h,v 1.189 2023/07/07 06:03:31 rillig Exp $	*/
+/*	$NetBSD: externs1.h,v 1.190 2023/07/07 19:45:22 rillig Exp $	*/
 
 /*
  * Copyright (c) 1994, 1995 Jochen Pohl
@@ -213,6 +213,7 @@ qual_ptr *merge_qualified_pointer(qual_p
 sym_t	*add_pointer(sym_t *, qual_ptr *);
 sym_t	*add_array(sym_t *, bool, int);
 sym_t	*add_function(sym_t *, sym_t *);
+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 *);

Reply via email to