LINT(7) | Miscellaneous Information Manual | LINT(7)

# NAME

`lint` —
Error, warning and query messages from lint

# DESCRIPTION

The following is a list of message IDs and messages produced by lint(1). It is intended to be used with the `-X` flag of lint(1).

0 | empty declaration
1 | old-style declaration; add 'int'
2 | empty declaration
3 | '%s' declared in argument declaration list
4 | illegal type combination
5 | modifying typedef with '%s'; only qualifiers allowed
6 | use 'double' instead of 'long float'
7 | only one storage class allowed
8 | illegal storage class
9 | only register valid as formal parameter storage class
10 | duplicate '%s'
11 | bit-field initializer out of range
12 | compiler takes size of function
13 | incomplete enum type '%s'
--- | (no longer used)
15 | function returns illegal type '%s'
16 | array of function is illegal
17 | null dimension
18 | illegal use of 'void'
19 | void type for '%s'
20 | negative array dimension (%d)
21 | redeclaration of formal parameter '%s'
22 | incomplete or misplaced function definition
23 | undefined label '%s'
24 | cannot initialize function '%s'
25 | cannot initialize typedef '%s'
26 | cannot initialize extern declaration '%s'
27 | redeclaration of '%s'
28 | redefinition of '%s'
29 | '%s' was previously declared extern, becomes static
30 | redeclaration of '%s'; ANSI C requires static
31 | '%s' has incomplete type '%s'
32 | type of argument '%s' defaults to 'int'
33 | duplicate member name '%s'
34 | nonportable bit-field type '%s'
35 | illegal bit-field type '%s'
36 | illegal bit-field size: %d
37 | zero size bit-field
38 | function illegal in structure or union
39 | zero-sized array '%s' in struct is a C99 extension
--- | (no longer used)
41 | bit-field in union is very unusual
42 | forward reference to enum type
43 | redefinition of '%s' hides earlier one
44 | declaration of '%s %s' introduces new type in ANSI C
45 | base type is really '%s %s'
46 | %s tag '%s' redeclared as %s
47 | zero sized %s is a C99 feature
48 | enumeration value '%s' overflows
49 | anonymous struct/union members is a C11 feature
50 | argument '%s' has function type, should be pointer
51 | parameter mismatch: %d declared, %d defined
52 | cannot initialize parameter '%s'
53 | declared argument '%s' is missing
54 | trailing ',' prohibited in enum declaration
55 | integral constant expression expected
56 | integral constant too large
57 | enumeration constant '%s' hides parameter
58 | type of '%s' does not match prototype
59 | formal parameter #%d lacks name
60 | void must be sole parameter
61 | void parameter '%s' cannot have name
62 | function prototype parameters must have types
63 | prototype does not match old-style definition
64 | ()-less function definition
65 | '%s' has no named members
--- | (no longer used)
67 | cannot return incomplete type
68 | typedef already qualified with '%s'
69 | inappropriate qualifiers with 'void'
--- | (no longer used)
71 | too many characters in character constant
72 | typedef declares no type name
73 | empty character constant
74 | no hex digits follow \x
75 | overflow in hex escape
76 | character escape does not fit in character
77 | bad octal digit %c
--- | (no longer used)
79 | dubious escape \%c
80 | dubious escape \%o
81 | \a undefined in traditional C
82 | \x undefined in traditional C
83 | storage class after type is obsolescent
84 | ANSI C requires formal parameter before '...'
85 | dubious tag declaration '%s %s'
86 | automatic '%s' hides external declaration
87 | static '%s' hides external declaration
88 | typedef '%s' hides external declaration
89 | typedef '%s' redeclared
90 | inconsistent redeclaration of extern '%s'
91 | declaration of '%s' hides parameter
92 | inconsistent redeclaration of static '%s'
93 | dubious static function '%s' at block level
94 | function '%s' has illegal storage class
95 | declaration of '%s' hides earlier one
96 | cannot dereference non-pointer type '%s'
97 | suffix U is illegal in traditional C
98 | suffixes F and L are illegal in traditional C
99 | '%s' undefined
100 | unary '+' is illegal in traditional C
101 | type '%s' does not have member '%s'
102 | illegal use of member '%s'
103 | left operand of '.' must be struct or union, not '%s'
104 | left operand of '->' must be pointer to struct or union, not '%s'
105 | non-unique member requires struct/union %s
106 | left operand of '->' must be pointer
107 | operands of '%s' have incompatible types '%s' and '%s'
108 | operand of '%s' has invalid type '%s'
109 | void type illegal in expression
110 | pointer to function is not allowed here
111 | unacceptable operand of '%s'
112 | cannot take address of bit-field
113 | cannot take address of register '%s'
114 | %soperand of '%s' must be lvalue
115 | %soperand of '%s' must be modifiable lvalue
116 | illegal pointer subtraction
117 | bitwise '%s' on signed value possibly nonportable
118 | semantics of '%s' change in ANSI C; use explicit cast
119 | conversion of '%s' to '%s' is out of range
120 | bitwise '%s' on signed value nonportable
121 | negative shift
122 | shift amount %llu is greater than bit-size %llu of '%s'
123 | illegal combination of %s '%s' and %s '%s', op '%s'
124 | illegal combination of '%s' and '%s', op '%s'
125 | ANSI C forbids ordered comparisons of pointers to functions
126 | incompatible types '%s' and '%s' in conditional
127 | '&' before array or function: ignored
128 | operands of '%s' have incompatible pointer types to '%s' and '%s'
129 | expression has null effect
130 | enum type mismatch: '%s' '%s' '%s'
131 | conversion to '%s' may sign-extend incorrectly
132 | conversion from '%s' to '%s' may lose accuracy
133 | conversion of pointer to '%s' loses bits
134 | conversion of pointer to '%s' may lose bits
135 | converting '%s' to '%s' increases alignment from %u to %u
136 | cannot do pointer arithmetic on operand of unknown size
--- | (no longer used)
138 | unknown operand size, op '%s'
139 | division by 0
140 | modulus by 0
141 | integer overflow detected, op '%s'
142 | floating point overflow on operator '%s'
143 | cannot take size/alignment of incomplete type
144 | cannot take size/alignment of function type '%s'
145 | cannot take size/alignment of bit-field
146 | cannot take size/alignment of void
147 | invalid cast from '%s' to '%s'
148 | improper cast of void expression
149 | cannot call '%s', must be a function
150 | argument mismatch: %d %s passed, %d expected
151 | void expressions may not be arguments, arg #%d
152 | argument cannot have unknown size, arg #%d
153 | converting '%s' to incompatible '%s' for argument %d
154 | illegal combination of %s '%s' and %s '%s', arg #%d
155 | passing '%s' to incompatible '%s', arg #%d
156 | function expects '%s', passing '%s' for arg #%d
157 | ANSI C treats constant as unsigned
158 | '%s' may be used before set
159 | assignment in conditional context
160 | operator '==' found where '=' was expected
161 | constant in conditional context
162 | operator '%s' compares '%s' with '%s'
163 | a cast does not yield an lvalue
164 | assignment of negative constant to unsigned type
165 | constant truncated by assignment
166 | precision lost in bit-field assignment
167 | array subscript cannot be negative: %ld
168 | array subscript cannot be > %d: %ld
169 | precedence confusion possible: parenthesize!
170 | first operand must have scalar type, op?:
171 | cannot assign to '%s' from '%s'
172 | too many struct/union initializers
173 | too many array initializers, expected %d
174 | too many initializers
175 | initialization of incomplete type '%s'
--- | (no longer used)
177 | non-constant initializer
178 | initializer does not fit
179 | cannot initialize struct/union with no named member
180 | bit-field initializer does not fit
181 | {}-enclosed initializer required
182 | incompatible pointer types to '%s' and '%s'
183 | illegal combination of %s '%s' and %s '%s'
184 | illegal combination of '%s' and '%s'
185 | cannot initialize '%s' from '%s'
186 | bit-field initialization is illegal in traditional C
187 | string literal too long (%lu) for target array (%lu)
188 | no automatic aggregate initialization in traditional C
--- | (no longer used)
190 | empty array declaration for '%s'
191 | '%s' set but not used in function '%s'
192 | '%s' unused in function '%s'
193 | statement not reached
194 | label '%s' redefined
195 | case not in switch
196 | case label affected by conversion
197 | non-constant case expression
198 | non-integral case expression
199 | duplicate case in switch: %ld
200 | duplicate case in switch: %lu
201 | default outside switch
202 | duplicate default in switch
203 | case label must be of type 'int' in traditional C
204 | controlling expressions must have scalar type
205 | switch expression must have integral type
206 | enumeration value(s) not handled in switch
207 | loop not entered at top
208 | break outside loop or switch
209 | continue outside loop
210 | enum type mismatch between '%s' and '%s' in initialization
211 | function has return type '%s' but returns '%s'
212 | cannot return incomplete type
213 | void function '%s' cannot return value
214 | function '%s' expects to return value
215 | function '%s' implicitly declared to return int
216 | function '%s' has 'return expr' and 'return'
217 | function '%s' falls off bottom without returning value
218 | ANSI C treats constant as unsigned, op '%s'
219 | concatenated strings are illegal in traditional C
220 | fallthrough on case statement
221 | initialization of unsigned with negative constant
222 | conversion of negative constant to unsigned type
223 | end-of-loop code not reached
224 | cannot recover from previous errors
225 | static function '%s' called but not defined
226 | static variable '%s' unused
227 | const object '%s' should have initializer
228 | function cannot return const or volatile object
229 | converting '%s' to '%s' is questionable
230 | nonportable character comparison '%s %d'
231 | argument '%s' unused in function '%s'
232 | label '%s' unused in function '%s'
233 | struct '%s' never defined
234 | union '%s' never defined
235 | enum '%s' never defined
236 | static function '%s' unused
237 | redeclaration of formal parameter '%s'
238 | initialization of union is illegal in traditional C
239 | constant argument to '!'
--- | (no longer used)
241 | dubious operation on enum, op '%s'
242 | combination of '%s' and '%s', op '%s'
243 | dubious comparison of enums, op '%s'
244 | illegal structure pointer combination
245 | incompatible structure pointers: '%s' '%s' '%s'
246 | dubious conversion of enum to '%s'
247 | pointer cast from '%s' to '%s' may be troublesome
248 | floating-point constant out of range
249 | syntax error '%s'
250 | unknown character \%o
251 | malformed integer constant
252 | integer constant out of range
253 | unterminated character constant
254 | newline in string or char constant
255 | undefined or invalid # directive
256 | unterminated comment
257 | extra characters in lint comment
258 | unterminated string constant
259 | argument #%d is converted from '%s' to '%s' due to prototype
260 | previous declaration of '%s'
261 | previous definition of '%s'
262 | \" inside character constants undefined in traditional C
263 | \? undefined in traditional C
264 | \v undefined in traditional C
265 | %s does not support 'long long'
266 | 'long double' is illegal in traditional C
267 | shift amount %u equals bit-size of '%s'
268 | variable '%s' declared inline
269 | argument '%s' declared inline
270 | function prototypes are illegal in traditional C
271 | switch expression must be of type 'int' in traditional C
272 | empty translation unit
273 | bit-field type '%s' invalid in ANSI C
274 | ANSI C forbids comparison of %s with %s
275 | cast discards 'const' from type '%s'
276 | '__%s__' is illegal for type '%s'
277 | initialization of '%s' with '%s'
278 | combination of '%s' and '%s', arg #%d
279 | combination of '%s' and '%s' in return
280 | comment /* %s */ must be outside function
281 | duplicate comment /* %s */
282 | comment /* %s */ must precede function definition
283 | argument number mismatch with directive /* %s */
284 | fallthrough on default statement
285 | prototype declaration
286 | function definition is not a prototype
287 | function declaration is not a prototype
288 | dubious use of /* VARARGS */ with /* %s */
289 | can't be used together: /* PRINTFLIKE */ /* SCANFLIKE */
290 | static function '%s' declared but not defined
291 | invalid multibyte character
292 | cannot concatenate wide and regular string literals
293 | argument %d must be 'char *' for PRINTFLIKE/SCANFLIKE
294 | multi-character character constant
295 | conversion of '%s' to '%s' is out of range, arg #%d
296 | conversion of negative constant to unsigned type, arg #%d
297 | conversion to '%s' may sign-extend incorrectly, arg #%d
298 | conversion from '%s' to '%s' may lose accuracy, arg #%d
299 | prototype does not match old-style definition, arg #%d
300 | old-style definition
301 | array of incomplete type
302 | '%s' returns pointer to automatic object
303 | ANSI C forbids conversion of %s to %s
304 | ANSI C forbids conversion of %s to %s, arg #%d
305 | ANSI C forbids conversion of %s to %s, op %s
306 | constant truncated by conversion, op '%s'
307 | static variable '%s' set but not used
308 | invalid type for _Complex
309 | extra bits set to 0 in conversion of '%s' to '%s', op '%s'
310 | symbol renaming can't be used on function arguments
311 | symbol renaming can't be used on automatic variables
312 | %s does not support // comments
313 | struct or union member name in initializer is a C99 feature
--- | (no longer used)
315 | GCC style struct or union member name in initializer
316 | __FUNCTION__/__PRETTY_FUNCTION__ is a GCC extension
317 | __func__ is a C99 feature
318 | variable array dimension is a C99/GCC extension
319 | compound literals are a C99/GCC extension
320 | ({ }) is a GCC extension
321 | array initializer with designators is a C99 feature
322 | zero sized array is a C99 extension
323 | continue in 'do ... while (0)' loop
324 | suggest cast from '%s' to '%s' on op '%s' to avoid overflow
325 | variable declaration in for loop
326 | attribute '%s' ignored for '%s'
327 | declarations after statements is a C99 feature
328 | union cast is a GCC extension
329 | type '%s' is not a member of '%s'
330 | operand of '%s' must be bool, not '%s'
331 | left operand of '%s' must be bool, not '%s'
332 | right operand of '%s' must be bool, not '%s'
333 | controlling expression must be bool, not '%s'
334 | argument #%d expects '%s', gets passed '%s'
335 | operand of '%s' must not be bool
336 | left operand of '%s' must not be bool
337 | right operand of '%s' must not be bool
338 | option '%c' should be handled in the switch
339 | option '%c' should be listed in the options string
340 | initialization with '[a...b]' is a GCC extension
341 | argument to '%s' must be 'unsigned char' or EOF, not '%s'
342 | argument to '%s' must be cast to 'unsigned char', not to '%s'
343 | static array size is a C11 extension
344 | bit-field of type plain 'int' has implementation-defined signedness
345 | generic selection requires C11 or later
346 | call to '%s' effectively discards 'const' from argument
347 | redeclaration of '%s' with type '%s', expected '%s'
348 | maximum value %d of '%s' does not match maximum array index %d
349 | non type argument to alignof is a GCC extension

The following is a list of query IDs and their messages produced by lint(1). It is intended to be used with the `-q` flag of lint(1).

1 | implicit conversion from floating point '%s' to integer '%s'
2 | cast from floating point '%s' to integer '%s'
3 | implicit conversion changes sign from '%s' to '%s'
4 | usual arithmetic conversion for '%s' from '%s' to '%s'
5 | pointer addition has integer on the left-hand side
6 | no-op cast from '%s' to '%s'
7 | redundant cast from '%s' to '%s' before assignment

October 1, 2022 | NetBSD 10.1