Module Name: src Committed By: rillig Date: Fri Jan 8 21:25:03 UTC 2021
Modified Files: src/tests/usr.bin/xlint/lint1: msg_050.c msg_050.exp msg_051.c msg_051.exp msg_054.c msg_054.exp msg_055.c msg_055.exp msg_056.c msg_056.exp msg_057.c msg_057.exp msg_060.c msg_060.exp msg_061.c msg_061.exp msg_066.c msg_066.exp msg_068.c msg_068.exp msg_075.c msg_075.exp msg_081.c msg_081.exp msg_082.c msg_082.exp msg_083.c msg_083.exp msg_084.c msg_084.exp msg_089.c msg_089.exp msg_100.c msg_100.exp msg_101.c msg_101.exp msg_109.c msg_109.exp msg_114.c msg_114.exp msg_115.c msg_115.exp msg_116.c msg_116.exp msg_121.c msg_121.exp msg_122.c msg_122.exp msg_126.c msg_126.exp msg_130.c msg_130.exp msg_133.c msg_133.exp msg_136.c msg_136.exp msg_142.c msg_142.exp msg_143.c msg_143.exp msg_144.c msg_144.exp msg_145.c msg_145.exp msg_146.c msg_146.exp msg_150.c msg_150.exp msg_156.c msg_156.exp msg_164.c msg_164.exp msg_165.c msg_165.exp msg_167.c msg_167.exp msg_170.c msg_170.exp msg_172.c msg_172.exp msg_173.c msg_173.exp msg_174.c msg_174.exp Log Message: lint: add tests for several messages To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/tests/usr.bin/xlint/lint1/msg_050.c \ src/tests/usr.bin/xlint/lint1/msg_050.exp \ src/tests/usr.bin/xlint/lint1/msg_051.c \ src/tests/usr.bin/xlint/lint1/msg_051.exp \ src/tests/usr.bin/xlint/lint1/msg_054.c \ src/tests/usr.bin/xlint/lint1/msg_054.exp \ src/tests/usr.bin/xlint/lint1/msg_055.c \ src/tests/usr.bin/xlint/lint1/msg_055.exp \ src/tests/usr.bin/xlint/lint1/msg_056.c \ src/tests/usr.bin/xlint/lint1/msg_056.exp \ src/tests/usr.bin/xlint/lint1/msg_057.c \ src/tests/usr.bin/xlint/lint1/msg_057.exp \ src/tests/usr.bin/xlint/lint1/msg_060.c \ src/tests/usr.bin/xlint/lint1/msg_060.exp \ src/tests/usr.bin/xlint/lint1/msg_061.c \ src/tests/usr.bin/xlint/lint1/msg_061.exp \ src/tests/usr.bin/xlint/lint1/msg_066.c \ src/tests/usr.bin/xlint/lint1/msg_066.exp \ src/tests/usr.bin/xlint/lint1/msg_068.c \ src/tests/usr.bin/xlint/lint1/msg_068.exp \ src/tests/usr.bin/xlint/lint1/msg_075.c \ src/tests/usr.bin/xlint/lint1/msg_075.exp \ src/tests/usr.bin/xlint/lint1/msg_081.c \ src/tests/usr.bin/xlint/lint1/msg_081.exp \ src/tests/usr.bin/xlint/lint1/msg_082.c \ src/tests/usr.bin/xlint/lint1/msg_082.exp \ src/tests/usr.bin/xlint/lint1/msg_083.c \ src/tests/usr.bin/xlint/lint1/msg_083.exp \ src/tests/usr.bin/xlint/lint1/msg_084.c \ src/tests/usr.bin/xlint/lint1/msg_084.exp \ src/tests/usr.bin/xlint/lint1/msg_089.c \ src/tests/usr.bin/xlint/lint1/msg_089.exp \ src/tests/usr.bin/xlint/lint1/msg_100.c \ src/tests/usr.bin/xlint/lint1/msg_100.exp \ src/tests/usr.bin/xlint/lint1/msg_101.c \ src/tests/usr.bin/xlint/lint1/msg_101.exp \ src/tests/usr.bin/xlint/lint1/msg_109.c \ src/tests/usr.bin/xlint/lint1/msg_109.exp \ src/tests/usr.bin/xlint/lint1/msg_114.c \ src/tests/usr.bin/xlint/lint1/msg_114.exp \ src/tests/usr.bin/xlint/lint1/msg_115.c \ src/tests/usr.bin/xlint/lint1/msg_115.exp \ src/tests/usr.bin/xlint/lint1/msg_116.c \ src/tests/usr.bin/xlint/lint1/msg_116.exp \ src/tests/usr.bin/xlint/lint1/msg_121.c \ src/tests/usr.bin/xlint/lint1/msg_121.exp \ src/tests/usr.bin/xlint/lint1/msg_122.c \ src/tests/usr.bin/xlint/lint1/msg_122.exp \ src/tests/usr.bin/xlint/lint1/msg_126.c \ src/tests/usr.bin/xlint/lint1/msg_126.exp \ src/tests/usr.bin/xlint/lint1/msg_130.c \ src/tests/usr.bin/xlint/lint1/msg_130.exp \ src/tests/usr.bin/xlint/lint1/msg_133.c \ src/tests/usr.bin/xlint/lint1/msg_133.exp \ src/tests/usr.bin/xlint/lint1/msg_136.c \ src/tests/usr.bin/xlint/lint1/msg_136.exp \ src/tests/usr.bin/xlint/lint1/msg_142.c \ src/tests/usr.bin/xlint/lint1/msg_142.exp \ src/tests/usr.bin/xlint/lint1/msg_143.c \ src/tests/usr.bin/xlint/lint1/msg_143.exp \ src/tests/usr.bin/xlint/lint1/msg_144.c \ src/tests/usr.bin/xlint/lint1/msg_144.exp \ src/tests/usr.bin/xlint/lint1/msg_145.c \ src/tests/usr.bin/xlint/lint1/msg_145.exp \ src/tests/usr.bin/xlint/lint1/msg_146.c \ src/tests/usr.bin/xlint/lint1/msg_146.exp \ src/tests/usr.bin/xlint/lint1/msg_150.c \ src/tests/usr.bin/xlint/lint1/msg_150.exp \ src/tests/usr.bin/xlint/lint1/msg_156.c \ src/tests/usr.bin/xlint/lint1/msg_156.exp \ src/tests/usr.bin/xlint/lint1/msg_164.c \ src/tests/usr.bin/xlint/lint1/msg_164.exp \ src/tests/usr.bin/xlint/lint1/msg_165.c \ src/tests/usr.bin/xlint/lint1/msg_165.exp \ src/tests/usr.bin/xlint/lint1/msg_167.c \ src/tests/usr.bin/xlint/lint1/msg_167.exp \ src/tests/usr.bin/xlint/lint1/msg_170.c \ src/tests/usr.bin/xlint/lint1/msg_170.exp \ src/tests/usr.bin/xlint/lint1/msg_172.c \ src/tests/usr.bin/xlint/lint1/msg_172.exp \ src/tests/usr.bin/xlint/lint1/msg_173.c \ src/tests/usr.bin/xlint/lint1/msg_173.exp \ src/tests/usr.bin/xlint/lint1/msg_174.c \ src/tests/usr.bin/xlint/lint1/msg_174.exp Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/usr.bin/xlint/lint1/msg_050.c diff -u src/tests/usr.bin/xlint/lint1/msg_050.c:1.1 src/tests/usr.bin/xlint/lint1/msg_050.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_050.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_050.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,13 @@ -/* $NetBSD: msg_050.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_050.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_050.c" -// Test for message: a function is declared as an argument: %s [50] +/* Test for message: a function is declared as an argument: %s [50] */ -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +/* lint1-flags: -Stw */ + +typedef void (function)(); + +void example(f) + function f; +{ +} Index: src/tests/usr.bin/xlint/lint1/msg_050.exp diff -u src/tests/usr.bin/xlint/lint1/msg_050.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_050.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_050.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_050.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,9 @@ -msg_050.c(6): syntax error ':' [249] +(1): warning: 'long double' is illegal in traditional C [266] +(1): warning: function prototypes are illegal in traditional C [270] +(2): warning: 'long double' is illegal in traditional C [266] +(2): warning: function prototypes are illegal in traditional C [270] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: function prototypes are illegal in traditional C [270] +msg_050.c(11): warning: a function is declared as an argument: f [50] +msg_050.c(10): warning: argument f unused in function example [231] Index: src/tests/usr.bin/xlint/lint1/msg_051.c diff -u src/tests/usr.bin/xlint/lint1/msg_051.c:1.1 src/tests/usr.bin/xlint/lint1/msg_051.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_051.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_051.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,13 @@ -/* $NetBSD: msg_051.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_051.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_051.c" // Test for message: parameter mismatch: %d declared, %d defined [51] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(int, int); + +void +example(a, b, c) + int a, b, c; +{ +} Index: src/tests/usr.bin/xlint/lint1/msg_051.exp diff -u src/tests/usr.bin/xlint/lint1/msg_051.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_051.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_051.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_051.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,4 @@ -msg_051.c(6): syntax error ':' [249] +msg_051.c(12): parameter mismatch: 2 declared, 3 defined [51] +msg_051.c(10): warning: argument a unused in function example [231] +msg_051.c(10): warning: argument b unused in function example [231] +msg_051.c(10): warning: argument c unused in function example [231] Index: src/tests/usr.bin/xlint/lint1/msg_054.c diff -u src/tests/usr.bin/xlint/lint1/msg_054.c:1.1 src/tests/usr.bin/xlint/lint1/msg_054.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_054.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_054.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_054.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_054.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_054.c" -// Test for message: trailing ',' prohibited in enum declaration [54] +/* Test for message: trailing ',' prohibited in enum declaration [54] */ -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +/* lint1-flags: -tw */ + +enum color { + RED, + GREEN, + BLUE, +}; Index: src/tests/usr.bin/xlint/lint1/msg_054.exp diff -u src/tests/usr.bin/xlint/lint1/msg_054.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_054.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_054.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_054.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,8 @@ -msg_054.c(6): syntax error ':' [249] +(1): warning: 'long double' is illegal in traditional C [266] +(1): warning: function prototypes are illegal in traditional C [270] +(2): warning: 'long double' is illegal in traditional C [266] +(2): warning: function prototypes are illegal in traditional C [270] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: function prototypes are illegal in traditional C [270] +msg_054.c(12): warning: trailing ',' prohibited in enum declaration [54] Index: src/tests/usr.bin/xlint/lint1/msg_055.c diff -u src/tests/usr.bin/xlint/lint1/msg_055.c:1.1 src/tests/usr.bin/xlint/lint1/msg_055.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_055.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_055.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_055.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_055.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_055.c" // Test for message: integral constant expression expected [55] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +enum color { + WHITE = 1.0 +}; Index: src/tests/usr.bin/xlint/lint1/msg_055.exp diff -u src/tests/usr.bin/xlint/lint1/msg_055.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_055.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_055.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_055.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_055.c(6): syntax error ':' [249] +msg_055.c(8): integral constant expression expected [55] Index: src/tests/usr.bin/xlint/lint1/msg_056.c diff -u src/tests/usr.bin/xlint/lint1/msg_056.c:1.1 src/tests/usr.bin/xlint/lint1/msg_056.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_056.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_056.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_056.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_056.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_056.c" // Test for message: integral constant too large [56] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +enum color { + WHITE = 0xFFFFFFFFFFFFFFFFFFFF +}; Index: src/tests/usr.bin/xlint/lint1/msg_056.exp diff -u src/tests/usr.bin/xlint/lint1/msg_056.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_056.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_056.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_056.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_056.c(6): syntax error ':' [249] +msg_056.c(7): warning: integer constant out of range [252] +msg_056.c(8): warning: integral constant too large [56] Index: src/tests/usr.bin/xlint/lint1/msg_057.c diff -u src/tests/usr.bin/xlint/lint1/msg_057.c:1.1 src/tests/usr.bin/xlint/lint1/msg_057.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_057.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_057.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,14 @@ -/* $NetBSD: msg_057.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_057.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_057.c" // Test for message: enumeration constant hides parameter: %s [57] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +long +rgb(int red, int green, int blue) +{ + enum color { + red, green, blue + }; + + return red + green + blue; +} Index: src/tests/usr.bin/xlint/lint1/msg_057.exp diff -u src/tests/usr.bin/xlint/lint1/msg_057.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_057.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_057.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_057.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,6 @@ -msg_057.c(6): syntax error ':' [249] +msg_057.c(10): warning: enumeration constant hides parameter: red [57] +msg_057.c(10): warning: enumeration constant hides parameter: green [57] +msg_057.c(11): warning: enumeration constant hides parameter: blue [57] +msg_057.c(7): warning: argument red unused in function rgb [231] +msg_057.c(7): warning: argument green unused in function rgb [231] +msg_057.c(7): warning: argument blue unused in function rgb [231] Index: src/tests/usr.bin/xlint/lint1/msg_060.c diff -u src/tests/usr.bin/xlint/lint1/msg_060.c:1.1 src/tests/usr.bin/xlint/lint1/msg_060.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_060.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_060.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_060.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_060.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_060.c" // Test for message: void must be sole parameter [60] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void example_1(void); +void example_2(int, void); +void example_3(void, void, void); Index: src/tests/usr.bin/xlint/lint1/msg_060.exp diff -u src/tests/usr.bin/xlint/lint1/msg_060.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_060.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_060.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_060.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,4 @@ -msg_060.c(6): syntax error ':' [249] +msg_060.c(7): void must be sole parameter [60] +msg_060.c(8): void must be sole parameter [60] +msg_060.c(8): void must be sole parameter [60] +msg_060.c(8): void must be sole parameter [60] Index: src/tests/usr.bin/xlint/lint1/msg_061.c diff -u src/tests/usr.bin/xlint/lint1/msg_061.c:1.1 src/tests/usr.bin/xlint/lint1/msg_061.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_061.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_061.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,6 @@ -/* $NetBSD: msg_061.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_061.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_061.c" // Test for message: void parameter cannot have name: %s [61] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void example(void arg); Index: src/tests/usr.bin/xlint/lint1/msg_061.exp diff -u src/tests/usr.bin/xlint/lint1/msg_061.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_061.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_061.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_061.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_061.c(6): syntax error ':' [249] +msg_061.c(6): void parameter cannot have name: arg [61] Index: src/tests/usr.bin/xlint/lint1/msg_066.c diff -u src/tests/usr.bin/xlint/lint1/msg_066.c:1.1 src/tests/usr.bin/xlint/lint1/msg_066.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_066.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_066.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_066.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_066.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_066.c" // Test for message: syntax requires ';' after last struct/union member [66] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct number { + int value +}; Index: src/tests/usr.bin/xlint/lint1/msg_066.exp diff -u src/tests/usr.bin/xlint/lint1/msg_066.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_066.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_066.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_066.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_066.c(6): syntax error ':' [249] +msg_066.c(8): warning: syntax requires ';' after last struct/union member [66] Index: src/tests/usr.bin/xlint/lint1/msg_068.c diff -u src/tests/usr.bin/xlint/lint1/msg_068.c:1.1 src/tests/usr.bin/xlint/lint1/msg_068.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_068.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_068.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_068.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_068.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_068.c" // Test for message: typedef already qualified with '%s' [68] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +typedef const char const_char; + +const const_char twice_const; Index: src/tests/usr.bin/xlint/lint1/msg_068.exp diff -u src/tests/usr.bin/xlint/lint1/msg_068.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_068.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_068.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_068.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_068.c(6): syntax error ':' [249] +msg_068.c(8): warning: typedef already qualified with 'const' [68] Index: src/tests/usr.bin/xlint/lint1/msg_075.c diff -u src/tests/usr.bin/xlint/lint1/msg_075.c:1.1 src/tests/usr.bin/xlint/lint1/msg_075.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_075.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_075.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,6 @@ -/* $NetBSD: msg_075.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_075.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_075.c" // Test for message: overflow in hex escape [75] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +char str[] = "\x12345678123456781234567812345678"; Index: src/tests/usr.bin/xlint/lint1/msg_075.exp diff -u src/tests/usr.bin/xlint/lint1/msg_075.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_075.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_075.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_075.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_075.c(6): syntax error ':' [249] +msg_075.c(6): warning: overflow in hex escape [75] Index: src/tests/usr.bin/xlint/lint1/msg_081.c diff -u src/tests/usr.bin/xlint/lint1/msg_081.c:1.1 src/tests/usr.bin/xlint/lint1/msg_081.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_081.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_081.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_081.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_081.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_081.c" // Test for message: \a undefined in traditional C [81] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +/* lint1-flags: -Stw */ + +char str[] = "The bell\a rings"; Index: src/tests/usr.bin/xlint/lint1/msg_081.exp diff -u src/tests/usr.bin/xlint/lint1/msg_081.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_081.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_081.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_081.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,8 @@ -msg_081.c(6): syntax error ':' [249] +(1): warning: 'long double' is illegal in traditional C [266] +(1): warning: function prototypes are illegal in traditional C [270] +(2): warning: 'long double' is illegal in traditional C [266] +(2): warning: function prototypes are illegal in traditional C [270] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: function prototypes are illegal in traditional C [270] +msg_081.c(8): warning: \a undefined in traditional C [81] Index: src/tests/usr.bin/xlint/lint1/msg_082.c diff -u src/tests/usr.bin/xlint/lint1/msg_082.c:1.1 src/tests/usr.bin/xlint/lint1/msg_082.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_082.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_082.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_082.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_082.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_082.c" -// Test for message: \x undefined in traditional C [82] +/* Test for message: \x undefined in traditional C [82] */ -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +/* lint1-flags: -Stw */ + +char str[] = "A he\x78 escape"; Index: src/tests/usr.bin/xlint/lint1/msg_082.exp diff -u src/tests/usr.bin/xlint/lint1/msg_082.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_082.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_082.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_082.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,8 @@ -msg_082.c(6): syntax error ':' [249] +(1): warning: 'long double' is illegal in traditional C [266] +(1): warning: function prototypes are illegal in traditional C [270] +(2): warning: 'long double' is illegal in traditional C [266] +(2): warning: function prototypes are illegal in traditional C [270] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: function prototypes are illegal in traditional C [270] +msg_082.c(8): warning: \x undefined in traditional C [82] Index: src/tests/usr.bin/xlint/lint1/msg_083.c diff -u src/tests/usr.bin/xlint/lint1/msg_083.c:1.1 src/tests/usr.bin/xlint/lint1/msg_083.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_083.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_083.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_083.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_083.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_083.c" // Test for message: storage class after type is obsolescent [83] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(void) +{ + int register x; +} Index: src/tests/usr.bin/xlint/lint1/msg_083.exp diff -u src/tests/usr.bin/xlint/lint1/msg_083.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_083.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_083.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_083.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_083.c(6): syntax error ':' [249] +msg_083.c(9): warning: storage class after type is obsolescent [83] Index: src/tests/usr.bin/xlint/lint1/msg_084.c diff -u src/tests/usr.bin/xlint/lint1/msg_084.c:1.1 src/tests/usr.bin/xlint/lint1/msg_084.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_084.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_084.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_084.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_084.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_084.c" // Test for message: ANSI C requires formal parameter before '...' [84] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void only_ellipsis(...) +{ +} + +void ok_ellipsis(const char *fmt, ...) +{ +} Index: src/tests/usr.bin/xlint/lint1/msg_084.exp diff -u src/tests/usr.bin/xlint/lint1/msg_084.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_084.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_084.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_084.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_084.c(6): syntax error ':' [249] +msg_084.c(6): warning: ANSI C requires formal parameter before '...' [84] +msg_084.c(10): warning: argument fmt unused in function ok_ellipsis [231] Index: src/tests/usr.bin/xlint/lint1/msg_089.c diff -u src/tests/usr.bin/xlint/lint1/msg_089.c:1.1 src/tests/usr.bin/xlint/lint1/msg_089.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_089.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_089.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_089.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_089.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_089.c" // Test for message: typedef redeclared: %s [89] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +typedef int number; +typedef int number; +typedef double number; Index: src/tests/usr.bin/xlint/lint1/msg_089.exp diff -u src/tests/usr.bin/xlint/lint1/msg_089.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_089.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_089.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_089.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_089.c(6): syntax error ':' [249] +msg_089.c(7): typedef redeclared: number [89] +msg_089.c(8): typedef redeclared: number [89] Index: src/tests/usr.bin/xlint/lint1/msg_100.c diff -u src/tests/usr.bin/xlint/lint1/msg_100.c:1.1 src/tests/usr.bin/xlint/lint1/msg_100.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_100.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_100.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_100.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_100.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_100.c" // Test for message: unary + is illegal in traditional C [100] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +/* lint1-flags: -Stw */ + +int +unary_plus(int x) +{ + return +x; +} Index: src/tests/usr.bin/xlint/lint1/msg_100.exp diff -u src/tests/usr.bin/xlint/lint1/msg_100.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_100.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_100.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_100.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,9 @@ -msg_100.c(6): syntax error ':' [249] +(1): warning: 'long double' is illegal in traditional C [266] +(1): warning: function prototypes are illegal in traditional C [270] +(2): warning: 'long double' is illegal in traditional C [266] +(2): warning: function prototypes are illegal in traditional C [270] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: 'long double' is illegal in traditional C [266] +(3): warning: function prototypes are illegal in traditional C [270] +msg_100.c(10): warning: function prototypes are illegal in traditional C [270] +msg_100.c(11): warning: unary + is illegal in traditional C [100] Index: src/tests/usr.bin/xlint/lint1/msg_101.c diff -u src/tests/usr.bin/xlint/lint1/msg_101.c:1.1 src/tests/usr.bin/xlint/lint1/msg_101.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_101.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_101.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,14 @@ -/* $NetBSD: msg_101.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_101.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_101.c" // Test for message: undefined struct/union member: %s [101] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct point { + int x, y; +}; + +int +get_z(const struct point *p) +{ + return p.z; +} Index: src/tests/usr.bin/xlint/lint1/msg_101.exp diff -u src/tests/usr.bin/xlint/lint1/msg_101.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_101.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_101.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_101.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_101.c(6): syntax error ':' [249] +msg_101.c(13): undefined struct/union member: z [101] Index: src/tests/usr.bin/xlint/lint1/msg_109.c diff -u src/tests/usr.bin/xlint/lint1/msg_109.c:1.1 src/tests/usr.bin/xlint/lint1/msg_109.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_109.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_109.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_109.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_109.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_109.c" // Test for message: void type illegal in expression [109] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +int +example(int arg) +{ + return arg + (void)4; +} Index: src/tests/usr.bin/xlint/lint1/msg_109.exp diff -u src/tests/usr.bin/xlint/lint1/msg_109.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_109.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_109.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_109.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,3 @@ -msg_109.c(6): syntax error ':' [249] +msg_109.c(9): void type illegal in expression [109] +msg_109.c(9): warning: function example expects to return value [214] +msg_109.c(7): warning: argument arg unused in function example [231] Index: src/tests/usr.bin/xlint/lint1/msg_114.c diff -u src/tests/usr.bin/xlint/lint1/msg_114.c:1.1 src/tests/usr.bin/xlint/lint1/msg_114.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_114.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_114.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,13 @@ -/* $NetBSD: msg_114.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_114.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_114.c" // Test for message: %soperand of '%s' must be lvalue [114] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(int a) +{ + 3++; + // FIXME: lint error: ../common/tyname.c, 190: tspec_name(0) + // "string"++; + (a + a)++; +} Index: src/tests/usr.bin/xlint/lint1/msg_114.exp diff -u src/tests/usr.bin/xlint/lint1/msg_114.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_114.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_114.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_114.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,3 @@ -msg_114.c(6): syntax error ':' [249] +msg_114.c(9): operand of 'x++' must be lvalue [114] +msg_114.c(12): operand of 'x++' must be lvalue [114] +msg_114.c(7): warning: argument a unused in function example [231] Index: src/tests/usr.bin/xlint/lint1/msg_115.c diff -u src/tests/usr.bin/xlint/lint1/msg_115.c:1.1 src/tests/usr.bin/xlint/lint1/msg_115.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_115.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_115.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,16 @@ -/* $NetBSD: msg_115.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_115.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_115.c" // Test for message: %soperand of '%s' must be modifiable lvalue [115] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(const int *const_ptr) +{ + + *const_ptr = 3; + *const_ptr += 1; + *const_ptr -= 4; + *const_ptr *= 1; + *const_ptr /= 5; + *const_ptr %= 9; +} Index: src/tests/usr.bin/xlint/lint1/msg_115.exp diff -u src/tests/usr.bin/xlint/lint1/msg_115.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_115.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_115.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_115.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,6 @@ -msg_115.c(6): syntax error ':' [249] +msg_115.c(10): warning: left operand of '=' must be modifiable lvalue [115] +msg_115.c(11): warning: left operand of '+=' must be modifiable lvalue [115] +msg_115.c(12): warning: left operand of '-=' must be modifiable lvalue [115] +msg_115.c(13): warning: left operand of '*=' must be modifiable lvalue [115] +msg_115.c(14): warning: left operand of '/=' must be modifiable lvalue [115] +msg_115.c(15): warning: left operand of '%=' must be modifiable lvalue [115] Index: src/tests/usr.bin/xlint/lint1/msg_116.c diff -u src/tests/usr.bin/xlint/lint1/msg_116.c:1.1 src/tests/usr.bin/xlint/lint1/msg_116.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_116.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_116.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_116.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_116.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_116.c" // Test for message: illegal pointer subtraction [116] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +unsigned long +example(int *a, double *b) +{ + return a - b; +} Index: src/tests/usr.bin/xlint/lint1/msg_116.exp diff -u src/tests/usr.bin/xlint/lint1/msg_116.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_116.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_116.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_116.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_116.c(6): syntax error ':' [249] +msg_116.c(9): illegal pointer subtraction [116] Index: src/tests/usr.bin/xlint/lint1/msg_121.c diff -u src/tests/usr.bin/xlint/lint1/msg_121.c:1.1 src/tests/usr.bin/xlint/lint1/msg_121.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_121.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_121.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_121.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_121.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_121.c" // Test for message: negative shift [121] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +int +example(int x) +{ + return x << (3 - 5); +} Index: src/tests/usr.bin/xlint/lint1/msg_121.exp diff -u src/tests/usr.bin/xlint/lint1/msg_121.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_121.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_121.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_121.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_121.c(6): syntax error ':' [249] +msg_121.c(9): warning: negative shift [121] Index: src/tests/usr.bin/xlint/lint1/msg_122.c diff -u src/tests/usr.bin/xlint/lint1/msg_122.c:1.1 src/tests/usr.bin/xlint/lint1/msg_122.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_122.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_122.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_122.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_122.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_122.c" // Test for message: shift greater than size of object [122] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +int +example(int x) +{ + return x << 129; +} Index: src/tests/usr.bin/xlint/lint1/msg_122.exp diff -u src/tests/usr.bin/xlint/lint1/msg_122.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_122.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_122.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_122.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_122.c(6): syntax error ':' [249] +msg_122.c(9): warning: shift greater than size of object [122] Index: src/tests/usr.bin/xlint/lint1/msg_126.c diff -u src/tests/usr.bin/xlint/lint1/msg_126.c:1.1 src/tests/usr.bin/xlint/lint1/msg_126.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_126.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_126.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_126.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_126.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_126.c" // Test for message: incompatible types in conditional [126] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +int +max(int cond, void *ptr, double dbl) +{ + return cond ? ptr : dbl; +} Index: src/tests/usr.bin/xlint/lint1/msg_126.exp diff -u src/tests/usr.bin/xlint/lint1/msg_126.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_126.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_126.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_126.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,5 @@ -msg_126.c(6): syntax error ':' [249] +msg_126.c(9): incompatible types in conditional [126] +msg_126.c(9): warning: function max expects to return value [214] +msg_126.c(7): warning: argument cond unused in function max [231] +msg_126.c(7): warning: argument ptr unused in function max [231] +msg_126.c(7): warning: argument dbl unused in function max [231] Index: src/tests/usr.bin/xlint/lint1/msg_130.c diff -u src/tests/usr.bin/xlint/lint1/msg_130.c:1.1 src/tests/usr.bin/xlint/lint1/msg_130.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_130.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_130.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,18 @@ -/* $NetBSD: msg_130.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_130.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_130.c" // Test for message: enum type mismatch, op %s [130] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +enum color { + RED, GREEN, BLUE +}; + +enum daytime { + NIGHT, MORNING, NOON, EVENING +}; + +int +example(_Bool cond) +{ + return cond ? GREEN : MORNING; +} Index: src/tests/usr.bin/xlint/lint1/msg_130.exp diff -u src/tests/usr.bin/xlint/lint1/msg_130.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_130.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_130.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_130.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_130.c(6): syntax error ':' [249] +msg_130.c(17): warning: enum type mismatch, op : [130] Index: src/tests/usr.bin/xlint/lint1/msg_133.c diff -u src/tests/usr.bin/xlint/lint1/msg_133.c:1.1 src/tests/usr.bin/xlint/lint1/msg_133.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_133.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_133.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_133.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_133.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_133.c" // Test for message: conversion of pointer to '%s' loses bits [133] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +char +to_char(void *ptr) +{ + return (char)ptr; +} Index: src/tests/usr.bin/xlint/lint1/msg_133.exp diff -u src/tests/usr.bin/xlint/lint1/msg_133.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_133.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_133.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_133.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_133.c(6): syntax error ':' [249] +msg_133.c(9): warning: conversion of pointer to 'char' loses bits [133] Index: src/tests/usr.bin/xlint/lint1/msg_136.c diff -u src/tests/usr.bin/xlint/lint1/msg_136.c:1.1 src/tests/usr.bin/xlint/lint1/msg_136.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_136.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_136.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_136.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_136.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_136.c" // Test for message: cannot do pointer arithmetic on operand of unknown size [136] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct incomplete; + +const struct incomplete * +example(const struct incomplete *ptr) +{ + return ptr + 5; +} Index: src/tests/usr.bin/xlint/lint1/msg_136.exp diff -u src/tests/usr.bin/xlint/lint1/msg_136.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_136.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_136.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_136.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_136.c(6): syntax error ':' [249] +msg_136.c(11): cannot do pointer arithmetic on operand of unknown size [136] +msg_136.c(6): warning: struct incomplete never defined [233] Index: src/tests/usr.bin/xlint/lint1/msg_142.c diff -u src/tests/usr.bin/xlint/lint1/msg_142.c:1.1 src/tests/usr.bin/xlint/lint1/msg_142.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_142.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_142.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,6 @@ -/* $NetBSD: msg_142.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_142.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_142.c" // Test for message: floating point overflow detected, op %s [142] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +double dbl = 1e100 * 1e100 * 1e100 * 1e100 * 1e100; Index: src/tests/usr.bin/xlint/lint1/msg_142.exp diff -u src/tests/usr.bin/xlint/lint1/msg_142.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_142.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_142.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_142.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_142.c(6): syntax error ':' [249] +msg_142.c(6): warning: floating point overflow detected, op * [142] +msg_142.c(6): warning: floating point overflow detected, op * [142] Index: src/tests/usr.bin/xlint/lint1/msg_143.c diff -u src/tests/usr.bin/xlint/lint1/msg_143.c:1.1 src/tests/usr.bin/xlint/lint1/msg_143.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_143.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_143.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_143.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_143.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_143.c" // Test for message: cannot take size/alignment of incomplete type [143] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct incomplete; + +unsigned long +sizeof_incomplete(void) +{ + return sizeof(struct incomplete); +} Index: src/tests/usr.bin/xlint/lint1/msg_143.exp diff -u src/tests/usr.bin/xlint/lint1/msg_143.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_143.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_143.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_143.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_143.c(6): syntax error ':' [249] +msg_143.c(11): cannot take size/alignment of incomplete type [143] +msg_143.c(6): warning: struct incomplete never defined [233] Index: src/tests/usr.bin/xlint/lint1/msg_144.c diff -u src/tests/usr.bin/xlint/lint1/msg_144.c:1.1 src/tests/usr.bin/xlint/lint1/msg_144.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_144.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_144.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_144.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_144.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_144.c" // Test for message: cannot take size/alignment of function [144] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +unsigned long +example(void) +{ + return sizeof example; +} Index: src/tests/usr.bin/xlint/lint1/msg_144.exp diff -u src/tests/usr.bin/xlint/lint1/msg_144.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_144.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_144.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_144.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_144.c(6): syntax error ':' [249] +msg_144.c(9): cannot take size/alignment of function [144] Index: src/tests/usr.bin/xlint/lint1/msg_145.c diff -u src/tests/usr.bin/xlint/lint1/msg_145.c:1.1 src/tests/usr.bin/xlint/lint1/msg_145.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_145.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_145.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,25 @@ -/* $NetBSD: msg_145.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_145.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_145.c" // Test for message: cannot take size/alignment of bit-field [145] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct bits { + unsigned one: 1; + unsigned eight: 8; +}; + +unsigned long +sizeof_one(void) +{ + struct bits local_bits; + + return sizeof(local_bits.one); +} + +unsigned long +sizeof_eight(void) +{ + struct bits local_bits; + + return sizeof(local_bits.eight); +} Index: src/tests/usr.bin/xlint/lint1/msg_145.exp diff -u src/tests/usr.bin/xlint/lint1/msg_145.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_145.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_145.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_145.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_145.c(6): syntax error ':' [249] +msg_145.c(16): cannot take size/alignment of bit-field [145] +msg_145.c(24): cannot take size/alignment of bit-field [145] Index: src/tests/usr.bin/xlint/lint1/msg_146.c diff -u src/tests/usr.bin/xlint/lint1/msg_146.c:1.1 src/tests/usr.bin/xlint/lint1/msg_146.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_146.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_146.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,10 @@ -/* $NetBSD: msg_146.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_146.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_146.c" // Test for message: cannot take size/alignment of void [146] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(void *ptr) +{ + return sizeof(*ptr); +} Index: src/tests/usr.bin/xlint/lint1/msg_146.exp diff -u src/tests/usr.bin/xlint/lint1/msg_146.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_146.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_146.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_146.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,2 @@ -msg_146.c(6): syntax error ':' [249] +msg_146.c(9): cannot take size/alignment of void [146] +msg_146.c(9): void function example cannot return value [213] Index: src/tests/usr.bin/xlint/lint1/msg_150.c diff -u src/tests/usr.bin/xlint/lint1/msg_150.c:1.1 src/tests/usr.bin/xlint/lint1/msg_150.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_150.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_150.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,13 @@ -/* $NetBSD: msg_150.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_150.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_150.c" // Test for message: argument mismatch: %d arg%s passed, %d expected [150] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +int +add2(int, int); + +int +example(void) +{ + return add2(2, 3, 5, 7); +} Index: src/tests/usr.bin/xlint/lint1/msg_150.exp diff -u src/tests/usr.bin/xlint/lint1/msg_150.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_150.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_150.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_150.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_150.c(6): syntax error ':' [249] +msg_150.c(12): argument mismatch: 4 args passed, 2 expected [150] Index: src/tests/usr.bin/xlint/lint1/msg_156.c diff -u src/tests/usr.bin/xlint/lint1/msg_156.c:1.1 src/tests/usr.bin/xlint/lint1/msg_156.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_156.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_156.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,25 @@ -/* $NetBSD: msg_156.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_156.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_156.c" // Test for message: enum type mismatch, arg #%d [156] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +enum color { + RED, + GREEN, + BLUE +}; + +enum size { + SMALL, + MEDIUM, + LARGE +}; + +void +print_color(enum color); + +void +example(void) +{ + print_color(MEDIUM); +} Index: src/tests/usr.bin/xlint/lint1/msg_156.exp diff -u src/tests/usr.bin/xlint/lint1/msg_156.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_156.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_156.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_156.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_156.c(6): syntax error ':' [249] +msg_156.c(24): warning: enum type mismatch, arg #1 [156] Index: src/tests/usr.bin/xlint/lint1/msg_164.c diff -u src/tests/usr.bin/xlint/lint1/msg_164.c:1.1 src/tests/usr.bin/xlint/lint1/msg_164.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_164.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_164.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,14 @@ -/* $NetBSD: msg_164.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_164.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_164.c" // Test for message: assignment of negative constant to unsigned type [164] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(void) +{ + unsigned char uch = -3; + + uch = -5; + uch += -7; + uch *= -1; +} Index: src/tests/usr.bin/xlint/lint1/msg_164.exp diff -u src/tests/usr.bin/xlint/lint1/msg_164.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_164.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_164.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_164.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,4 @@ -msg_164.c(6): syntax error ':' [249] +msg_164.c(9): warning: assignment of negative constant to unsigned type [164] +msg_164.c(11): warning: assignment of negative constant to unsigned type [164] +msg_164.c(12): warning: conversion of negative constant to unsigned type [222] +msg_164.c(13): warning: conversion of negative constant to unsigned type [222] Index: src/tests/usr.bin/xlint/lint1/msg_165.c diff -u src/tests/usr.bin/xlint/lint1/msg_165.c:1.1 src/tests/usr.bin/xlint/lint1/msg_165.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_165.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_165.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_165.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_165.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_165.c" // Test for message: constant truncated by assignment [165] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(void) +{ + unsigned char ch; + + ch = 0x1234; +} Index: src/tests/usr.bin/xlint/lint1/msg_165.exp diff -u src/tests/usr.bin/xlint/lint1/msg_165.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_165.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_165.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_165.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_165.c(6): syntax error ':' [249] +msg_165.c(11): warning: constant truncated by assignment [165] Index: src/tests/usr.bin/xlint/lint1/msg_167.c diff -u src/tests/usr.bin/xlint/lint1/msg_167.c:1.1 src/tests/usr.bin/xlint/lint1/msg_167.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_167.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_167.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,18 @@ -/* $NetBSD: msg_167.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_167.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_167.c" // Test for message: array subscript cannot be negative: %ld [167] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(int *ptr) +{ + int arr[6]; + + arr[-3] = 13; + + /* + * Since the pointer may have been initialized with "arr + 3", + * subtracting from its address is allowed. + */ + ptr[-3] = 13; +} Index: src/tests/usr.bin/xlint/lint1/msg_167.exp diff -u src/tests/usr.bin/xlint/lint1/msg_167.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_167.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_167.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_167.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_167.c(6): syntax error ':' [249] +msg_167.c(11): warning: array subscript cannot be negative: -3 [167] Index: src/tests/usr.bin/xlint/lint1/msg_170.c diff -u src/tests/usr.bin/xlint/lint1/msg_170.c:1.1 src/tests/usr.bin/xlint/lint1/msg_170.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_170.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_170.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,14 @@ -/* $NetBSD: msg_170.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_170.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_170.c" // Test for message: first operand must have scalar type, op ? : [170] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct number { + int value; +}; + +_Bool +example(const struct number *num) +{ + return *num ? 1 : 0; +} Index: src/tests/usr.bin/xlint/lint1/msg_170.exp diff -u src/tests/usr.bin/xlint/lint1/msg_170.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_170.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_170.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_170.exp Fri Jan 8 21:25:03 2021 @@ -1 +1,3 @@ -msg_170.c(6): syntax error ':' [249] +msg_170.c(13): first operand must have scalar type, op ? : [170] +msg_170.c(13): warning: function example expects to return value [214] +msg_170.c(11): warning: argument num unused in function example [231] Index: src/tests/usr.bin/xlint/lint1/msg_172.c diff -u src/tests/usr.bin/xlint/lint1/msg_172.c:1.1 src/tests/usr.bin/xlint/lint1/msg_172.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_172.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_172.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,12 @@ -/* $NetBSD: msg_172.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_172.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_172.c" // Test for message: too many struct/union initializers [172] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +struct color { + unsigned int red: 8; + unsigned int green: 8; + unsigned int blue: 8; +}; + +struct color white = { 255, 255, 255, 255 }; Index: src/tests/usr.bin/xlint/lint1/msg_172.exp diff -u src/tests/usr.bin/xlint/lint1/msg_172.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_172.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_172.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_172.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_172.c(6): syntax error ':' [249] +msg_172.c(12): too many struct/union initializers [172] Index: src/tests/usr.bin/xlint/lint1/msg_173.c diff -u src/tests/usr.bin/xlint/lint1/msg_173.c:1.1 src/tests/usr.bin/xlint/lint1/msg_173.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_173.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_173.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,8 @@ -/* $NetBSD: msg_173.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_173.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_173.c" // Test for message: too many array initializers, expected %d [173] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +int arr_limited[3] = { 1, 2, 3, 4 }; +int arr_unlimited[] = { 1, 2, 3, 4 }; +int arr_too_few[] = { 1, 2 }; Index: src/tests/usr.bin/xlint/lint1/msg_173.exp diff -u src/tests/usr.bin/xlint/lint1/msg_173.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_173.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_173.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_173.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_173.c(6): syntax error ':' [249] +msg_173.c(6): too many array initializers, expected 3 [173] Index: src/tests/usr.bin/xlint/lint1/msg_174.c diff -u src/tests/usr.bin/xlint/lint1/msg_174.c:1.1 src/tests/usr.bin/xlint/lint1/msg_174.c:1.2 --- src/tests/usr.bin/xlint/lint1/msg_174.c:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_174.c Fri Jan 8 21:25:03 2021 @@ -1,7 +1,16 @@ -/* $NetBSD: msg_174.c,v 1.1 2021/01/02 10:22:43 rillig Exp $ */ +/* $NetBSD: msg_174.c,v 1.2 2021/01/08 21:25:03 rillig Exp $ */ # 3 "msg_174.c" // Test for message: too many initializers [174] -TODO: "Add example code that triggers the above message." -TODO: "Add example code that almost triggers the above message." +void +example(void) +{ + /* A single pair of braces is always allowed. */ + int n = { 13 }; + + int too_many = { 17, 19 }; + + /* XXX: Double-check with C99, this might be allowed. */ + int too_few = {}; +} Index: src/tests/usr.bin/xlint/lint1/msg_174.exp diff -u src/tests/usr.bin/xlint/lint1/msg_174.exp:1.1 src/tests/usr.bin/xlint/lint1/msg_174.exp:1.2 --- src/tests/usr.bin/xlint/lint1/msg_174.exp:1.1 Sat Jan 2 10:22:43 2021 +++ src/tests/usr.bin/xlint/lint1/msg_174.exp Fri Jan 8 21:25:03 2021 @@ -1 +1 @@ -msg_174.c(6): syntax error ':' [249] +msg_174.c(12): too many initializers [174]