Module Name: src
Committed By: rillig
Date: Thu Jun 16 21:24:41 UTC 2022
Modified Files:
src/distrib/sets/lists/tests: mi
src/tests/usr.bin/xlint: check-expect.lua
src/tests/usr.bin/xlint/lint1: Makefile msg_202.c msg_202.exp msg_204.c
msg_204.exp msg_205.c msg_205.exp msg_207.c msg_207.exp msg_208.c
msg_208.exp msg_209.c msg_209.exp msg_210.c msg_210.exp msg_212.c
msg_213.c msg_213.exp msg_216.c msg_217.c msg_217.exp msg_218.c
msg_218.exp msg_220.c msg_220.exp msg_221.c msg_221.exp msg_223.c
msg_223.exp msg_224.c msg_224.exp msg_225.c msg_225.exp msg_227.c
msg_227.exp msg_228.c msg_228.exp msg_229.c msg_229.exp msg_231.c
msg_231.exp msg_238.c msg_238.exp msg_239.c msg_239.exp msg_240.c
msg_240.exp msg_241.c msg_241.exp msg_243.c msg_243.exp msg_244.c
msg_244.exp msg_245.c msg_245.exp msg_246.c msg_246.exp msg_247.c
msg_247.exp msg_248.c msg_248.exp msg_249.c msg_249.exp msg_255.c
msg_255.exp msg_256.c msg_256.exp msg_258.c msg_258.exp msg_262.c
msg_262.exp msg_263.c msg_263.exp msg_264.c msg_264.exp msg_266.c
msg_266.exp msg_267.c msg_267.exp msg_275.c msg_275.exp msg_276.c
msg_276.exp msg_277.c msg_277.exp msg_278.c msg_278.exp msg_279.c
msg_279.exp msg_281.c msg_281.exp msg_282.c msg_282.exp msg_284.c
msg_284.exp msg_285.c msg_285.exp msg_286.c msg_286.exp msg_287.c
msg_287.exp msg_288.c msg_288.exp msg_290.c msg_290.exp msg_291.c
msg_291.exp msg_293.c msg_293.exp msg_294.c msg_294.exp msg_295.c
msg_295.exp msg_296.c msg_296.exp msg_299.c msg_299.exp
Removed Files:
src/tests/usr.bin/xlint/lint1: msg_212.exp
Log Message:
tests/lint: add more details to messages in msg_200 until msg_299
Add some tests that were previously empty. Some other tests are still
empty.
To generate a diff of this commit:
cvs rdiff -u -r1.1213 -r1.1214 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.16 -r1.17 src/tests/usr.bin/xlint/check-expect.lua
cvs rdiff -u -r1.125 -r1.126 src/tests/usr.bin/xlint/lint1/Makefile
cvs rdiff -u -r1.2 -r1.3 src/tests/usr.bin/xlint/lint1/msg_202.c \
src/tests/usr.bin/xlint/lint1/msg_202.exp \
src/tests/usr.bin/xlint/lint1/msg_205.c \
src/tests/usr.bin/xlint/lint1/msg_205.exp \
src/tests/usr.bin/xlint/lint1/msg_207.c \
src/tests/usr.bin/xlint/lint1/msg_207.exp \
src/tests/usr.bin/xlint/lint1/msg_208.c \
src/tests/usr.bin/xlint/lint1/msg_208.exp \
src/tests/usr.bin/xlint/lint1/msg_209.c \
src/tests/usr.bin/xlint/lint1/msg_209.exp \
src/tests/usr.bin/xlint/lint1/msg_212.c \
src/tests/usr.bin/xlint/lint1/msg_213.c \
src/tests/usr.bin/xlint/lint1/msg_213.exp \
src/tests/usr.bin/xlint/lint1/msg_218.c \
src/tests/usr.bin/xlint/lint1/msg_218.exp \
src/tests/usr.bin/xlint/lint1/msg_223.c \
src/tests/usr.bin/xlint/lint1/msg_223.exp \
src/tests/usr.bin/xlint/lint1/msg_225.c \
src/tests/usr.bin/xlint/lint1/msg_227.c \
src/tests/usr.bin/xlint/lint1/msg_227.exp \
src/tests/usr.bin/xlint/lint1/msg_228.c \
src/tests/usr.bin/xlint/lint1/msg_228.exp \
src/tests/usr.bin/xlint/lint1/msg_240.c \
src/tests/usr.bin/xlint/lint1/msg_240.exp \
src/tests/usr.bin/xlint/lint1/msg_243.c \
src/tests/usr.bin/xlint/lint1/msg_243.exp \
src/tests/usr.bin/xlint/lint1/msg_244.c \
src/tests/usr.bin/xlint/lint1/msg_244.exp \
src/tests/usr.bin/xlint/lint1/msg_246.c \
src/tests/usr.bin/xlint/lint1/msg_246.exp \
src/tests/usr.bin/xlint/lint1/msg_248.c \
src/tests/usr.bin/xlint/lint1/msg_248.exp \
src/tests/usr.bin/xlint/lint1/msg_255.c \
src/tests/usr.bin/xlint/lint1/msg_255.exp \
src/tests/usr.bin/xlint/lint1/msg_256.c \
src/tests/usr.bin/xlint/lint1/msg_256.exp \
src/tests/usr.bin/xlint/lint1/msg_258.c \
src/tests/usr.bin/xlint/lint1/msg_258.exp \
src/tests/usr.bin/xlint/lint1/msg_264.c \
src/tests/usr.bin/xlint/lint1/msg_264.exp \
src/tests/usr.bin/xlint/lint1/msg_266.c \
src/tests/usr.bin/xlint/lint1/msg_266.exp \
src/tests/usr.bin/xlint/lint1/msg_275.exp \
src/tests/usr.bin/xlint/lint1/msg_276.c \
src/tests/usr.bin/xlint/lint1/msg_276.exp \
src/tests/usr.bin/xlint/lint1/msg_278.exp \
src/tests/usr.bin/xlint/lint1/msg_279.exp \
src/tests/usr.bin/xlint/lint1/msg_281.c \
src/tests/usr.bin/xlint/lint1/msg_281.exp \
src/tests/usr.bin/xlint/lint1/msg_282.c \
src/tests/usr.bin/xlint/lint1/msg_282.exp \
src/tests/usr.bin/xlint/lint1/msg_284.c \
src/tests/usr.bin/xlint/lint1/msg_284.exp \
src/tests/usr.bin/xlint/lint1/msg_286.c \
src/tests/usr.bin/xlint/lint1/msg_286.exp \
src/tests/usr.bin/xlint/lint1/msg_287.c \
src/tests/usr.bin/xlint/lint1/msg_287.exp \
src/tests/usr.bin/xlint/lint1/msg_288.c \
src/tests/usr.bin/xlint/lint1/msg_288.exp \
src/tests/usr.bin/xlint/lint1/msg_290.c \
src/tests/usr.bin/xlint/lint1/msg_290.exp \
src/tests/usr.bin/xlint/lint1/msg_291.c \
src/tests/usr.bin/xlint/lint1/msg_291.exp \
src/tests/usr.bin/xlint/lint1/msg_293.c \
src/tests/usr.bin/xlint/lint1/msg_293.exp \
src/tests/usr.bin/xlint/lint1/msg_294.c \
src/tests/usr.bin/xlint/lint1/msg_294.exp \
src/tests/usr.bin/xlint/lint1/msg_295.c \
src/tests/usr.bin/xlint/lint1/msg_295.exp \
src/tests/usr.bin/xlint/lint1/msg_296.c \
src/tests/usr.bin/xlint/lint1/msg_296.exp \
src/tests/usr.bin/xlint/lint1/msg_299.c \
src/tests/usr.bin/xlint/lint1/msg_299.exp
cvs rdiff -u -r1.6 -r1.7 src/tests/usr.bin/xlint/lint1/msg_204.c \
src/tests/usr.bin/xlint/lint1/msg_204.exp \
src/tests/usr.bin/xlint/lint1/msg_220.exp
cvs rdiff -u -r1.5 -r1.6 src/tests/usr.bin/xlint/lint1/msg_210.c \
src/tests/usr.bin/xlint/lint1/msg_210.exp \
src/tests/usr.bin/xlint/lint1/msg_229.c \
src/tests/usr.bin/xlint/lint1/msg_239.c \
src/tests/usr.bin/xlint/lint1/msg_277.c
cvs rdiff -u -r1.2 -r0 src/tests/usr.bin/xlint/lint1/msg_212.exp
cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/msg_216.c \
src/tests/usr.bin/xlint/lint1/msg_221.exp \
src/tests/usr.bin/xlint/lint1/msg_224.c \
src/tests/usr.bin/xlint/lint1/msg_224.exp \
src/tests/usr.bin/xlint/lint1/msg_225.exp \
src/tests/usr.bin/xlint/lint1/msg_229.exp \
src/tests/usr.bin/xlint/lint1/msg_231.c \
src/tests/usr.bin/xlint/lint1/msg_231.exp \
src/tests/usr.bin/xlint/lint1/msg_238.exp \
src/tests/usr.bin/xlint/lint1/msg_262.c \
src/tests/usr.bin/xlint/lint1/msg_262.exp \
src/tests/usr.bin/xlint/lint1/msg_263.c \
src/tests/usr.bin/xlint/lint1/msg_263.exp \
src/tests/usr.bin/xlint/lint1/msg_267.c \
src/tests/usr.bin/xlint/lint1/msg_267.exp \
src/tests/usr.bin/xlint/lint1/msg_277.exp \
src/tests/usr.bin/xlint/lint1/msg_278.c \
src/tests/usr.bin/xlint/lint1/msg_279.c \
src/tests/usr.bin/xlint/lint1/msg_285.c \
src/tests/usr.bin/xlint/lint1/msg_285.exp
cvs rdiff -u -r1.9 -r1.10 src/tests/usr.bin/xlint/lint1/msg_217.c
cvs rdiff -u -r1.8 -r1.9 src/tests/usr.bin/xlint/lint1/msg_217.exp \
src/tests/usr.bin/xlint/lint1/msg_249.exp
cvs rdiff -u -r1.7 -r1.8 src/tests/usr.bin/xlint/lint1/msg_220.c \
src/tests/usr.bin/xlint/lint1/msg_241.c
cvs rdiff -u -r1.4 -r1.5 src/tests/usr.bin/xlint/lint1/msg_221.c \
src/tests/usr.bin/xlint/lint1/msg_238.c \
src/tests/usr.bin/xlint/lint1/msg_239.exp \
src/tests/usr.bin/xlint/lint1/msg_241.exp \
src/tests/usr.bin/xlint/lint1/msg_245.c \
src/tests/usr.bin/xlint/lint1/msg_245.exp \
src/tests/usr.bin/xlint/lint1/msg_275.c
cvs rdiff -u -r1.17 -r1.18 src/tests/usr.bin/xlint/lint1/msg_247.c
cvs rdiff -u -r1.13 -r1.14 src/tests/usr.bin/xlint/lint1/msg_247.exp
cvs rdiff -u -r1.10 -r1.11 src/tests/usr.bin/xlint/lint1/msg_249.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/distrib/sets/lists/tests/mi
diff -u src/distrib/sets/lists/tests/mi:1.1213 src/distrib/sets/lists/tests/mi:1.1214
--- src/distrib/sets/lists/tests/mi:1.1213 Thu Jun 16 16:58:35 2022
+++ src/distrib/sets/lists/tests/mi Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1213 2022/06/16 16:58:35 rillig Exp $
+# $NetBSD: mi,v 1.1214 2022/06/16 21:24:41 rillig Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -7002,7 +7002,7 @@
./usr/tests/usr.bin/xlint/lint1/msg_211.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/msg_211.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/msg_212.c tests-usr.bin-tests compattestfile,atf
-./usr/tests/usr.bin/xlint/lint1/msg_212.exp tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/xlint/lint1/msg_212.exp tests-obsolete obsolete,atf
./usr/tests/usr.bin/xlint/lint1/msg_213.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/msg_213.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/msg_214.c tests-usr.bin-tests compattestfile,atf
Index: src/tests/usr.bin/xlint/check-expect.lua
diff -u src/tests/usr.bin/xlint/check-expect.lua:1.16 src/tests/usr.bin/xlint/check-expect.lua:1.17
--- src/tests/usr.bin/xlint/check-expect.lua:1.16 Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/check-expect.lua Thu Jun 16 21:24:41 2022
@@ -1,5 +1,5 @@
#! /usr/bin/lua
--- $NetBSD: check-expect.lua,v 1.16 2022/06/16 16:58:36 rillig Exp $
+-- $NetBSD: check-expect.lua,v 1.17 2022/06/16 21:24:41 rillig Exp $
--[[
@@ -64,7 +64,7 @@ local function load_expect_comments_from
-- only the raw message ID, without the actual message text,
-- which makes them harder to understand without looking up more context.
for comment in line:gmatch("/%* expect: (.-) %*/") do
- if not fname:match("^msg_[01]") then
+ if not fname:match("^msg_[012]") then
add_expectation(0, comment)
end
end
Index: src/tests/usr.bin/xlint/lint1/Makefile
diff -u src/tests/usr.bin/xlint/lint1/Makefile:1.125 src/tests/usr.bin/xlint/lint1/Makefile:1.126
--- src/tests/usr.bin/xlint/lint1/Makefile:1.125 Thu Jun 16 16:58:36 2022
+++ src/tests/usr.bin/xlint/lint1/Makefile Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.125 2022/06/16 16:58:36 rillig Exp $
+# $NetBSD: Makefile,v 1.126 2022/06/16 21:24:41 rillig Exp $
NOMAN= # defined
MAX_MESSAGE= 349 # see lint1/err.c
@@ -276,6 +276,7 @@ MSG_NO_EXP.040= yes
MSG_NO_EXP.070= yes
MSG_NO_EXP.131= yes
MSG_NO_EXP.176= yes
+MSG_NO_EXP.212= yes
# Note: only works for adding tests.
# To remove a test, the $$mi file must be edited manually.
Index: src/tests/usr.bin/xlint/lint1/msg_202.c
diff -u src/tests/usr.bin/xlint/lint1/msg_202.c:1.2 src/tests/usr.bin/xlint/lint1/msg_202.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_202.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_202.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,18 @@
-/* $NetBSD: msg_202.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_202.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_202.c"
// Test for message: duplicate default in switch [202]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+void
+example(int x)
+{
+ switch (x) {
+ case 1:
+ break;
+ default:
+ break;
+ default:
+ /* expect-1: error: duplicate default in switch [202] */
+ return;
+ }
+}
Index: src/tests/usr.bin/xlint/lint1/msg_202.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_202.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_202.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_202.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_202.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_202.c(6): error: syntax error ':' [249]
+msg_202.c(14): error: duplicate default in switch [202]
Index: src/tests/usr.bin/xlint/lint1/msg_205.c
diff -u src/tests/usr.bin/xlint/lint1/msg_205.c:1.2 src/tests/usr.bin/xlint/lint1/msg_205.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_205.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_205.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,13 @@
-/* $NetBSD: msg_205.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_205.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_205.c"
// Test for message: switch expression must have integral type [205]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* ARGSUSED */
+void
+example(double x)
+{
+ /* expect+1: error: switch expression must have integral type [205] */
+ switch (x) {
+ }
+}
Index: src/tests/usr.bin/xlint/lint1/msg_205.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_205.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_205.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_205.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_205.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_205.c(6): error: syntax error ':' [249]
+msg_205.c(11): error: switch expression must have integral type [205]
Index: src/tests/usr.bin/xlint/lint1/msg_207.c
diff -u src/tests/usr.bin/xlint/lint1/msg_207.c:1.2 src/tests/usr.bin/xlint/lint1/msg_207.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_207.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_207.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_207.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_207.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_207.c"
// Test for message: loop not entered at top [207]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_207.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_207.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_207.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_207.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_207.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_207.c(6): error: syntax error ':' [249]
+msg_207.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_208.c
diff -u src/tests/usr.bin/xlint/lint1/msg_208.c:1.2 src/tests/usr.bin/xlint/lint1/msg_208.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_208.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_208.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_208.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_208.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_208.c"
// Test for message: break outside loop or switch [208]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_208.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_208.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_208.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_208.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_208.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_208.c(6): error: syntax error ':' [249]
+msg_208.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_209.c
diff -u src/tests/usr.bin/xlint/lint1/msg_209.c:1.2 src/tests/usr.bin/xlint/lint1/msg_209.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_209.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_209.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,11 @@
-/* $NetBSD: msg_209.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_209.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_209.c"
// Test for message: continue outside loop [209]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+void
+example(void)
+{
+ /* expect+1: error: continue outside loop [209] */
+ continue;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_209.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_209.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_209.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_209.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_209.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_209.c(6): error: syntax error ':' [249]
+msg_209.c(10): error: continue outside loop [209]
Index: src/tests/usr.bin/xlint/lint1/msg_212.c
diff -u src/tests/usr.bin/xlint/lint1/msg_212.c:1.2 src/tests/usr.bin/xlint/lint1/msg_212.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_212.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_212.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,7 @@
-/* $NetBSD: msg_212.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_212.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_212.c"
// Test for message: cannot return incomplete type [212]
+// This message is not used.
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+int dummy;
Index: src/tests/usr.bin/xlint/lint1/msg_213.c
diff -u src/tests/usr.bin/xlint/lint1/msg_213.c:1.2 src/tests/usr.bin/xlint/lint1/msg_213.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_213.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_213.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,12 @@
-/* $NetBSD: msg_213.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_213.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_213.c"
// Test for message: void function %s cannot return value [213]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+2: warning: argument 'x' unused in function 'example' [231] */
+void
+example(int x)
+{
+ /* expect+1: error: void function example cannot return value [213] */
+ return x;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_213.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_213.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_213.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_213.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_213.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_213.c(6): error: syntax error ':' [249]
+msg_213.c(11): error: void function example cannot return value [213]
+msg_213.c(8): warning: argument 'x' unused in function 'example' [231]
Index: src/tests/usr.bin/xlint/lint1/msg_218.c
diff -u src/tests/usr.bin/xlint/lint1/msg_218.c:1.2 src/tests/usr.bin/xlint/lint1/msg_218.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_218.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_218.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_218.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_218.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_218.c"
// Test for message: ANSI C treats constant as unsigned, op %s [218]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_218.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_218.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_218.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_218.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_218.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_218.c(6): error: syntax error ':' [249]
+msg_218.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_223.c
diff -u src/tests/usr.bin/xlint/lint1/msg_223.c:1.2 src/tests/usr.bin/xlint/lint1/msg_223.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_223.c:1.2 Sat Jan 30 17:02:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_223.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_223.c,v 1.2 2021/01/30 17:02:58 rillig Exp $ */
+/* $NetBSD: msg_223.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_223.c"
// Test for message: end-of-loop code not reached [223]
@@ -6,6 +6,7 @@
void
example(int n)
{
- for (int i = 0; i < n; i++) /* expect: 223 */
+ /* expect+1: warning: end-of-loop code not reached [223] */
+ for (int i = 0; i < n; i++)
break;
}
Index: src/tests/usr.bin/xlint/lint1/msg_223.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_223.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_223.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_223.exp:1.2 Sat Jan 30 17:02:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_223.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_223.c(9): warning: end-of-loop code not reached [223]
+msg_223.c(10): warning: end-of-loop code not reached [223]
Index: src/tests/usr.bin/xlint/lint1/msg_225.c
diff -u src/tests/usr.bin/xlint/lint1/msg_225.c:1.2 src/tests/usr.bin/xlint/lint1/msg_225.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_225.c:1.2 Sun Jan 24 17:55:41 2021
+++ src/tests/usr.bin/xlint/lint1/msg_225.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_225.c,v 1.2 2021/01/24 17:55:41 rillig Exp $ */
+/* $NetBSD: msg_225.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_225.c"
// Test for message: static function called but not defined: %s() [225]
@@ -10,7 +10,8 @@ static void defined_later(void);
void
caller(void)
{
- undefined(); /* expect: 225 */
+ /* expect+1: error: static function called but not defined: undefined() [225] */
+ undefined();
defined_later();
}
Index: src/tests/usr.bin/xlint/lint1/msg_227.c
diff -u src/tests/usr.bin/xlint/lint1/msg_227.c:1.2 src/tests/usr.bin/xlint/lint1/msg_227.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_227.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_227.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,10 @@
-/* $NetBSD: msg_227.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_227.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_227.c"
// Test for message: const object %s should have initializer [227]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+2: warning: static variable 'without_initializer' unused [226] */
+/* expect+1: warning: const object without_initializer should have initializer [227] */
+static const int without_initializer;
+/* expect+1: warning: static variable 'with_initializer' unused [226] */
+static const int with_initializer = 1;
Index: src/tests/usr.bin/xlint/lint1/msg_227.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_227.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_227.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_227.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_227.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,3 @@
-msg_227.c(6): error: syntax error ':' [249]
+msg_227.c(8): warning: static variable 'without_initializer' unused [226]
+msg_227.c(8): warning: const object without_initializer should have initializer [227]
+msg_227.c(10): warning: static variable 'with_initializer' unused [226]
Index: src/tests/usr.bin/xlint/lint1/msg_228.c
diff -u src/tests/usr.bin/xlint/lint1/msg_228.c:1.2 src/tests/usr.bin/xlint/lint1/msg_228.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_228.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_228.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,21 @@
-/* $NetBSD: msg_228.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_228.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_228.c"
-// Test for message: function cannot return const or volatile object [228]
+/* Test for message: function cannot return const or volatile object [228] */
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* TODO: Also warn in C99 mode and later. */
+/* lint1-flags: -sw */
+
+const int
+return_const_int(void)
+/* expect+1: warning: function cannot return const or volatile object [228] */
+{
+ return 3;
+}
+
+volatile int
+return_volatile_int(void)
+/* expect+1: warning: function cannot return const or volatile object [228] */
+{
+ return 3;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_228.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_228.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_228.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_228.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_228.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_228.c(6): error: syntax error ':' [249]
+msg_228.c(12): warning: function cannot return const or volatile object [228]
+msg_228.c(19): warning: function cannot return const or volatile object [228]
Index: src/tests/usr.bin/xlint/lint1/msg_240.c
diff -u src/tests/usr.bin/xlint/lint1/msg_240.c:1.2 src/tests/usr.bin/xlint/lint1/msg_240.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_240.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_240.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,47 @@
-/* $NetBSD: msg_240.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_240.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_240.c"
// Test for message: assignment of different structures (%s != %s) [240]
+// This message is not used.
+// TODO: Remove the code, as the message is unreachable.
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+struct s_arg {
+ int member;
+};
+
+struct s_local {
+ int member;
+};
+
+struct s_return {
+ int member;
+};
+
+union u_arg {
+ int member;
+};
+
+/* expect+2: warning: argument 's_arg' unused in function 'return_other_struct' [231] */
+struct s_return
+return_other_struct(struct s_arg s_arg)
+{
+ /* XXX: No warning? */
+ return s_arg;
+}
+
+/* expect+2: warning: argument 's_arg' unused in function 'assign_other_struct' [231] */
+void
+assign_other_struct(struct s_arg s_arg)
+{
+ static struct s_local s_local;
+ /* XXX: No warning? */
+ s_local = s_arg;
+}
+
+/* expect+2: warning: argument 'u_arg' unused in function 'return_other_union' [231] */
+struct s_return
+return_other_union(union u_arg u_arg)
+{
+ /* XXX: No warning? */
+ return u_arg;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_240.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_240.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_240.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_240.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_240.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,3 @@
-msg_240.c(6): error: syntax error ':' [249]
+msg_240.c(26): warning: argument 's_arg' unused in function 'return_other_struct' [231]
+msg_240.c(34): warning: argument 's_arg' unused in function 'assign_other_struct' [231]
+msg_240.c(43): warning: argument 'u_arg' unused in function 'return_other_union' [231]
Index: src/tests/usr.bin/xlint/lint1/msg_243.c
diff -u src/tests/usr.bin/xlint/lint1/msg_243.c:1.2 src/tests/usr.bin/xlint/lint1/msg_243.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_243.c:1.2 Sun Jan 31 09:21:24 2021
+++ src/tests/usr.bin/xlint/lint1/msg_243.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_243.c,v 1.2 2021/01/31 09:21:24 rillig Exp $ */
+/* $NetBSD: msg_243.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_243.c"
// Test for message: dubious comparison of enums, op %s [243]
@@ -16,10 +16,14 @@ void eval(_Bool);
void
example(enum color a, enum color b)
{
- eval(a < b); /* expect: 243 */
- eval(a <= b); /* expect: 243 */
- eval(a > b); /* expect: 243 */
- eval(a >= b); /* expect: 243 */
+ /* expect+1: warning: dubious comparison of enums, op < [243] */
+ eval(a < b);
+ /* expect+1: warning: dubious comparison of enums, op <= [243] */
+ eval(a <= b);
+ /* expect+1: warning: dubious comparison of enums, op > [243] */
+ eval(a > b);
+ /* expect+1: warning: dubious comparison of enums, op >= [243] */
+ eval(a >= b);
eval(a == b);
eval(a != b);
}
Index: src/tests/usr.bin/xlint/lint1/msg_243.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_243.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_243.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_243.exp:1.2 Sun Jan 31 09:21:24 2021
+++ src/tests/usr.bin/xlint/lint1/msg_243.exp Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-msg_243.c(19): warning: dubious comparison of enums, op < [243]
-msg_243.c(20): warning: dubious comparison of enums, op <= [243]
-msg_243.c(21): warning: dubious comparison of enums, op > [243]
-msg_243.c(22): warning: dubious comparison of enums, op >= [243]
+msg_243.c(20): warning: dubious comparison of enums, op < [243]
+msg_243.c(22): warning: dubious comparison of enums, op <= [243]
+msg_243.c(24): warning: dubious comparison of enums, op > [243]
+msg_243.c(26): warning: dubious comparison of enums, op >= [243]
Index: src/tests/usr.bin/xlint/lint1/msg_244.c
diff -u src/tests/usr.bin/xlint/lint1/msg_244.c:1.2 src/tests/usr.bin/xlint/lint1/msg_244.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_244.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_244.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,33 @@
-/* $NetBSD: msg_244.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_244.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_244.c"
// Test for message: illegal structure pointer combination [244]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+struct a {
+ int member;
+};
+
+struct b {
+ int member;
+};
+
+int
+diff(struct a *a, struct b *b)
+{
+ /* expect+1: error: illegal pointer subtraction [116] */
+ return a - b;
+}
+
+_Bool
+lt(struct a *a, struct b *b)
+{
+ /* expect+1: warning: incompatible structure pointers: 'pointer to struct a' '<' 'pointer to struct b' [245] */
+ return a < b;
+}
+
+struct a *
+ret(struct b *b)
+{
+ /* expect+1: warning: illegal structure pointer combination [244] */
+ return b;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_244.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_244.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_244.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_244.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_244.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,3 @@
-msg_244.c(6): error: syntax error ':' [249]
+msg_244.c(18): error: illegal pointer subtraction [116]
+msg_244.c(25): warning: incompatible structure pointers: 'pointer to struct a' '<' 'pointer to struct b' [245]
+msg_244.c(32): warning: illegal structure pointer combination [244]
Index: src/tests/usr.bin/xlint/lint1/msg_246.c
diff -u src/tests/usr.bin/xlint/lint1/msg_246.c:1.2 src/tests/usr.bin/xlint/lint1/msg_246.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_246.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_246.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,22 @@
-/* $NetBSD: msg_246.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_246.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_246.c"
// Test for message: dubious conversion of enum to '%s' [246]
+// This message is not used.
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+enum color {
+ RED, GREEN, BLUE
+};
+
+double
+to_double(enum color c)
+{
+ return c;
+}
+
+void *
+to_pointer(enum color c)
+{
+ /* expect+1: warning: illegal combination of pointer (pointer to void) and integer (enum color) [183] */
+ return c;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_246.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_246.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_246.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_246.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_246.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_246.c(6): error: syntax error ':' [249]
+msg_246.c(21): warning: illegal combination of pointer (pointer to void) and integer (enum color) [183]
Index: src/tests/usr.bin/xlint/lint1/msg_248.c
diff -u src/tests/usr.bin/xlint/lint1/msg_248.c:1.2 src/tests/usr.bin/xlint/lint1/msg_248.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_248.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_248.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_248.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_248.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_248.c"
// Test for message: floating-point constant out of range [248]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_248.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_248.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_248.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_248.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_248.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_248.c(6): error: syntax error ':' [249]
+msg_248.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_255.c
diff -u src/tests/usr.bin/xlint/lint1/msg_255.c:1.2 src/tests/usr.bin/xlint/lint1/msg_255.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_255.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_255.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,11 @@
-/* $NetBSD: msg_255.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_255.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_255.c"
// Test for message: undefined or invalid # directive [255]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+#pragma once
+
+/* expect+1: warning: undefined or invalid # directive [255] */
+#fatal_error
+
+int dummy;
Index: src/tests/usr.bin/xlint/lint1/msg_255.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_255.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_255.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_255.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_255.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_255.c(6): error: syntax error ':' [249]
+msg_255.c(9): warning: undefined or invalid # directive [255]
Index: src/tests/usr.bin/xlint/lint1/msg_256.c
diff -u src/tests/usr.bin/xlint/lint1/msg_256.c:1.2 src/tests/usr.bin/xlint/lint1/msg_256.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_256.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_256.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,9 @@
-/* $NetBSD: msg_256.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_256.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_256.c"
// Test for message: unterminated comment [256]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+int dummy;
+
+/* expect+2: error: unterminated comment [256] */
+/* This comment never ends.
Index: src/tests/usr.bin/xlint/lint1/msg_256.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_256.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_256.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_256.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_256.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_256.c(6): error: syntax error ':' [249]
+msg_256.c(10): error: unterminated comment [256]
Index: src/tests/usr.bin/xlint/lint1/msg_258.c
diff -u src/tests/usr.bin/xlint/lint1/msg_258.c:1.2 src/tests/usr.bin/xlint/lint1/msg_258.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_258.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_258.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,16 @@
-/* $NetBSD: msg_258.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_258.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_258.c"
// Test for message: unterminated string constant [258]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+int dummy;
+
+// A string literal that is not finished at the end of the line confuses the
+// parser.
+//
+// "This string doesn't end in this line.
+
+/* expect+4: error: unterminated string constant [258] */
+/* expect+3: error: syntax error '' [249] */
+/* expect+2: error: empty array declaration: str [190] */
+const char str[] = "This is the end.
Index: src/tests/usr.bin/xlint/lint1/msg_258.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_258.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_258.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_258.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_258.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,3 @@
-msg_258.c(6): error: syntax error ':' [249]
+msg_258.c(17): error: unterminated string constant [258]
+msg_258.c(17): error: syntax error '' [249]
+msg_258.c(17): error: empty array declaration: str [190]
Index: src/tests/usr.bin/xlint/lint1/msg_264.c
diff -u src/tests/usr.bin/xlint/lint1/msg_264.c:1.2 src/tests/usr.bin/xlint/lint1/msg_264.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_264.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_264.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,9 @@
-/* $NetBSD: msg_264.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_264.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_264.c"
-// Test for message: \v undefined in traditional C [264]
+/* Test for message: \v undefined in traditional C [264] */
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* lint1-flags: -tw */
+
+/* expect+1: warning: \v undefined in traditional C [264] */
+char str[] = "vertical \v tab";
Index: src/tests/usr.bin/xlint/lint1/msg_264.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_264.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_264.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_264.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_264.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_264.c(6): error: syntax error ':' [249]
+msg_264.c(9): warning: \v undefined in traditional C [264]
Index: src/tests/usr.bin/xlint/lint1/msg_266.c
diff -u src/tests/usr.bin/xlint/lint1/msg_266.c:1.2 src/tests/usr.bin/xlint/lint1/msg_266.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_266.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_266.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,9 @@
-/* $NetBSD: msg_266.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_266.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_266.c"
-// Test for message: 'long double' is illegal in traditional C [266]
+/* Test for message: 'long double' is illegal in traditional C [266] */
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* lint1-flags: -tw */
+
+/* expect+1: warning: 'long double' is illegal in traditional C [266] */
+long double ldbl = 0.0;
Index: src/tests/usr.bin/xlint/lint1/msg_266.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_266.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_266.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_266.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_266.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_266.c(6): error: syntax error ':' [249]
+msg_266.c(9): warning: 'long double' is illegal in traditional C [266]
Index: src/tests/usr.bin/xlint/lint1/msg_275.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_275.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_275.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_275.exp:1.2 Sun Feb 28 01:36:46 2021
+++ src/tests/usr.bin/xlint/lint1/msg_275.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_275.c(11): warning: cast discards 'const' from type 'pointer to const char' [275]
+msg_275.c(12): warning: cast discards 'const' from type 'pointer to const char' [275]
Index: src/tests/usr.bin/xlint/lint1/msg_276.c
diff -u src/tests/usr.bin/xlint/lint1/msg_276.c:1.2 src/tests/usr.bin/xlint/lint1/msg_276.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_276.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_276.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,9 @@
-/* $NetBSD: msg_276.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_276.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_276.c"
// Test for message: __%s__ is illegal for type %s [276]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+1: error: __real__ is illegal for type double [276] */
+int real_int = __real__ 0.0;
+/* expect+1: error: __imag__ is illegal for type double [276] */
+int imag_int = __imag__ 0.0;
Index: src/tests/usr.bin/xlint/lint1/msg_276.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_276.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_276.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_276.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_276.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_276.c(6): error: syntax error ':' [249]
+msg_276.c(7): error: __real__ is illegal for type double [276]
+msg_276.c(9): error: __imag__ is illegal for type double [276]
Index: src/tests/usr.bin/xlint/lint1/msg_278.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_278.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_278.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_278.exp:1.2 Sat Feb 27 18:01:29 2021
+++ src/tests/usr.bin/xlint/lint1/msg_278.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_278.c(19): warning: combination of 'enum E' and 'int', arg #1 [278]
-msg_278.c(21): warning: combination of 'int' and 'enum E', arg #1 [278]
+msg_278.c(20): warning: combination of 'enum E' and 'int', arg #1 [278]
+msg_278.c(23): warning: combination of 'int' and 'enum E', arg #1 [278]
Index: src/tests/usr.bin/xlint/lint1/msg_279.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_279.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_279.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_279.exp:1.2 Sat Feb 27 18:01:29 2021
+++ src/tests/usr.bin/xlint/lint1/msg_279.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_279.c(18): warning: combination of 'enum E' and 'int' in return [279]
-msg_279.c(24): warning: combination of 'int' and 'enum E' in return [279]
+msg_279.c(19): warning: combination of 'enum E' and 'int' in return [279]
+msg_279.c(26): warning: combination of 'int' and 'enum E' in return [279]
Index: src/tests/usr.bin/xlint/lint1/msg_281.c
diff -u src/tests/usr.bin/xlint/lint1/msg_281.c:1.2 src/tests/usr.bin/xlint/lint1/msg_281.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_281.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_281.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,10 @@
-/* $NetBSD: msg_281.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_281.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_281.c"
// Test for message: duplicate use of /* %s */ [281]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+1: warning: duplicate use of ** ARGSUSED ** [281] */
+/* ARGSUSED *//* ARGSUSED */
+void args_used(int x)
+{
+}
Index: src/tests/usr.bin/xlint/lint1/msg_281.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_281.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_281.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_281.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_281.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_281.c(6): error: syntax error ':' [249]
+msg_281.c(7): warning: duplicate use of /* ARGSUSED */ [281]
Index: src/tests/usr.bin/xlint/lint1/msg_282.c
diff -u src/tests/usr.bin/xlint/lint1/msg_282.c:1.2 src/tests/usr.bin/xlint/lint1/msg_282.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_282.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_282.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,20 @@
-/* $NetBSD: msg_282.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_282.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_282.c"
// Test for message: must precede function definition: /* %s */ [282]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+1: warning: must precede function definition: ** ARGSUSED ** [282] */
+/* ARGSUSED */
+int argsused;
+
+/* expect+1: warning: must precede function definition: ** VARARGS ** [282] */
+/* VARARGS */
+int varargs;
+
+/* expect+1: warning: must precede function definition: ** PRINTFLIKE ** [282] */
+/* PRINTFLIKE */
+int printflike;
+
+/* expect+1: warning: must precede function definition: ** SCANFLIKE ** [282] */
+/* SCANFLIKE */
+int scanflike;
Index: src/tests/usr.bin/xlint/lint1/msg_282.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_282.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_282.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_282.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_282.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,4 @@
-msg_282.c(6): error: syntax error ':' [249]
+msg_282.c(7): warning: must precede function definition: /* ARGSUSED */ [282]
+msg_282.c(11): warning: must precede function definition: /* VARARGS */ [282]
+msg_282.c(15): warning: must precede function definition: /* PRINTFLIKE */ [282]
+msg_282.c(19): warning: must precede function definition: /* SCANFLIKE */ [282]
Index: src/tests/usr.bin/xlint/lint1/msg_284.c
diff -u src/tests/usr.bin/xlint/lint1/msg_284.c:1.2 src/tests/usr.bin/xlint/lint1/msg_284.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_284.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_284.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,23 @@
-/* $NetBSD: msg_284.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_284.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_284.c"
// Test for message: fallthrough on default statement [284]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* lint1-extra-flags: -h */
+
+void print_int(int);
+
+void
+example(int x)
+{
+ switch (x) {
+ case 1:
+ print_int(x);
+ /* expect+1: warning: fallthrough on default statement [284] */
+ default:
+ print_int(0);
+ /* expect+1: warning: fallthrough on case statement [220] */
+ case 2:
+ print_int(x);
+ }
+}
Index: src/tests/usr.bin/xlint/lint1/msg_284.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_284.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_284.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_284.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_284.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_284.c(6): error: syntax error ':' [249]
+msg_284.c(17): warning: fallthrough on default statement [284]
+msg_284.c(20): warning: fallthrough on case statement [220]
Index: src/tests/usr.bin/xlint/lint1/msg_286.c
diff -u src/tests/usr.bin/xlint/lint1/msg_286.c:1.2 src/tests/usr.bin/xlint/lint1/msg_286.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_286.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_286.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_286.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_286.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_286.c"
// Test for message: function definition is not a prototype [286]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_286.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_286.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_286.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_286.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_286.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_286.c(6): error: syntax error ':' [249]
+msg_286.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_287.c
diff -u src/tests/usr.bin/xlint/lint1/msg_287.c:1.2 src/tests/usr.bin/xlint/lint1/msg_287.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_287.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_287.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_287.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_287.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_287.c"
// Test for message: function declaration is not a prototype [287]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_287.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_287.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_287.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_287.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_287.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_287.c(6): error: syntax error ':' [249]
+msg_287.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_288.c
diff -u src/tests/usr.bin/xlint/lint1/msg_288.c:1.2 src/tests/usr.bin/xlint/lint1/msg_288.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_288.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_288.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,24 @@
-/* $NetBSD: msg_288.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_288.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_288.c"
// Test for message: dubious use of /* VARARGS */ with /* %s */ [288]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* VARARGS */
+int
+just_varargs(char x)
+{
+ /*
+ * No warning here, even though having a VARARGS annotation on a
+ * function that is incompatible to varargs is dubious.
+ */
+ return x;
+}
+
+/* VARARGS */
+/* PRINTFLIKE */
+int
+example(int x)
+/* expect+1: warning: dubious use of ** VARARGS ** with ** PRINTFLIKE ** [288] */
+{
+ return x;
+}
Index: src/tests/usr.bin/xlint/lint1/msg_288.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_288.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_288.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_288.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_288.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_288.c(6): error: syntax error ':' [249]
+msg_288.c(22): warning: dubious use of /* VARARGS */ with /* PRINTFLIKE */ [288]
Index: src/tests/usr.bin/xlint/lint1/msg_290.c
diff -u src/tests/usr.bin/xlint/lint1/msg_290.c:1.2 src/tests/usr.bin/xlint/lint1/msg_290.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_290.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_290.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,15 @@
-/* $NetBSD: msg_290.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_290.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_290.c"
// Test for message: static function %s declared but not defined [290]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+1: warning: static function only_declared declared but not defined [290] */
+static void only_declared(void);
+static void declared_and_called(void);
+
+void
+use_function(void)
+{
+ /* expect+1: error: static function called but not defined: declared_and_called() [225] */
+ declared_and_called();
+}
Index: src/tests/usr.bin/xlint/lint1/msg_290.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_290.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_290.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_290.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_290.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_290.c(6): error: syntax error ':' [249]
+msg_290.c(7): warning: static function only_declared declared but not defined [290]
+msg_290.c(14): error: static function called but not defined: declared_and_called() [225]
Index: src/tests/usr.bin/xlint/lint1/msg_291.c
diff -u src/tests/usr.bin/xlint/lint1/msg_291.c:1.2 src/tests/usr.bin/xlint/lint1/msg_291.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_291.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_291.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,10 @@
-/* $NetBSD: msg_291.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_291.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_291.c"
// Test for message: invalid multibyte character [291]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+char foreign[] = "\x80\xC3\x76";
+
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_291.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_291.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_291.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_291.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_291.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_291.c(6): error: syntax error ':' [249]
+msg_291.c(9): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_293.c
diff -u src/tests/usr.bin/xlint/lint1/msg_293.c:1.2 src/tests/usr.bin/xlint/lint1/msg_293.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_293.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_293.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,10 @@
-/* $NetBSD: msg_293.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_293.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_293.c"
// Test for message: argument %d must be 'char *' for PRINTFLIKE/SCANFLIKE [293]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* 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 */
+void my_printf(int msgid, ...) {
+}
Index: src/tests/usr.bin/xlint/lint1/msg_293.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_293.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_293.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_293.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_293.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_293.c(6): error: syntax error ':' [249]
+msg_293.c(9): warning: argument 1 must be 'char *' for PRINTFLIKE/SCANFLIKE [293]
+msg_293.c(9): warning: argument 'msgid' unused in function 'my_printf' [231]
Index: src/tests/usr.bin/xlint/lint1/msg_294.c
diff -u src/tests/usr.bin/xlint/lint1/msg_294.c:1.2 src/tests/usr.bin/xlint/lint1/msg_294.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_294.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_294.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_294.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_294.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_294.c"
// Test for message: multi-character character constant [294]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* expect+2: warning: multi-character character constant [294] */
+/* expect+1: warning: initializer does not fit [178] */
+char ch = '1234';
Index: src/tests/usr.bin/xlint/lint1/msg_294.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_294.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_294.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_294.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_294.exp Thu Jun 16 21:24:41 2022
@@ -1 +1,2 @@
-msg_294.c(6): error: syntax error ':' [249]
+msg_294.c(8): warning: multi-character character constant [294]
+msg_294.c(8): warning: initializer does not fit [178]
Index: src/tests/usr.bin/xlint/lint1/msg_295.c
diff -u src/tests/usr.bin/xlint/lint1/msg_295.c:1.2 src/tests/usr.bin/xlint/lint1/msg_295.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_295.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_295.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,8 @@
-/* $NetBSD: msg_295.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_295.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_295.c"
// Test for message: conversion of '%s' to '%s' is out of range, arg #%d [295]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
+/* expect+1: error: syntax error ':' [249] */
+TODO: "Add example code that triggers the above message."
TODO: "Add example code that almost triggers the above message."
Index: src/tests/usr.bin/xlint/lint1/msg_295.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_295.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_295.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_295.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_295.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_295.c(6): error: syntax error ':' [249]
+msg_295.c(7): error: syntax error ':' [249]
Index: src/tests/usr.bin/xlint/lint1/msg_296.c
diff -u src/tests/usr.bin/xlint/lint1/msg_296.c:1.2 src/tests/usr.bin/xlint/lint1/msg_296.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_296.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_296.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,13 @@
-/* $NetBSD: msg_296.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_296.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_296.c"
// Test for message: conversion of negative constant to unsigned type, arg #%d [296]
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+void take_unsigned_int(unsigned int);
+
+void
+example(void)
+{
+ /* expect+1: warning: conversion of negative constant to unsigned type, arg #1 [296] */
+ take_unsigned_int(-3);
+}
Index: src/tests/usr.bin/xlint/lint1/msg_296.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_296.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_296.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_296.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_296.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_296.c(6): error: syntax error ':' [249]
+msg_296.c(12): warning: conversion of negative constant to unsigned type, arg #1 [296]
Index: src/tests/usr.bin/xlint/lint1/msg_299.c
diff -u src/tests/usr.bin/xlint/lint1/msg_299.c:1.2 src/tests/usr.bin/xlint/lint1/msg_299.c:1.3
--- src/tests/usr.bin/xlint/lint1/msg_299.c:1.2 Sun Feb 21 09:07:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_299.c Thu Jun 16 21:24:41 2022
@@ -1,7 +1,15 @@
-/* $NetBSD: msg_299.c,v 1.2 2021/02/21 09:07:58 rillig Exp $ */
+/* $NetBSD: msg_299.c,v 1.3 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_299.c"
-// Test for message: prototype does not match old style definition, arg #%d [299]
+/* Test for message: prototype does not match old style definition, arg #%d [299] */
-TODO: "Add example code that triggers the above message." /* expect: 249 */
-TODO: "Add example code that almost triggers the above message."
+/* lint1-flags: -w */
+
+old_style(x)
+ double x;
+{
+ return x > 0.0;
+}
+
+/* expect+1: error: prototype does not match old style definition, arg #1 [299] */
+void old_style(char ch);
Index: src/tests/usr.bin/xlint/lint1/msg_299.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_299.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_299.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_299.exp:1.2 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_299.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_299.c(6): error: syntax error ':' [249]
+msg_299.c(15): error: prototype does not match old style definition, arg #1 [299]
Index: src/tests/usr.bin/xlint/lint1/msg_204.c
diff -u src/tests/usr.bin/xlint/lint1/msg_204.c:1.6 src/tests/usr.bin/xlint/lint1/msg_204.c:1.7
--- src/tests/usr.bin/xlint/lint1/msg_204.c:1.6 Mon Apr 5 01:35:34 2021
+++ src/tests/usr.bin/xlint/lint1/msg_204.c Thu Jun 16 21:24:41 2022
@@ -1,8 +1,11 @@
-/* $NetBSD: msg_204.c,v 1.6 2021/04/05 01:35:34 rillig Exp $ */
+/* $NetBSD: msg_204.c,v 1.7 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_204.c"
// Test for message: controlling expressions must have scalar type [204]
+/* Suppress message "argument '%s' unused in function '%s'". */
+/* lint1-extra-flags: -X 231 */
+
extern void
extern_function(void);
@@ -84,18 +87,26 @@ void if_enum(enum e e) { if (e) return
/* C99 6.2.5p20 */
void if_array(struct arr arr) { if (arr.arr) return; }
-void if_struct(struct s s) { if (s) return; } /* expect: 204 *//* expect: 231 */
-void if_union(union u u) { if (u) return; } /* expect: 204 *//* expect: 231 */
+/* expect+1: error: controlling expressions must have scalar type [204] */
+void if_struct(struct s s) { if (s) return; }
+/* expect+1: error: controlling expressions must have scalar type [204] */
+void if_union(union u u) { if (u) return; }
void if_function(void) { if (if_function) return; }
void if_pointer(void *p) { if (p) return; }
/* C99 6.8.5 */
-void while_struct(struct s s) { while (s) return; } /* expect: 204 *//* expect: 231 */
-void for_struct(struct s s) { for (;s;) return; } /* expect: 204 *//* expect: 223 *//* expect: 231 */
-void do_while_struct(struct s s) { do { return; } while (s); } /* expect: 204 *//* expect: 231 */
+/* expect+1: error: controlling expressions must have scalar type [204] */
+void while_struct(struct s s) { while (s) return; }
+/* expect+2: error: controlling expressions must have scalar type [204] */
+/* expect+1: warning: end-of-loop code not reached [223] */
+void for_struct(struct s s) { for (;s;) return; }
+/* expect+1: error: controlling expressions must have scalar type [204] */
+void do_while_struct(struct s s) { do { return; } while (s); }
/*
* C99 6.5.15 for the '?:' operator does not explicitly mention that the
* controlling expression must have a scalar type, curiously.
*/
-int conditional_struct(struct s s) { return s ? 1 : 2; } /* expect: 170 *//* expect: 214 *//* expect: 231 */
+/* expect+2: error: first operand must have scalar type, op ? : [170] */
+/* expect+1: warning: function 'conditional_struct' expects to return value [214] */
+int conditional_struct(struct s s) { return s ? 1 : 2; }
Index: src/tests/usr.bin/xlint/lint1/msg_204.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_204.exp:1.6 src/tests/usr.bin/xlint/lint1/msg_204.exp:1.7
--- src/tests/usr.bin/xlint/lint1/msg_204.exp:1.6 Tue Aug 3 18:44:33 2021
+++ src/tests/usr.bin/xlint/lint1/msg_204.exp Thu Jun 16 21:24:41 2022
@@ -1,14 +1,8 @@
-msg_204.c(87): error: controlling expressions must have scalar type [204]
-msg_204.c(87): warning: argument 's' unused in function 'if_struct' [231]
-msg_204.c(88): error: controlling expressions must have scalar type [204]
-msg_204.c(88): warning: argument 'u' unused in function 'if_union' [231]
+msg_204.c(91): error: controlling expressions must have scalar type [204]
msg_204.c(93): error: controlling expressions must have scalar type [204]
-msg_204.c(93): warning: argument 's' unused in function 'while_struct' [231]
-msg_204.c(94): error: controlling expressions must have scalar type [204]
-msg_204.c(94): warning: end-of-loop code not reached [223]
-msg_204.c(94): warning: argument 's' unused in function 'for_struct' [231]
-msg_204.c(95): error: controlling expressions must have scalar type [204]
-msg_204.c(95): warning: argument 's' unused in function 'do_while_struct' [231]
-msg_204.c(101): error: first operand must have scalar type, op ? : [170]
-msg_204.c(101): warning: function 'conditional_struct' expects to return value [214]
-msg_204.c(101): warning: argument 's' unused in function 'conditional_struct' [231]
+msg_204.c(99): error: controlling expressions must have scalar type [204]
+msg_204.c(102): error: controlling expressions must have scalar type [204]
+msg_204.c(102): warning: end-of-loop code not reached [223]
+msg_204.c(104): error: controlling expressions must have scalar type [204]
+msg_204.c(112): error: first operand must have scalar type, op ? : [170]
+msg_204.c(112): warning: function 'conditional_struct' expects to return value [214]
Index: src/tests/usr.bin/xlint/lint1/msg_220.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_220.exp:1.6 src/tests/usr.bin/xlint/lint1/msg_220.exp:1.7
--- src/tests/usr.bin/xlint/lint1/msg_220.exp:1.6 Sun Aug 29 09:29:32 2021
+++ src/tests/usr.bin/xlint/lint1/msg_220.exp Thu Jun 16 21:24:41 2022
@@ -1,5 +1,5 @@
-msg_220.c(19): warning: fallthrough on case statement [220]
-msg_220.c(22): warning: fallthrough on default statement [284]
-msg_220.c(62): warning: fallthrough on case statement [220]
-msg_220.c(66): warning: fallthrough on case statement [220]
-msg_220.c(71): warning: fallthrough on case statement [220]
+msg_220.c(20): warning: fallthrough on case statement [220]
+msg_220.c(24): warning: fallthrough on default statement [284]
+msg_220.c(64): warning: fallthrough on case statement [220]
+msg_220.c(68): warning: fallthrough on case statement [220]
+msg_220.c(73): warning: fallthrough on case statement [220]
Index: src/tests/usr.bin/xlint/lint1/msg_210.c
diff -u src/tests/usr.bin/xlint/lint1/msg_210.c:1.5 src/tests/usr.bin/xlint/lint1/msg_210.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_210.c:1.5 Sun Feb 28 12:40:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_210.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_210.c,v 1.5 2021/02/28 12:40:00 rillig Exp $ */
+/* $NetBSD: msg_210.c,v 1.6 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_210.c"
// Test for message: enum type mismatch between '%s' and '%s' in initialization [210]
@@ -20,6 +20,8 @@ typedef enum {
} D;
enum A a1 = A1;
-enum A a2 = B1; /* expect: 210 */
+/* expect+1: warning: enum type mismatch between 'enum A' and 'enum B' in initialization [210] */
+enum A a2 = B1;
C c1 = C1;
-C c2 = D1; /* expect: 210 */
+/* expect+1: warning: enum type mismatch between 'enum typedef C' and 'enum typedef D' in initialization [210] */
+C c2 = D1;
Index: src/tests/usr.bin/xlint/lint1/msg_210.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_210.exp:1.5 src/tests/usr.bin/xlint/lint1/msg_210.exp:1.6
--- src/tests/usr.bin/xlint/lint1/msg_210.exp:1.5 Sun Feb 28 02:29:28 2021
+++ src/tests/usr.bin/xlint/lint1/msg_210.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_210.c(23): warning: enum type mismatch between 'enum A' and 'enum B' in initialization [210]
-msg_210.c(25): warning: enum type mismatch between 'enum typedef C' and 'enum typedef D' in initialization [210]
+msg_210.c(24): warning: enum type mismatch between 'enum A' and 'enum B' in initialization [210]
+msg_210.c(27): warning: enum type mismatch between 'enum typedef C' and 'enum typedef D' in initialization [210]
Index: src/tests/usr.bin/xlint/lint1/msg_229.c
diff -u src/tests/usr.bin/xlint/lint1/msg_229.c:1.5 src/tests/usr.bin/xlint/lint1/msg_229.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_229.c:1.5 Sun Feb 28 01:20:54 2021
+++ src/tests/usr.bin/xlint/lint1/msg_229.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_229.c,v 1.5 2021/02/28 01:20:54 rillig Exp $ */
+/* $NetBSD: msg_229.c,v 1.6 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_229.c"
// Test for message: converting '%s' to '%s' is questionable [229]
@@ -8,11 +8,13 @@ typedef double (*unary_operator)(double)
int *
to_int_pointer(unary_operator op)
{
- return (int *)op; /* expect: 229 */
+ /* expect+1: warning: converting 'pointer to function(double) returning double' to 'pointer to int' is questionable [229] */
+ return (int *)op;
}
unary_operator
to_function_pointer(int *p)
{
- return (unary_operator)p; /* expect: 229 */
+ /* expect+1: warning: converting 'pointer to int' to 'pointer to function(double) returning double' is questionable [229] */
+ return (unary_operator)p;
}
Index: src/tests/usr.bin/xlint/lint1/msg_239.c
diff -u src/tests/usr.bin/xlint/lint1/msg_239.c:1.5 src/tests/usr.bin/xlint/lint1/msg_239.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_239.c:1.5 Mon Apr 5 01:35:34 2021
+++ src/tests/usr.bin/xlint/lint1/msg_239.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_239.c,v 1.5 2021/04/05 01:35:34 rillig Exp $ */
+/* $NetBSD: msg_239.c,v 1.6 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_239.c"
// Test for message: constant argument to '!' [239]
@@ -10,8 +10,12 @@ example(int n)
{
_Bool b;
- b = !0; /* expect: constant in conditional context *//* expect: 239 */
- b = !1; /* expect: constant in conditional context *//* expect: 239 */
+ /* expect+2: warning: constant in conditional context [161] */
+ /* expect+1: warning: constant argument to '!' [239] */
+ b = !0;
+ /* expect+2: warning: constant in conditional context [161] */
+ /* expect+1: warning: constant argument to '!' [239] */
+ b = !1;
b = !(n > 1);
return b;
Index: src/tests/usr.bin/xlint/lint1/msg_277.c
diff -u src/tests/usr.bin/xlint/lint1/msg_277.c:1.5 src/tests/usr.bin/xlint/lint1/msg_277.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_277.c:1.5 Mon Aug 16 20:11:03 2021
+++ src/tests/usr.bin/xlint/lint1/msg_277.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_277.c,v 1.5 2021/08/16 20:11:03 rillig Exp $ */
+/* $NetBSD: msg_277.c,v 1.6 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_277.c"
// Test for message: initialization of '%s' with '%s' [277]
@@ -16,8 +16,10 @@ void
example(enum E e, int i)
{
enum E e2 = e;
- enum E e3 = { i }; /* expect: 277 */
- int i2 = { e }; /* expect: 277 */
+ /* expect+1: warning: initialization of 'enum E' with 'int' [277] */
+ enum E e3 = { i };
+ /* expect+1: warning: initialization of 'int' with 'enum E' [277] */
+ int i2 = { e };
int i3 = i;
sink_enum(e2);
Index: src/tests/usr.bin/xlint/lint1/msg_216.c
diff -u src/tests/usr.bin/xlint/lint1/msg_216.c:1.3 src/tests/usr.bin/xlint/lint1/msg_216.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_216.c:1.3 Sun Apr 24 20:08:23 2022
+++ src/tests/usr.bin/xlint/lint1/msg_216.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_216.c,v 1.3 2022/04/24 20:08:23 rillig Exp $ */
+/* $NetBSD: msg_216.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_216.c"
// Test for message: function %s has return (e); and return; [216]
@@ -10,4 +10,5 @@ random(int n)
return -3;
if (n < 2)
return;
-} /* expect: 216 */
+}
+/* expect-1: warning: function random has return (e); and return; [216] */
Index: src/tests/usr.bin/xlint/lint1/msg_221.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_221.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_221.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_221.exp:1.3 Mon Feb 22 15:09:50 2021
+++ src/tests/usr.bin/xlint/lint1/msg_221.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_221.c(10): warning: initialization of unsigned with negative constant [221]
+msg_221.c(11): warning: initialization of unsigned with negative constant [221]
Index: src/tests/usr.bin/xlint/lint1/msg_224.c
diff -u src/tests/usr.bin/xlint/lint1/msg_224.c:1.3 src/tests/usr.bin/xlint/lint1/msg_224.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_224.c:1.3 Mon Apr 5 01:35:34 2021
+++ src/tests/usr.bin/xlint/lint1/msg_224.c Thu Jun 16 21:24:41 2022
@@ -1,11 +1,17 @@
-/* $NetBSD: msg_224.c,v 1.3 2021/04/05 01:35:34 rillig Exp $ */
+/* $NetBSD: msg_224.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_224.c"
// Test for message: cannot recover from previous errors [224]
-void example1(void) { "syntax" error; } /* expect: 249 */
-void example2(void) { "syntax" error; } /* expect: 249 */
-void example3(void) { "syntax" error; } /* expect: 249 */
-void example4(void) { "syntax" error; } /* expect: 249 */
-void example5(void) { "syntax" error; } /* expect: 249 *//* expect: 224 */
+/* expect+1: error: syntax error 'error' [249] */
+void example1(void) { "syntax" error; }
+/* expect+1: error: syntax error 'error' [249] */
+void example2(void) { "syntax" error; }
+/* expect+1: error: syntax error 'error' [249] */
+void example3(void) { "syntax" error; }
+/* expect+1: error: syntax error 'error' [249] */
+void example4(void) { "syntax" error; }
+/* expect+2: error: syntax error 'error' [249] */
+/* expect+1: error: cannot recover from previous errors [224] */
+void example5(void) { "syntax" error; }
void example6(void) { "syntax" error; }
Index: src/tests/usr.bin/xlint/lint1/msg_224.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_224.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_224.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_224.exp:1.3 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_224.exp Thu Jun 16 21:24:41 2022
@@ -1,6 +1,6 @@
-msg_224.c(6): error: syntax error 'error' [249]
msg_224.c(7): error: syntax error 'error' [249]
-msg_224.c(8): error: syntax error 'error' [249]
msg_224.c(9): error: syntax error 'error' [249]
-msg_224.c(10): error: syntax error 'error' [249]
-msg_224.c(10): error: cannot recover from previous errors [224]
+msg_224.c(11): error: syntax error 'error' [249]
+msg_224.c(13): error: syntax error 'error' [249]
+msg_224.c(16): error: syntax error 'error' [249]
+msg_224.c(16): error: cannot recover from previous errors [224]
Index: src/tests/usr.bin/xlint/lint1/msg_225.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_225.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_225.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_225.exp:1.3 Sun Mar 21 20:45:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_225.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_225.c(13): error: static function called but not defined: undefined() [225]
+msg_225.c(14): error: static function called but not defined: undefined() [225]
Index: src/tests/usr.bin/xlint/lint1/msg_229.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_229.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_229.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_229.exp:1.3 Sun Feb 28 01:06:57 2021
+++ src/tests/usr.bin/xlint/lint1/msg_229.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_229.c(11): warning: converting 'pointer to function(double) returning double' to 'pointer to int' is questionable [229]
-msg_229.c(17): warning: converting 'pointer to int' to 'pointer to function(double) returning double' is questionable [229]
+msg_229.c(12): warning: converting 'pointer to function(double) returning double' to 'pointer to int' is questionable [229]
+msg_229.c(19): warning: converting 'pointer to int' to 'pointer to function(double) returning double' is questionable [229]
Index: src/tests/usr.bin/xlint/lint1/msg_231.c
diff -u src/tests/usr.bin/xlint/lint1/msg_231.c:1.3 src/tests/usr.bin/xlint/lint1/msg_231.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_231.c:1.3 Fri Apr 9 20:12:01 2021
+++ src/tests/usr.bin/xlint/lint1/msg_231.c Thu Jun 16 21:24:41 2022
@@ -1,10 +1,12 @@
-/* $NetBSD: msg_231.c,v 1.3 2021/04/09 20:12:01 rillig Exp $ */
+/* $NetBSD: msg_231.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_231.c"
// Test for message: argument '%s' unused in function '%s' [231]
+/* expect+2: warning: argument 'param' unused in function 'example' [231] */
void
-example(int param) /* expect: 231 */
+example(int param)
{
- int local; /* expect: 192 */
+ /* expect+1: warning: 'local' unused in function 'example' [192] */
+ int local;
}
Index: src/tests/usr.bin/xlint/lint1/msg_231.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_231.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_231.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_231.exp:1.3 Fri Apr 9 20:12:01 2021
+++ src/tests/usr.bin/xlint/lint1/msg_231.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_231.c(9): warning: 'local' unused in function 'example' [192]
-msg_231.c(7): warning: argument 'param' unused in function 'example' [231]
+msg_231.c(11): warning: 'local' unused in function 'example' [192]
+msg_231.c(8): warning: argument 'param' unused in function 'example' [231]
Index: src/tests/usr.bin/xlint/lint1/msg_238.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_238.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_238.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_238.exp:1.3 Mon Mar 29 22:24:34 2021
+++ src/tests/usr.bin/xlint/lint1/msg_238.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_238.c(16): warning: initialization of union is illegal in traditional C [238]
+msg_238.c(17): warning: initialization of union is illegal in traditional C [238]
Index: src/tests/usr.bin/xlint/lint1/msg_262.c
diff -u src/tests/usr.bin/xlint/lint1/msg_262.c:1.3 src/tests/usr.bin/xlint/lint1/msg_262.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_262.c:1.3 Tue Jun 29 07:17:43 2021
+++ src/tests/usr.bin/xlint/lint1/msg_262.c Thu Jun 16 21:24:41 2022
@@ -1,8 +1,9 @@
-/* $NetBSD: msg_262.c,v 1.3 2021/06/29 07:17:43 rillig Exp $ */
+/* $NetBSD: msg_262.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_262.c"
/* Test for message: \" inside character constants undefined in traditional C [262] */
/* lint1-flags: -tw */
-char msg = '\"'; /* expect: [262] */
+/* expect+1: warning: \" inside character constants undefined in traditional C [262] */
+char msg = '\"';
Index: src/tests/usr.bin/xlint/lint1/msg_262.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_262.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_262.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_262.exp:1.3 Tue Jun 29 07:17:43 2021
+++ src/tests/usr.bin/xlint/lint1/msg_262.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_262.c(8): warning: \" inside character constants undefined in traditional C [262]
+msg_262.c(9): warning: \" inside character constants undefined in traditional C [262]
Index: src/tests/usr.bin/xlint/lint1/msg_263.c
diff -u src/tests/usr.bin/xlint/lint1/msg_263.c:1.3 src/tests/usr.bin/xlint/lint1/msg_263.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_263.c:1.3 Tue Jun 29 07:17:43 2021
+++ src/tests/usr.bin/xlint/lint1/msg_263.c Thu Jun 16 21:24:41 2022
@@ -1,8 +1,9 @@
-/* $NetBSD: msg_263.c,v 1.3 2021/06/29 07:17:43 rillig Exp $ */
+/* $NetBSD: msg_263.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_263.c"
/* Test for message: \? undefined in traditional C [263] */
/* lint1-flags: -tw */
-char ch = '\?'; /* expect: [263] */
+/* expect+1: warning: \? undefined in traditional C [263] */
+char ch = '\?';
Index: src/tests/usr.bin/xlint/lint1/msg_263.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_263.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_263.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_263.exp:1.3 Tue Jun 29 07:17:43 2021
+++ src/tests/usr.bin/xlint/lint1/msg_263.exp Thu Jun 16 21:24:41 2022
@@ -1 +1 @@
-msg_263.c(8): warning: \? undefined in traditional C [263]
+msg_263.c(9): warning: \? undefined in traditional C [263]
Index: src/tests/usr.bin/xlint/lint1/msg_267.c
diff -u src/tests/usr.bin/xlint/lint1/msg_267.c:1.3 src/tests/usr.bin/xlint/lint1/msg_267.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_267.c:1.3 Fri Apr 9 16:37:18 2021
+++ src/tests/usr.bin/xlint/lint1/msg_267.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_267.c,v 1.3 2021/04/09 16:37:18 rillig Exp $ */
+/* $NetBSD: msg_267.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_267.c"
// Test for message: shift equal to size of object [267]
@@ -6,11 +6,13 @@
int
shr32(unsigned int x)
{
- return x >> 32; /* expect: 267 */
+ /* expect+1: warning: shift equal to size of object [267] */
+ return x >> 32;
}
int
shl32(unsigned int x)
{
- return x << 32; /* expect: 267 */
+ /* expect+1: warning: shift equal to size of object [267] */
+ return x << 32;
}
Index: src/tests/usr.bin/xlint/lint1/msg_267.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_267.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_267.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_267.exp:1.3 Fri Apr 9 16:37:18 2021
+++ src/tests/usr.bin/xlint/lint1/msg_267.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_267.c(9): warning: shift equal to size of object [267]
-msg_267.c(15): warning: shift equal to size of object [267]
+msg_267.c(10): warning: shift equal to size of object [267]
+msg_267.c(17): warning: shift equal to size of object [267]
Index: src/tests/usr.bin/xlint/lint1/msg_277.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_277.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_277.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_277.exp:1.3 Mon Aug 16 20:11:03 2021
+++ src/tests/usr.bin/xlint/lint1/msg_277.exp Thu Jun 16 21:24:41 2022
@@ -1,3 +1,3 @@
-msg_277.c(19): warning: initialization of 'enum E' with 'int' [277]
-msg_277.c(20): warning: initialization of 'int' with 'enum E' [277]
-msg_277.c(30): warning: initialization of 'enum E' with 'int' [277]
+msg_277.c(20): warning: initialization of 'enum E' with 'int' [277]
+msg_277.c(22): warning: initialization of 'int' with 'enum E' [277]
+msg_277.c(32): warning: initialization of 'enum E' with 'int' [277]
Index: src/tests/usr.bin/xlint/lint1/msg_278.c
diff -u src/tests/usr.bin/xlint/lint1/msg_278.c:1.3 src/tests/usr.bin/xlint/lint1/msg_278.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_278.c:1.3 Sat Feb 27 18:01:29 2021
+++ src/tests/usr.bin/xlint/lint1/msg_278.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_278.c,v 1.3 2021/02/27 18:01:29 rillig Exp $ */
+/* $NetBSD: msg_278.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_278.c"
// Test for message: combination of '%s' and '%s', arg #%d [278]
@@ -16,8 +16,10 @@ void
example(enum E e, int i)
{
sink_enum(e);
- sink_enum(i); /* expect: 278 */
+ /* expect+1: warning: combination of 'enum E' and 'int', arg #1 [278] */
+ sink_enum(i);
- sink_int(e); /* expect: 278 */
+ /* expect+1: warning: combination of 'int' and 'enum E', arg #1 [278] */
+ sink_int(e);
sink_int(i);
}
Index: src/tests/usr.bin/xlint/lint1/msg_279.c
diff -u src/tests/usr.bin/xlint/lint1/msg_279.c:1.3 src/tests/usr.bin/xlint/lint1/msg_279.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_279.c:1.3 Sat Feb 27 18:01:29 2021
+++ src/tests/usr.bin/xlint/lint1/msg_279.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_279.c,v 1.3 2021/02/27 18:01:29 rillig Exp $ */
+/* $NetBSD: msg_279.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_279.c"
// Test for message: combination of '%s' and '%s' in return [279]
@@ -15,11 +15,13 @@ void sink_int(int);
enum E
returning_enum(int i)
{
- return i; /* expect: 279 */
+ /* expect+1: warning: combination of 'enum E' and 'int' in return [279] */
+ return i;
}
int
returning_int(enum E e)
{
- return e; /* expect: 279 */
+ /* expect+1: warning: combination of 'int' and 'enum E' in return [279] */
+ return e;
}
Index: src/tests/usr.bin/xlint/lint1/msg_285.c
diff -u src/tests/usr.bin/xlint/lint1/msg_285.c:1.3 src/tests/usr.bin/xlint/lint1/msg_285.c:1.4
--- src/tests/usr.bin/xlint/lint1/msg_285.c:1.3 Tue Jun 15 08:48:49 2021
+++ src/tests/usr.bin/xlint/lint1/msg_285.c Thu Jun 16 21:24:41 2022
@@ -1,15 +1,17 @@
-/* $NetBSD: msg_285.c,v 1.3 2021/06/15 08:48:49 rillig Exp $ */
+/* $NetBSD: msg_285.c,v 1.4 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_285.c"
// Test for message: prototype declaration [285]
/* lint1-extra-flags: -r */
-void function(int, int, int); /* expect: 285 */
+/* expect+1: prototype declaration [285] */
+void function(int, int, int);
/* ARGSUSED */
extern void
function(a, b)
int a, b;
-{ /* expect: 3 declared, 2 defined */
+/* expect+1: error: parameter mismatch: 3 declared, 2 defined [51] */
+{
}
Index: src/tests/usr.bin/xlint/lint1/msg_285.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_285.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_285.exp:1.4
--- src/tests/usr.bin/xlint/lint1/msg_285.exp:1.3 Tue Jun 15 08:48:49 2021
+++ src/tests/usr.bin/xlint/lint1/msg_285.exp Thu Jun 16 21:24:41 2022
@@ -1,2 +1,2 @@
-msg_285.c(14): error: parameter mismatch: 3 declared, 2 defined [51]
-msg_285.c(8): prototype declaration [285]
+msg_285.c(16): error: parameter mismatch: 3 declared, 2 defined [51]
+msg_285.c(9): prototype declaration [285]
Index: src/tests/usr.bin/xlint/lint1/msg_217.c
diff -u src/tests/usr.bin/xlint/lint1/msg_217.c:1.9 src/tests/usr.bin/xlint/lint1/msg_217.c:1.10
--- src/tests/usr.bin/xlint/lint1/msg_217.c:1.9 Sun Mar 21 15:24:56 2021
+++ src/tests/usr.bin/xlint/lint1/msg_217.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_217.c,v 1.9 2021/03/21 15:24:56 rillig Exp $ */
+/* $NetBSD: msg_217.c,v 1.10 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_217.c"
// Test for message: function %s falls off bottom without returning value [217]
@@ -8,7 +8,8 @@ random(int n)
{
if (n < 0)
return -3;
-} /* expect: 217 */
+}
+/* expect-1: warning: function random falls off bottom without returning value [217] */
/*
* The pattern 'do { } while (0)' is often used in statement macros.
@@ -62,7 +63,9 @@ unreachable_continue_falls_through(void)
{
for (;;) {
if (0)
- continue; /* expect: statement not reached */
+ /* expect+1: warning: statement not reached [193] */
+ continue;
break;
}
-} /* expect: 217 */
+}
+/* expect-1: warning: function unreachable_continue_falls_through falls off bottom without returning value [217] */
Index: src/tests/usr.bin/xlint/lint1/msg_217.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_217.exp:1.8 src/tests/usr.bin/xlint/lint1/msg_217.exp:1.9
--- src/tests/usr.bin/xlint/lint1/msg_217.exp:1.8 Sun Mar 21 15:24:56 2021
+++ src/tests/usr.bin/xlint/lint1/msg_217.exp Thu Jun 16 21:24:41 2022
@@ -1,3 +1,3 @@
msg_217.c(11): warning: function random falls off bottom without returning value [217]
-msg_217.c(65): warning: statement not reached [193]
-msg_217.c(68): warning: function unreachable_continue_falls_through falls off bottom without returning value [217]
+msg_217.c(67): warning: statement not reached [193]
+msg_217.c(70): warning: function unreachable_continue_falls_through falls off bottom without returning value [217]
Index: src/tests/usr.bin/xlint/lint1/msg_249.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_249.exp:1.8 src/tests/usr.bin/xlint/lint1/msg_249.exp:1.9
--- src/tests/usr.bin/xlint/lint1/msg_249.exp:1.8 Tue May 31 00:35:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_249.exp Thu Jun 16 21:24:41 2022
@@ -1,9 +1,9 @@
msg_249.c(10): error: syntax error '"' [249]
msg_249.c(19): error: syntax error '"' [249]
msg_249.c(33): warning: statement not reached [193]
-msg_249.c(34): error: syntax error ')' [249]
-msg_249.c(59): error: syntax error 'member without type' [249]
-msg_249.c(69): warning: label 'unused_label' unused in function 'access_declaration_after_syntax_error' [232]
-msg_249.c(72): error: non-constant initializer [177]
-msg_249.c(83): warning: label 'unused_label' unused in function 'try_to_recover' [232]
-msg_249.c(86): error: non-constant initializer [177]
+msg_249.c(35): error: syntax error ')' [249]
+msg_249.c(60): error: syntax error 'member without type' [249]
+msg_249.c(70): warning: label 'unused_label' unused in function 'access_declaration_after_syntax_error' [232]
+msg_249.c(73): error: non-constant initializer [177]
+msg_249.c(84): warning: label 'unused_label' unused in function 'try_to_recover' [232]
+msg_249.c(87): error: non-constant initializer [177]
Index: src/tests/usr.bin/xlint/lint1/msg_220.c
diff -u src/tests/usr.bin/xlint/lint1/msg_220.c:1.7 src/tests/usr.bin/xlint/lint1/msg_220.c:1.8
--- src/tests/usr.bin/xlint/lint1/msg_220.c:1.7 Sun Aug 29 09:29:32 2021
+++ src/tests/usr.bin/xlint/lint1/msg_220.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_220.c,v 1.7 2021/08/29 09:29:32 rillig Exp $ */
+/* $NetBSD: msg_220.c,v 1.8 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_220.c"
// Test for message: fallthrough on case statement [220]
@@ -16,10 +16,12 @@ example(int n)
case 3:
case 5:
println("odd");
- case 2: /* expect: 220 */
+ /* expect+1: warning: fallthrough on case statement [220] */
+ case 2:
case 7:
println("prime");
- default: /* expect: 284 */
+ /* expect+1: warning: fallthrough on default statement [284] */
+ default:
println("number");
}
}
Index: src/tests/usr.bin/xlint/lint1/msg_241.c
diff -u src/tests/usr.bin/xlint/lint1/msg_241.c:1.7 src/tests/usr.bin/xlint/lint1/msg_241.c:1.8
--- src/tests/usr.bin/xlint/lint1/msg_241.c:1.7 Sat Oct 30 22:04:42 2021
+++ src/tests/usr.bin/xlint/lint1/msg_241.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_241.c,v 1.7 2021/10/30 22:04:42 rillig Exp $ */
+/* $NetBSD: msg_241.c,v 1.8 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_241.c"
// Test for message: dubious operation on enum, op %s [241]
@@ -27,21 +27,36 @@ example(void)
{
enum color c = RED;
- sink_bool(!c); /* expect: 241 */
- sink_color(~c); /* expect: 241 */
- ++c; /* expect: 241 */
- --c; /* expect: 241 */
- c++; /* expect: 241 */
- c--; /* expect: 241 */
- sink_color(+c); /* expect: 241 */
- sink_color(-c); /* expect: 241 */
- sink_color(c * c); /* expect: 241 */
- sink_color(c / c); /* expect: 241 */
- sink_color(c % c); /* expect: 241 */
- sink_color(c + c); /* expect: 241 */
- sink_color(c - c); /* expect: 241 */
- sink_color(c << c); /* expect: 241 */
- sink_color(c >> c); /* expect: 241 */
+ /* expect+1: warning: dubious operation on enum, op ! [241] */
+ sink_bool(!c);
+ /* expect+1: warning: dubious operation on enum, op ~ [241] */
+ sink_color(~c);
+ /* expect+1: warning: dubious operation on enum, op ++x [241] */
+ ++c;
+ /* expect+1: warning: dubious operation on enum, op --x [241] */
+ --c;
+ /* expect+1: warning: dubious operation on enum, op x++ [241] */
+ c++;
+ /* expect+1: warning: dubious operation on enum, op x-- [241] */
+ c--;
+ /* expect+1: warning: dubious operation on enum, op + [241] */
+ sink_color(+c);
+ /* expect+1: warning: dubious operation on enum, op - [241] */
+ sink_color(-c);
+ /* expect+1: warning: dubious operation on enum, op * [241] */
+ sink_color(c * c);
+ /* expect+1: warning: dubious operation on enum, op / [241] */
+ sink_color(c / c);
+ /* expect+1: warning: dubious operation on enum, op % [241] */
+ sink_color(c % c);
+ /* expect+1: warning: dubious operation on enum, op + [241] */
+ sink_color(c + c);
+ /* expect+1: warning: dubious operation on enum, op - [241] */
+ sink_color(c - c);
+ /* expect+1: warning: dubious operation on enum, op << [241] */
+ sink_color(c << c);
+ /* expect+1: warning: dubious operation on enum, op >> [241] */
+ sink_color(c >> c);
sink_bool(c < c);
sink_bool(c <= c);
@@ -50,28 +65,44 @@ example(void)
sink_bool(c == c);
sink_bool(c != c);
- sink_color(c & c); /* expect: 241 */
- sink_color(c ^ c); /* expect: 241 */
- sink_color(c | c); /* expect: 241 */
-
- sink_bool(c && c); /* expect: 241 */
- sink_bool(c || c); /* expect: 241 */
+ /* expect+1: warning: dubious operation on enum, op & [241] */
+ sink_color(c & c);
+ /* expect+1: warning: dubious operation on enum, op ^ [241] */
+ sink_color(c ^ c);
+ /* expect+1: warning: dubious operation on enum, op | [241] */
+ sink_color(c | c);
+
+ /* expect+1: warning: dubious operation on enum, op && [241] */
+ sink_bool(c && c);
+ /* expect+1: warning: dubious operation on enum, op || [241] */
+ sink_bool(c || c);
sink_color(c ? c : BLUE);
c = GREEN;
- c *= c; /* expect: 241 */
- c /= c; /* expect: 241 */
- c %= c; /* expect: 241 */
- c += c; /* expect: 241 */
- c -= c; /* expect: 241 */
- c <<= c; /* expect: 241 */
- c >>= c; /* expect: 241 */
- c &= c; /* expect: 241 */
- c ^= c; /* expect: 241 */
- c |= c; /* expect: 241 */
+ /* expect+1: warning: dubious operation on enum, op *= [241] */
+ c *= c;
+ /* expect+1: warning: dubious operation on enum, op /= [241] */
+ c /= c;
+ /* expect+1: warning: dubious operation on enum, op %= [241] */
+ c %= c;
+ /* expect+1: warning: dubious operation on enum, op += [241] */
+ c += c;
+ /* expect+1: warning: dubious operation on enum, op -= [241] */
+ c -= c;
+ /* expect+1: warning: dubious operation on enum, op <<= [241] */
+ c <<= c;
+ /* expect+1: warning: dubious operation on enum, op >>= [241] */
+ c >>= c;
+ /* expect+1: warning: dubious operation on enum, op &= [241] */
+ c &= c;
+ /* expect+1: warning: dubious operation on enum, op ^= [241] */
+ c ^= c;
+ /* expect+1: warning: dubious operation on enum, op |= [241] */
+ c |= c;
/* The cast to unsigned is required by GCC at WARNS=6. */
- c &= ~(unsigned)GREEN; /* expect: 241 */
+ /* expect+1: warning: dubious operation on enum, op &= [241] */
+ c &= ~(unsigned)GREEN;
}
void
Index: src/tests/usr.bin/xlint/lint1/msg_221.c
diff -u src/tests/usr.bin/xlint/lint1/msg_221.c:1.4 src/tests/usr.bin/xlint/lint1/msg_221.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_221.c:1.4 Mon Feb 22 15:09:50 2021
+++ src/tests/usr.bin/xlint/lint1/msg_221.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_221.c,v 1.4 2021/02/22 15:09:50 rillig Exp $ */
+/* $NetBSD: msg_221.c,v 1.5 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_221.c"
// Test for message: initialization of unsigned with negative constant [221]
@@ -7,6 +7,7 @@ struct example {
unsigned int a: 5;
unsigned int b: 5;
} example_var = {
- -1, /* expect: 221 */
+ /* expect+1: warning: initialization of unsigned with negative constant [221] */
+ -1,
31
};
Index: src/tests/usr.bin/xlint/lint1/msg_238.c
diff -u src/tests/usr.bin/xlint/lint1/msg_238.c:1.4 src/tests/usr.bin/xlint/lint1/msg_238.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_238.c:1.4 Mon Mar 29 22:24:34 2021
+++ src/tests/usr.bin/xlint/lint1/msg_238.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_238.c,v 1.4 2021/03/29 22:24:34 rillig Exp $ */
+/* $NetBSD: msg_238.c,v 1.5 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_238.c"
/* Test for message: initialization of union is illegal in traditional C [238] */
@@ -13,6 +13,7 @@ struct {
union {
int x;
-} u = { /* expect: 238 */
+/* expect+1: warning: initialization of union is illegal in traditional C [238] */
+} u = {
3
};
Index: src/tests/usr.bin/xlint/lint1/msg_239.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_239.exp:1.4 src/tests/usr.bin/xlint/lint1/msg_239.exp:1.5
--- src/tests/usr.bin/xlint/lint1/msg_239.exp:1.4 Fri Apr 2 22:41:54 2021
+++ src/tests/usr.bin/xlint/lint1/msg_239.exp Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-msg_239.c(13): warning: constant in conditional context [161]
-msg_239.c(13): warning: constant argument to '!' [239]
-msg_239.c(14): warning: constant in conditional context [161]
-msg_239.c(14): warning: constant argument to '!' [239]
+msg_239.c(15): warning: constant in conditional context [161]
+msg_239.c(15): warning: constant argument to '!' [239]
+msg_239.c(18): warning: constant in conditional context [161]
+msg_239.c(18): warning: constant argument to '!' [239]
Index: src/tests/usr.bin/xlint/lint1/msg_241.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_241.exp:1.4 src/tests/usr.bin/xlint/lint1/msg_241.exp:1.5
--- src/tests/usr.bin/xlint/lint1/msg_241.exp:1.4 Mon Aug 16 18:51:58 2021
+++ src/tests/usr.bin/xlint/lint1/msg_241.exp Thu Jun 16 21:24:41 2022
@@ -1,33 +1,33 @@
-msg_241.c(30): warning: dubious operation on enum, op ! [241]
-msg_241.c(31): warning: dubious operation on enum, op ~ [241]
-msg_241.c(32): warning: dubious operation on enum, op ++x [241]
-msg_241.c(33): warning: dubious operation on enum, op --x [241]
-msg_241.c(34): warning: dubious operation on enum, op x++ [241]
-msg_241.c(35): warning: dubious operation on enum, op x-- [241]
-msg_241.c(36): warning: dubious operation on enum, op + [241]
-msg_241.c(37): warning: dubious operation on enum, op - [241]
-msg_241.c(38): warning: dubious operation on enum, op * [241]
-msg_241.c(39): warning: dubious operation on enum, op / [241]
-msg_241.c(40): warning: dubious operation on enum, op % [241]
-msg_241.c(41): warning: dubious operation on enum, op + [241]
-msg_241.c(42): warning: dubious operation on enum, op - [241]
-msg_241.c(43): warning: dubious operation on enum, op << [241]
-msg_241.c(44): warning: dubious operation on enum, op >> [241]
-msg_241.c(53): warning: dubious operation on enum, op & [241]
-msg_241.c(54): warning: dubious operation on enum, op ^ [241]
-msg_241.c(55): warning: dubious operation on enum, op | [241]
-msg_241.c(57): warning: dubious operation on enum, op && [241]
-msg_241.c(58): warning: dubious operation on enum, op || [241]
-msg_241.c(62): warning: dubious operation on enum, op *= [241]
-msg_241.c(63): warning: dubious operation on enum, op /= [241]
-msg_241.c(64): warning: dubious operation on enum, op %= [241]
-msg_241.c(65): warning: dubious operation on enum, op += [241]
-msg_241.c(66): warning: dubious operation on enum, op -= [241]
-msg_241.c(67): warning: dubious operation on enum, op <<= [241]
-msg_241.c(68): warning: dubious operation on enum, op >>= [241]
-msg_241.c(69): warning: dubious operation on enum, op &= [241]
-msg_241.c(70): warning: dubious operation on enum, op ^= [241]
-msg_241.c(71): warning: dubious operation on enum, op |= [241]
-msg_241.c(74): warning: dubious operation on enum, op &= [241]
-msg_241.c(82): warning: dubious operation on enum, op * [241]
-msg_241.c(82): warning: combination of 'enum color' and 'int', op > [242]
+msg_241.c(31): warning: dubious operation on enum, op ! [241]
+msg_241.c(33): warning: dubious operation on enum, op ~ [241]
+msg_241.c(35): warning: dubious operation on enum, op ++x [241]
+msg_241.c(37): warning: dubious operation on enum, op --x [241]
+msg_241.c(39): warning: dubious operation on enum, op x++ [241]
+msg_241.c(41): warning: dubious operation on enum, op x-- [241]
+msg_241.c(43): warning: dubious operation on enum, op + [241]
+msg_241.c(45): warning: dubious operation on enum, op - [241]
+msg_241.c(47): warning: dubious operation on enum, op * [241]
+msg_241.c(49): warning: dubious operation on enum, op / [241]
+msg_241.c(51): warning: dubious operation on enum, op % [241]
+msg_241.c(53): warning: dubious operation on enum, op + [241]
+msg_241.c(55): warning: dubious operation on enum, op - [241]
+msg_241.c(57): warning: dubious operation on enum, op << [241]
+msg_241.c(59): warning: dubious operation on enum, op >> [241]
+msg_241.c(69): warning: dubious operation on enum, op & [241]
+msg_241.c(71): warning: dubious operation on enum, op ^ [241]
+msg_241.c(73): warning: dubious operation on enum, op | [241]
+msg_241.c(76): warning: dubious operation on enum, op && [241]
+msg_241.c(78): warning: dubious operation on enum, op || [241]
+msg_241.c(83): warning: dubious operation on enum, op *= [241]
+msg_241.c(85): warning: dubious operation on enum, op /= [241]
+msg_241.c(87): warning: dubious operation on enum, op %= [241]
+msg_241.c(89): warning: dubious operation on enum, op += [241]
+msg_241.c(91): warning: dubious operation on enum, op -= [241]
+msg_241.c(93): warning: dubious operation on enum, op <<= [241]
+msg_241.c(95): warning: dubious operation on enum, op >>= [241]
+msg_241.c(97): warning: dubious operation on enum, op &= [241]
+msg_241.c(99): warning: dubious operation on enum, op ^= [241]
+msg_241.c(101): warning: dubious operation on enum, op |= [241]
+msg_241.c(105): warning: dubious operation on enum, op &= [241]
+msg_241.c(113): warning: dubious operation on enum, op * [241]
+msg_241.c(113): warning: combination of 'enum color' and 'int', op > [242]
Index: src/tests/usr.bin/xlint/lint1/msg_245.c
diff -u src/tests/usr.bin/xlint/lint1/msg_245.c:1.4 src/tests/usr.bin/xlint/lint1/msg_245.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_245.c:1.4 Sun Feb 28 02:00:06 2021
+++ src/tests/usr.bin/xlint/lint1/msg_245.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_245.c,v 1.4 2021/02/28 02:00:06 rillig Exp $ */
+/* $NetBSD: msg_245.c,v 1.5 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_245.c"
// Test for message: incompatible structure pointers: '%s' '%s' '%s' [245]
@@ -26,7 +26,10 @@ example(tag_and_typedef_typedef both,
only_typedef only_typedef,
struct only_tag only_tag)
{
- sink_bool(&both == &only_tag); /* expect: 245 */
- sink_bool(&both == &only_typedef); /* expect: 245 */
- sink_bool(&both == &unnamed); /* expect: 245 */
+ /* expect+1: warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct only_tag' [245] */
+ sink_bool(&both == &only_tag);
+ /* expect+1: warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct typedef only_typedef' [245] */
+ sink_bool(&both == &only_typedef);
+ /* expect+1: warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct <unnamed>' [245] */
+ sink_bool(&both == &unnamed);
}
Index: src/tests/usr.bin/xlint/lint1/msg_245.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_245.exp:1.4 src/tests/usr.bin/xlint/lint1/msg_245.exp:1.5
--- src/tests/usr.bin/xlint/lint1/msg_245.exp:1.4 Sun Feb 28 02:29:28 2021
+++ src/tests/usr.bin/xlint/lint1/msg_245.exp Thu Jun 16 21:24:41 2022
@@ -1,3 +1,3 @@
-msg_245.c(29): warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct only_tag' [245]
-msg_245.c(30): warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct typedef only_typedef' [245]
-msg_245.c(31): warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct <unnamed>' [245]
+msg_245.c(30): warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct only_tag' [245]
+msg_245.c(32): warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct typedef only_typedef' [245]
+msg_245.c(34): warning: incompatible structure pointers: 'pointer to struct tag_and_typedef_tag' '==' 'pointer to struct <unnamed>' [245]
Index: src/tests/usr.bin/xlint/lint1/msg_275.c
diff -u src/tests/usr.bin/xlint/lint1/msg_275.c:1.4 src/tests/usr.bin/xlint/lint1/msg_275.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_275.c:1.4 Sun Feb 28 12:40:00 2021
+++ src/tests/usr.bin/xlint/lint1/msg_275.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_275.c,v 1.4 2021/02/28 12:40:00 rillig Exp $ */
+/* $NetBSD: msg_275.c,v 1.5 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_275.c"
// Test for message: cast discards 'const' from type '%s' [275]
@@ -8,7 +8,8 @@
char *
unconst_string(const char *s)
{
- return (char *)s; /* expect: 275 */
+ /* expect+1: warning: cast discards 'const' from type 'pointer to const char' [275] */
+ return (char *)s;
}
const char *
Index: src/tests/usr.bin/xlint/lint1/msg_247.c
diff -u src/tests/usr.bin/xlint/lint1/msg_247.c:1.17 src/tests/usr.bin/xlint/lint1/msg_247.c:1.18
--- src/tests/usr.bin/xlint/lint1/msg_247.c:1.17 Sat Jun 11 11:52:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_247.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_247.c,v 1.17 2022/06/11 11:52:13 rillig Exp $ */
+/* $NetBSD: msg_247.c,v 1.18 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_247.c"
// Test for message: pointer cast from '%s' to '%s' may be troublesome [247]
@@ -28,7 +28,8 @@ example(struct Other *arg)
* with no hint at all that there is a typedef for a pointer to the
* struct.
*/
- display = (PDisplay)arg; /* expect: 247 */
+ /* expect+1: warning: pointer cast from 'pointer to struct Other' to 'pointer to struct <unnamed>' may be troublesome [247] */
+ display = (PDisplay)arg;
}
/*
@@ -67,7 +68,8 @@ cast_to_unsigned_char_pointer(struct Oth
signed char *
cast_to_signed_char_pointer(struct Other *arg)
{
- return (signed char *)arg; /* expect: 247 */
+ /* expect+1: warning: pointer cast from 'pointer to struct Other' to 'pointer to signed char' may be troublesome [247] */
+ return (signed char *)arg;
}
char *
@@ -154,7 +156,7 @@ lh_OPENSSL_STRING_new(void)
*/
return (struct lhash_st_OPENSSL_STRING *)OPENSSL_LH_new();
}
-# 158 "msg_247.c" 2
+# 160 "msg_247.c" 2
void sink(const void *);
Index: src/tests/usr.bin/xlint/lint1/msg_247.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_247.exp:1.13 src/tests/usr.bin/xlint/lint1/msg_247.exp:1.14
--- src/tests/usr.bin/xlint/lint1/msg_247.exp:1.13 Sat Jun 11 11:52:13 2022
+++ src/tests/usr.bin/xlint/lint1/msg_247.exp Thu Jun 16 21:24:41 2022
@@ -1,3 +1,3 @@
-msg_247.c(31): warning: pointer cast from 'pointer to struct Other' to 'pointer to struct <unnamed>' may be troublesome [247]
-msg_247.c(70): warning: pointer cast from 'pointer to struct Other' to 'pointer to signed char' may be troublesome [247]
-msg_247.c(135): warning: struct 'lhash_st' never defined [233]
+msg_247.c(32): warning: pointer cast from 'pointer to struct Other' to 'pointer to struct <unnamed>' may be troublesome [247]
+msg_247.c(72): warning: pointer cast from 'pointer to struct Other' to 'pointer to signed char' may be troublesome [247]
+msg_247.c(137): warning: struct 'lhash_st' never defined [233]
Index: src/tests/usr.bin/xlint/lint1/msg_249.c
diff -u src/tests/usr.bin/xlint/lint1/msg_249.c:1.10 src/tests/usr.bin/xlint/lint1/msg_249.c:1.11
--- src/tests/usr.bin/xlint/lint1/msg_249.c:1.10 Tue May 31 00:35:18 2022
+++ src/tests/usr.bin/xlint/lint1/msg_249.c Thu Jun 16 21:24:41 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_249.c,v 1.10 2022/05/31 00:35:18 rillig Exp $ */
+/* $NetBSD: msg_249.c,v 1.11 2022/06/16 21:24:41 rillig Exp $ */
# 3 "msg_249.c"
// Test for message: syntax error '%s' [249]
@@ -31,7 +31,8 @@ function(void)
/* expect+2: warning: statement not reached [193] */
if (0)
;
- ); /* expect: syntax error ')' */
+ /* expect+1: error: syntax error ')' [249] */
+ );
}
/* XXX: It is unexpected that this error is not detected. */