Sun Jul 11 19:30:56 2021 UTC ()
lint: add quotes around placeholders in message 23 and 232


(rillig)
diff -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/msg_023.c
diff -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/msg_023.exp
diff -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/msg_194.exp
diff -r1.11 -r1.12 src/tests/usr.bin/xlint/lint1/msg_193.c
diff -r1.11 -r1.12 src/tests/usr.bin/xlint/lint1/msg_193.exp
diff -r1.4 -r1.5 src/tests/usr.bin/xlint/lint1/msg_232.c
diff -r1.2 -r1.3 src/tests/usr.bin/xlint/lint1/msg_232.exp
diff -r1.197 -r1.198 src/usr.bin/xlint/lint1/decl.c
diff -r1.127 -r1.128 src/usr.bin/xlint/lint1/err.c

cvs diff -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/msg_023.c (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/msg_023.c 2021/07/11 19:24:42 1.3
+++ src/tests/usr.bin/xlint/lint1/msg_023.c 2021/07/11 19:30:56 1.4
@@ -1,14 +1,13 @@ @@ -1,14 +1,13 @@
1/* $NetBSD: msg_023.c,v 1.3 2021/07/11 19:24:42 rillig Exp $ */ 1/* $NetBSD: msg_023.c,v 1.4 2021/07/11 19:30:56 rillig Exp $ */
2# 3 "msg_023.c" 2# 3 "msg_023.c"
3 3
4// Test for message: undefined label %s [23] 4// Test for message: undefined label '%s' [23]
5 5
6void 6void
7test(void) 7test(void)
8{ 8{
9 goto defined_label; 9 goto defined_label;
10defined_label: 10defined_label:
11 /* TODO: add quotes around '%s' */ 11 /* expect+1: warning: undefined label 'undefined_label' [23] */
12 /* expect+1: warning: undefined label undefined_label [23] */ 
13 goto undefined_label; 12 goto undefined_label;
14} 13}

cvs diff -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/Attic/msg_023.exp (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/Attic/msg_023.exp 2021/07/11 19:24:42 1.3
+++ src/tests/usr.bin/xlint/lint1/Attic/msg_023.exp 2021/07/11 19:30:56 1.4

cvs diff -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/Attic/msg_194.exp (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/Attic/msg_194.exp 2021/03/21 20:45:00 1.3
+++ src/tests/usr.bin/xlint/lint1/Attic/msg_194.exp 2021/07/11 19:30:56 1.4
@@ -1,2 +1,2 @@ @@ -1,2 +1,2 @@
1msg_194.c(11): error: label label redefined [194] 1msg_194.c(11): error: label label redefined [194]
2msg_194.c(9): warning: label label unused in function example [232] 2msg_194.c(9): warning: label 'label' unused in function 'example' [232]

cvs diff -r1.11 -r1.12 src/tests/usr.bin/xlint/lint1/msg_193.c (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/msg_193.c 2021/03/21 20:08:21 1.11
+++ src/tests/usr.bin/xlint/lint1/msg_193.c 2021/07/11 19:30:56 1.12
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: msg_193.c,v 1.11 2021/03/21 20:08:21 rillig Exp $ */ 1/* $NetBSD: msg_193.c,v 1.12 2021/07/11 19:30:56 rillig Exp $ */
2# 3 "msg_193.c" 2# 3 "msg_193.c"
3 3
4// Test for message: statement not reached [193] 4// Test for message: statement not reached [193]
5 5
6/* 6/*
7 * Test the reachability of statements in a function. 7 * Test the reachability of statements in a function.
8 * 8 *
9 * if 9 * if
10 * if-else 10 * if-else
11 * if-else-if-else 11 * if-else-if-else
12 * for 12 * for
13 * while 13 * while
14 * do-while 14 * do-while
@@ -567,27 +567,27 @@ test_goto_numbers_alphabetically(void) @@ -567,27 +567,27 @@ test_goto_numbers_alphabetically(void)
567 goto one; 567 goto one;
568eight: 568eight:
569 goto nine; 569 goto nine;
570five: 570five:
571 return; 571 return;
572four: 572four:
573 goto five; 573 goto five;
574nine: 574nine:
575 goto ten; 575 goto ten;
576one: 576one:
577 goto two; 577 goto two;
578seven: 578seven:
579 goto eight; 579 goto eight;
580six: /* expect: warning: label six unused */ 580six: /* expect: warning: label 'six' unused */
581 goto seven; 581 goto seven;
582ten: 582ten:
583 return; 583 return;
584three: 584three:
585 goto four; 585 goto four;
586two: 586two:
587 goto three; 587 goto three;
588} 588}
589 589
590void 590void
591test_while_goto(void) 591test_while_goto(void)
592{ 592{
593 while (1) { 593 while (1) {

cvs diff -r1.11 -r1.12 src/tests/usr.bin/xlint/lint1/Attic/msg_193.exp (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/Attic/msg_193.exp 2021/03/21 20:08:21 1.11
+++ src/tests/usr.bin/xlint/lint1/Attic/msg_193.exp 2021/07/11 19:30:56 1.12
@@ -72,16 +72,16 @@ msg_193.c(468): warning: statement not r @@ -72,16 +72,16 @@ msg_193.c(468): warning: statement not r
72msg_193.c(470): warning: statement not reached [193] 72msg_193.c(470): warning: statement not reached [193]
73msg_193.c(479): warning: statement not reached [193] 73msg_193.c(479): warning: statement not reached [193]
74msg_193.c(481): warning: statement not reached [193] 74msg_193.c(481): warning: statement not reached [193]
75msg_193.c(486): warning: statement not reached [193] 75msg_193.c(486): warning: statement not reached [193]
76msg_193.c(488): warning: statement not reached [193] 76msg_193.c(488): warning: statement not reached [193]
77msg_193.c(490): warning: statement not reached [193] 77msg_193.c(490): warning: statement not reached [193]
78msg_193.c(497): warning: statement not reached [193] 78msg_193.c(497): warning: statement not reached [193]
79msg_193.c(500): warning: statement not reached [193] 79msg_193.c(500): warning: statement not reached [193]
80msg_193.c(503): warning: statement not reached [193] 80msg_193.c(503): warning: statement not reached [193]
81msg_193.c(515): warning: statement not reached [193] 81msg_193.c(515): warning: statement not reached [193]
82msg_193.c(518): warning: statement not reached [193] 82msg_193.c(518): warning: statement not reached [193]
83msg_193.c(532): warning: statement not reached [193] 83msg_193.c(532): warning: statement not reached [193]
84msg_193.c(540): warning: statement not reached [193] 84msg_193.c(540): warning: statement not reached [193]
85msg_193.c(580): warning: label six unused in function test_goto_numbers_alphabetically [232] 85msg_193.c(580): warning: label 'six' unused in function 'test_goto_numbers_alphabetically' [232]
86msg_193.c(597): warning: statement not reached [193] 86msg_193.c(597): warning: statement not reached [193]
87msg_193.c(606): warning: statement not reached [193] 87msg_193.c(606): warning: statement not reached [193]

cvs diff -r1.4 -r1.5 src/tests/usr.bin/xlint/lint1/msg_232.c (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/msg_232.c 2021/07/11 19:24:42 1.4
+++ src/tests/usr.bin/xlint/lint1/msg_232.c 2021/07/11 19:30:56 1.5
@@ -1,16 +1,15 @@ @@ -1,16 +1,15 @@
1/* $NetBSD: msg_232.c,v 1.4 2021/07/11 19:24:42 rillig Exp $ */ 1/* $NetBSD: msg_232.c,v 1.5 2021/07/11 19:30:56 rillig Exp $ */
2# 3 "msg_232.c" 2# 3 "msg_232.c"
3 3
4// Test for message: label %s unused in function %s [232] 4// Test for message: label '%s' unused in function '%s' [232]
5 5
6void 6void
7example(void) 7example(void)
8{ 8{
9 goto used_label; 9 goto used_label;
10unused_label: /* expect: 232 */ 10 /* expect+1: label 'unused_label' unused in function 'example' [232] */
 11unused_label:
11 return; 12 return;
12used_label: 13used_label:
13 return; 14 return;
14} 15}
15 
16/* TODO: add quotes around '%s' */ 

cvs diff -r1.2 -r1.3 src/tests/usr.bin/xlint/lint1/Attic/msg_232.exp (expand / switch to unified diff)

--- src/tests/usr.bin/xlint/lint1/Attic/msg_232.exp 2021/01/10 13:54:13 1.2
+++ src/tests/usr.bin/xlint/lint1/Attic/msg_232.exp 2021/07/11 19:30:56 1.3

cvs diff -r1.197 -r1.198 src/usr.bin/xlint/lint1/decl.c (expand / switch to unified diff)

--- src/usr.bin/xlint/lint1/decl.c 2021/07/10 17:35:54 1.197
+++ src/usr.bin/xlint/lint1/decl.c 2021/07/11 19:30:56 1.198
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: decl.c,v 1.197 2021/07/10 17:35:54 rillig Exp $ */ 1/* $NetBSD: decl.c,v 1.198 2021/07/11 19:30:56 rillig Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved. 4 * Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved.
5 * Copyright (c) 1994, 1995 Jochen Pohl 5 * Copyright (c) 1994, 1995 Jochen Pohl
6 * All Rights Reserved. 6 * All Rights Reserved.
7 * 7 *
8 * Redistribution and use in source and binary forms, with or without 8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions 9 * modification, are permitted provided that the following conditions
10 * are met: 10 * are met:
11 * 1. Redistributions of source code must retain the above copyright 11 * 1. Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer. 12 * notice, this list of conditions and the following disclaimer.
13 * 2. Redistributions in binary form must reproduce the above copyright 13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the 14 * notice, this list of conditions and the following disclaimer in the
@@ -28,27 +28,27 @@ @@ -28,27 +28,27 @@
28 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 28 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 29 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 30 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 31 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
32 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 */ 33 */
34 34
35#if HAVE_NBTOOL_CONFIG_H 35#if HAVE_NBTOOL_CONFIG_H
36#include "nbtool_config.h" 36#include "nbtool_config.h"
37#endif 37#endif
38 38
39#include <sys/cdefs.h> 39#include <sys/cdefs.h>
40#if defined(__RCSID) && !defined(lint) 40#if defined(__RCSID) && !defined(lint)
41__RCSID("$NetBSD: decl.c,v 1.197 2021/07/10 17:35:54 rillig Exp $"); 41__RCSID("$NetBSD: decl.c,v 1.198 2021/07/11 19:30:56 rillig Exp $");
42#endif 42#endif
43 43
44#include <sys/param.h> 44#include <sys/param.h>
45#include <limits.h> 45#include <limits.h>
46#include <stdlib.h> 46#include <stdlib.h>
47#include <string.h> 47#include <string.h>
48 48
49#include "lint1.h" 49#include "lint1.h"
50 50
51const char *unnamed = "<unnamed>"; 51const char *unnamed = "<unnamed>";
52 52
53/* shared type structures for arithmetic types and void */ 53/* shared type structures for arithmetic types and void */
54static type_t *typetab; 54static type_t *typetab;
@@ -3121,30 +3121,30 @@ check_variable_usage(bool novar, sym_t * @@ -3121,30 +3121,30 @@ check_variable_usage(bool novar, sym_t *
3121 } 3121 }
3122 } 3122 }
3123 } 3123 }
3124} 3124}
3125 3125
3126static void 3126static void
3127check_label_usage(sym_t *lab) 3127check_label_usage(sym_t *lab)
3128{ 3128{
3129 3129
3130 lint_assert(block_level == 1); 3130 lint_assert(block_level == 1);
3131 lint_assert(lab->s_block_level == 1); 3131 lint_assert(lab->s_block_level == 1);
3132 3132
3133 if (lab->s_set && !lab->s_used) { 3133 if (lab->s_set && !lab->s_used) {
3134 /* label %s unused in function %s */ 3134 /* label '%s' unused in function '%s' */
3135 warning_at(232, &lab->s_set_pos, lab->s_name, funcsym->s_name); 3135 warning_at(232, &lab->s_set_pos, lab->s_name, funcsym->s_name);
3136 } else if (!lab->s_set) { 3136 } else if (!lab->s_set) {
3137 /* undefined label %s */ 3137 /* undefined label '%s' */
3138 warning_at(23, &lab->s_use_pos, lab->s_name); 3138 warning_at(23, &lab->s_use_pos, lab->s_name);
3139 } 3139 }
3140} 3140}
3141 3141
3142static void 3142static void
3143check_tag_usage(sym_t *sym) 3143check_tag_usage(sym_t *sym)
3144{ 3144{
3145 3145
3146 if (!is_incomplete(sym->s_type)) 3146 if (!is_incomplete(sym->s_type))
3147 return; 3147 return;
3148 3148
3149 /* always complain about incomplete tags declared inside blocks */ 3149 /* always complain about incomplete tags declared inside blocks */
3150 if (!zflag || dcs->d_ctx != EXTERN) 3150 if (!zflag || dcs->d_ctx != EXTERN)

cvs diff -r1.127 -r1.128 src/usr.bin/xlint/lint1/err.c (expand / switch to unified diff)

--- src/usr.bin/xlint/lint1/err.c 2021/07/10 12:17:31 1.127
+++ src/usr.bin/xlint/lint1/err.c 2021/07/11 19:30:56 1.128
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: err.c,v 1.127 2021/07/10 12:17:31 rillig Exp $ */ 1/* $NetBSD: err.c,v 1.128 2021/07/11 19:30:56 rillig Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 1994, 1995 Jochen Pohl 4 * Copyright (c) 1994, 1995 Jochen Pohl
5 * All Rights Reserved. 5 * All Rights Reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer. 11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright 12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the 13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution. 14 * documentation and/or other materials provided with the distribution.
@@ -27,27 +27,27 @@ @@ -27,27 +27,27 @@
27 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 30 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
31 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 */ 32 */
33 33
34#if HAVE_NBTOOL_CONFIG_H 34#if HAVE_NBTOOL_CONFIG_H
35#include "nbtool_config.h" 35#include "nbtool_config.h"
36#endif 36#endif
37 37
38#include <sys/cdefs.h> 38#include <sys/cdefs.h>
39#if defined(__RCSID) && !defined(lint) 39#if defined(__RCSID) && !defined(lint)
40__RCSID("$NetBSD: err.c,v 1.127 2021/07/10 12:17:31 rillig Exp $"); 40__RCSID("$NetBSD: err.c,v 1.128 2021/07/11 19:30:56 rillig Exp $");
41#endif 41#endif
42 42
43#include <sys/types.h> 43#include <sys/types.h>
44#include <stdarg.h> 44#include <stdarg.h>
45#include <stdlib.h> 45#include <stdlib.h>
46 46
47#include "lint1.h" 47#include "lint1.h"
48 48
49/* number of errors found */ 49/* number of errors found */
50int nerr; 50int nerr;
51 51
52/* number of syntax errors */ 52/* number of syntax errors */
53int sytxerr; 53int sytxerr;
@@ -67,27 +67,27 @@ const char *const msgs[] = { @@ -67,27 +67,27 @@ const char *const msgs[] = {
67 "duplicate '%s'", /* 10 */ 67 "duplicate '%s'", /* 10 */
68 "bit-field initializer out of range", /* 11 */ 68 "bit-field initializer out of range", /* 11 */
69 "compiler takes size of function", /* 12 */ 69 "compiler takes size of function", /* 12 */
70 "incomplete enum type: %s", /* 13 */ 70 "incomplete enum type: %s", /* 13 */
71 "compiler takes alignment of function", /* 14 */ 71 "compiler takes alignment of function", /* 14 */
72 "function returns illegal type", /* 15 */ 72 "function returns illegal type", /* 15 */
73 "array of function is illegal", /* 16 */ 73 "array of function is illegal", /* 16 */
74 "null dimension", /* 17 */ 74 "null dimension", /* 17 */
75 "illegal use of 'void'", /* 18 */ 75 "illegal use of 'void'", /* 18 */
76 "void type for '%s'", /* 19 */ 76 "void type for '%s'", /* 19 */
77 "negative array dimension (%d)", /* 20 */ 77 "negative array dimension (%d)", /* 20 */
78 "redeclaration of formal parameter %s", /* 21 */ 78 "redeclaration of formal parameter %s", /* 21 */
79 "incomplete or misplaced function definition", /* 22 */ 79 "incomplete or misplaced function definition", /* 22 */
80 "undefined label %s", /* 23 */ 80 "undefined label '%s'", /* 23 */
81 "cannot initialize function: %s", /* 24 */ 81 "cannot initialize function: %s", /* 24 */
82 "cannot initialize typedef: %s", /* 25 */ 82 "cannot initialize typedef: %s", /* 25 */
83 "cannot initialize extern declaration: %s", /* 26 */ 83 "cannot initialize extern declaration: %s", /* 26 */
84 "redeclaration of %s", /* 27 */ 84 "redeclaration of %s", /* 27 */
85 "redefinition of %s", /* 28 */ 85 "redefinition of %s", /* 28 */
86 "previously declared extern, becomes static: %s", /* 29 */ 86 "previously declared extern, becomes static: %s", /* 29 */
87 "redeclaration of %s; ANSI C requires static", /* 30 */ 87 "redeclaration of %s; ANSI C requires static", /* 30 */
88 "argument '%s' has type '%s'", /* 31 */ 88 "argument '%s' has type '%s'", /* 31 */
89 "argument type defaults to 'int': %s", /* 32 */ 89 "argument type defaults to 'int': %s", /* 32 */
90 "duplicate member name: %s", /* 33 */ 90 "duplicate member name: %s", /* 33 */
91 "nonportable bit-field type '%s'", /* 34 */ 91 "nonportable bit-field type '%s'", /* 34 */
92 "illegal bit-field type '%s'", /* 35 */ 92 "illegal bit-field type '%s'", /* 35 */
93 "illegal bit-field size: %d", /* 36 */ 93 "illegal bit-field size: %d", /* 36 */
@@ -276,27 +276,27 @@ const char *const msgs[] = { @@ -276,27 +276,27 @@ const char *const msgs[] = {
276 "concatenated strings are illegal in traditional C", /* 219 */ 276 "concatenated strings are illegal in traditional C", /* 219 */
277 "fallthrough on case statement", /* 220 */ 277 "fallthrough on case statement", /* 220 */
278 "initialization of unsigned with negative constant", /* 221 */ 278 "initialization of unsigned with negative constant", /* 221 */
279 "conversion of negative constant to unsigned type", /* 222 */ 279 "conversion of negative constant to unsigned type", /* 222 */
280 "end-of-loop code not reached", /* 223 */ 280 "end-of-loop code not reached", /* 223 */
281 "cannot recover from previous errors", /* 224 */ 281 "cannot recover from previous errors", /* 224 */
282 "static function called but not defined: %s()", /* 225 */ 282 "static function called but not defined: %s()", /* 225 */
283 "static variable %s unused", /* 226 */ 283 "static variable %s unused", /* 226 */
284 "const object %s should have initializer", /* 227 */ 284 "const object %s should have initializer", /* 227 */
285 "function cannot return const or volatile object", /* 228 */ 285 "function cannot return const or volatile object", /* 228 */
286 "converting '%s' to '%s' is questionable", /* 229 */ 286 "converting '%s' to '%s' is questionable", /* 229 */
287 "nonportable character comparison, op %s", /* 230 */ 287 "nonportable character comparison, op %s", /* 230 */
288 "argument '%s' unused in function '%s'", /* 231 */ 288 "argument '%s' unused in function '%s'", /* 231 */
289 "label %s unused in function %s", /* 232 */ 289 "label '%s' unused in function '%s'", /* 232 */
290 "struct %s never defined", /* 233 */ 290 "struct %s never defined", /* 233 */
291 "union %s never defined", /* 234 */ 291 "union %s never defined", /* 234 */
292 "enum %s never defined", /* 235 */ 292 "enum %s never defined", /* 235 */
293 "static function %s unused", /* 236 */ 293 "static function %s unused", /* 236 */
294 "redeclaration of formal parameter %s", /* 237 */ 294 "redeclaration of formal parameter %s", /* 237 */
295 "initialization of union is illegal in traditional C", /* 238 */ 295 "initialization of union is illegal in traditional C", /* 238 */
296 "constant argument to '!'", /* 239 */ 296 "constant argument to '!'", /* 239 */
297 "assignment of different structures (%s != %s)", /* 240 */ 297 "assignment of different structures (%s != %s)", /* 240 */
298 "dubious operation on enum, op %s", /* 241 */ 298 "dubious operation on enum, op %s", /* 241 */
299 "combination of '%s' and '%s', op %s", /* 242 */ 299 "combination of '%s' and '%s', op %s", /* 242 */
300 "dubious comparison of enums, op %s", /* 243 */ 300 "dubious comparison of enums, op %s", /* 243 */
301 "illegal structure pointer combination", /* 244 */ 301 "illegal structure pointer combination", /* 244 */
302 "incompatible structure pointers: '%s' '%s' '%s'", /* 245 */ 302 "incompatible structure pointers: '%s' '%s' '%s'", /* 245 */