]> andersk Git - splint.git/blame - test/help.expect
Fixed loading of rc files, warnrc and showscan.
[splint.git] / test / help.expect
CommitLineData
885824d3 1
2Source files are .c, .h and .lcl files. If there is no suffix,
11db3170 3 Splint will look for <file>.c and <file>.lcl.
885824d3 4
11db3170 5Use splint -help <topic or flag name> for more information
885824d3 6
7Topics:
8
9 annotations (describes source-code annotations)
10 comments (describes control comments)
11 flags (describes flag categories)
12 flags <category> (describes flags in category)
13 flags all (short description of all flags)
14 flags alpha (list all flags alphabetically)
15 flags full (full description of all flags)
16 mail (information on mailing lists)
17 modes (show mode settings)
18 parseerrors (help on handling parser errors)
19 prefixcodes (character codes in namespace prefixes)
20 references (sources for more information)
21 vars (environment variables)
22 version (information on compilation, maintainer)
23
24
11db3170 25Finished checking --- no code processed
885824d3 26
27Source files are .c, .h and .lcl files. If there is no suffix,
11db3170 28 Splint will look for <file>.c and <file>.lcl.
885824d3 29
11db3170 30Use splint -help <topic or flag name> for more information
885824d3 31
32Topics:
33
34 annotations (describes source-code annotations)
35 comments (describes control comments)
36 flags (describes flag categories)
37 flags <category> (describes flags in category)
38 flags all (short description of all flags)
39 flags alpha (list all flags alphabetically)
40 flags full (full description of all flags)
41 mail (information on mailing lists)
42 modes (show mode settings)
43 parseerrors (help on handling parser errors)
44 prefixcodes (character codes in namespace prefixes)
45 references (sources for more information)
46 vars (environment variables)
47 version (information on compilation, maintainer)
48
49
60868d40 50
15b3d2b2 51Command Line: Unrecognized option: asdf
52 A flag is not recognized or used in an incorrect way (-badflag will suppress
53 message)
885824d3 54
11db3170 55Finished checking --- no code processed
885824d3 56
57Warning: setting +boolint redundant with current value
58
11db3170 59Finished checking --- no code processed
885824d3 60
61 D<initializer>
62 I<directory>
63 S<directory>
64 U<initializer>
65 abstract
66 accessall
67 accessczech
68 accessczechoslovak
69 accessfile
70 accessmodule
71 accessslovak
72 aliasunique
73 allblock
74 allempty
75 allglobs
76 allimponly
77 allmacros
15b3d2b2 78 annotationerror
885824d3 79 ansilib
80 ansilimits
81 ansireserved
82 ansireservedinternal
15b3d2b2 83 arraybounds
84 arrayboundsread
8e349e11 85 arrayread
86 arraywrite
885824d3 87 assignexpose
88 badflag
89 bitwisesigned
885824d3 90 boolcompare
91 boolfalse
92 boolint
93 boolops
94 booltrue
95 booltype
96 branchstate
8e349e11 97 bufferoverflow
15b3d2b2 98 bufferoverflowhigh
99 bugslimit
885824d3 100 casebreak
101 castexpose
102 castfcnptr
103 charindex
104 charint
105 charintliteral
106 charunsignedchar
107 checkedglobalias
108 checkmodglobalias
15b3d2b2 109 checkpost
885824d3 110 checkstrictglobalias
111 checkstrictglobs
112 codeimponly
113 commentchar
15b3d2b2 114 commenterror
885824d3 115 compdef
116 compdestroy
117 compmempass
118 constmacros
119 constprefix
120 constprefixexclude
15b3d2b2 121 constraintlocation
885824d3 122 constuse
123 continuecomment
124 controlnestdepth
125 cppnames
126 czech
127 czechconsts
128 czechfcns
129 czechmacros
130 czechoslovak
131 czechoslovakconsts
132 czechoslovakfcns
133 czechoslovakmacros
134 czechoslovaktypes
135 czechoslovakvars
136 czechtypes
137 czechvars
15b3d2b2 138 debugfcnconstraint
885824d3 139 declundef
140 deepbreak
141 deparrays
142 dependenttrans
143 distinctexternalnames
144 distinctinternalnames
145 dump
146 duplicatequals
147 elseifcomplete
148 enumindex
149 enumint
150 enummembers
151 enummemuse
152 enumprefix
153 enumprefixexclude
154 evalorder
155 evalorderuncon
156 exitarg
157 expect
158 exportany
159 exportconst
160 exportfcn
161 exportheader
162 exportheadervar
163 exportiter
164 exportlocal
165 exportmacro
166 exporttype
167 exportvar
168 exposetrans
169 externalnamecaseinsensitive
170 externalnamelen
171 externalprefix
172 externalprefixexclude
173 f
8e349e11 174 fcnconstraint
885824d3 175 fcnderef
176 fcnmacros
8e349e11 177 fcnpost
885824d3 178 fcnuse
179 fielduse
15b3d2b2 180 fileextensions
885824d3 181 filestaticprefix
182 filestaticprefixexclude
183 firstcase
184 fixedformalarray
185 floatdouble
186 forblock
187 forcehints
188 forempty
189 formalarray
190 formatcode
15b3d2b2 191 formatconst
885824d3 192 formattype
193 forwarddecl
194 freshtrans
195 fullinitblock
196 globalias
197 globalprefix
198 globalprefixexclude
199 globimponly
200 globnoglobs
201 globs
202 globsimpmodsnothing
203 globstate
204 globuse
205 gnuextensions
206 hasyield
207 help
208 hints
209 i
210 ifblock
211 ifempty
212 ignorequals
213 ignoresigns
214 immediatetrans
215 impabstract
216 impcheckedglobs
217 impcheckedspecglobs
218 impcheckedstatics
219 impcheckedstrictglobs
220 impcheckedstrictspecglobs
221 impcheckedstrictstatics
222 impcheckmodglobs
223 impcheckmodinternals
224 impcheckmodspecglobs
225 impcheckmodstatics
226 impconj
15b3d2b2 227 implementationoptional
228 implictconstraint
885824d3 229 impouts
230 imptype
231 includenest
232 incompletetype
233 incondefs
234 incondefslib
15b3d2b2 235 indentspaces
885824d3 236 infloops
237 infloopsuncon
8fe44445 238 initallelements
239 initsize
885824d3 240 internalglobs
241 internalglobsnoglobs
242 internalnamecaseinsensitive
243 internalnamelen
244 internalnamelookalike
245 iterprefix
246 iterprefixexclude
15b3d2b2 247 its4low
248 its4moderate
249 its4mostrisky
250 its4risky
251 its4veryrisky
885824d3 252 keeptrans
253 kepttrans
254 larchpath
255 lclexpect
256 lclimportdir
257 lcs
258 lh
259 libmacros
260 likelybool
261 limit
262 linelen
263 lintcomments
264 load
265 localprefix
266 localprefixexclude
267 longintegral
268 longsignedintegral
269 longunsignedintegral
270 longunsignedunsignedintegral
271 loopexec
272 looploopbreak
273 looploopcontinue
274 loopswitchbreak
275 macroassign
276 macroconstdecl
277 macrodecl
278 macroempty
279 macrofcndecl
280 macromatchname
281 macroparams
282 macroparens
283 macroredef
284 macrostmt
285 macrounrecog
286 macrovarprefix
287 macrovarprefixexclude
288 maintype
289 matchanyintegral
290 matchfields
291 mayaliasunique
292 memchecks
293 memimp
294 memtrans
15b3d2b2 295 misplacedsharequal
885824d3 296 misscase
297 modfilesys
298 modglobs
299 modglobsnomods
300 modglobsunchecked
301 modinternalstrict
302 modnomods
303 modobserver
304 modobserveruncon
305 mods
306 modsimpnoglobs
307 modstrictglobsnomods
308 moduncon
309 modunconnomods
310 modunspec
15b3d2b2 311 mts
312 multithreaded
885824d3 313 mustdefine
314 mustfree
315 mustmod
316 mustnotalias
317 mutrep
318 namechecks
319 needspec
320 nestcomment
321 nestedextern
322 neverinclude
323 newdecl
324 newreftrans
325 nextlinemacros
326 noaccess
327 nocomments
328 noeffect
329 noeffectuncon
330 nof
331 nolib
332 noparams
333 noret
334 null
335 nullassign
336 nullderef
337 nullpass
338 nullptrarith
339 nullret
340 nullstate
8e349e11 341 nullterminated
342 nullterminated
885824d3 343 numenummembers
344 numliteral
345 numstructfields
346 observertrans
347 oldstyle
348 onlytrans
349 onlyunqglobaltrans
15b3d2b2 350 orconstraint
885824d3 351 overload
352 ownedtrans
353 paramimptemp
354 paramuse
15b3d2b2 355 parenconstraint
885824d3 356 parenfileformat
357 partial
358 passunknown
1d239d69 359 portability
885824d3 360 posixlib
361 posixstrictlib
362 predassign
363 predbool
364 predboolint
365 predboolothers
366 predboolptr
367 protoparammatch
368 protoparamname
369 protoparamprefix
370 protoparamprefixexclude
371 ptrarith
372 ptrcompare
373 ptrnegate
374 quiet
375 readonlystrings
376 readonlytrans
377 realcompare
378 redecl
379 redef
15b3d2b2 380 redundantsharequal
885824d3 381 refcounttrans
382 relaxquals
383 relaxtypes
384 repeatunrecog
385 repexpose
386 retalias
387 retexpose
388 retimponly
389 retval
390 retvalbool
391 retvalint
392 retvalother
393 sefparams
394 sefuncon
395 shadow
396 sharedtrans
397 shiftsigned
398 showallconjs
399 showalluses
400 showcolumn
401 showfunc
402 showscan
403 showsummary
404 singleinclude
405 sizeofformalarray
406 sizeoftype
407 skipansiheaders
408 skipposixheaders
409 skipsysheaders
1f11dead 410 slashslashcomment
885824d3 411 slovak
412 slovakconsts
413 slovakfcns
414 slovakmacros
415 slovaktypes
416 slovakvars
417 specglobimponly
418 specimponly
419 specmacros
420 specretimponly
421 specstructimponly
422 specundecl
423 specundef
424 stackref
15b3d2b2 425 statemerge
426 statetransfer
885824d3 427 staticinittrans
428 statictrans
429 stats
430 strictbranchstate
431 strictdestroy
432 strictlib
433 strictops
434 strictusereleased
435 stringliterallen
8fe44445 436 stringliteralnoroom
437 stringliteralsmaller
438 stringliteraltoolong
885824d3 439 structimponly
440 supcounts
15b3d2b2 441 superuser
885824d3 442 switchloopbreak
443 switchswitchbreak
444 syntax
445 sysdirerrors
446 sysdirexpandmacros
447 sysdirs
448 sysunrecog
449 tagprefix
450 tagprefixexclude
451 temptrans
452 timedist
453 tmpcomments
454 tmpdir
15b3d2b2 455 toctou
885824d3 456 topuse
457 trytorecover
458 type
459 typeprefix
460 typeprefixexclude
461 typeuse
462 uncheckedglobalias
463 uncheckedmacroprefix
464 uncheckedmacroprefixexclude
465 uniondef
466 unixlib
1d239d69 467 unixstandard
885824d3 468 unixstrictlib
469 unqualifiedinittrans
470 unqualifiedtrans
471 unreachable
472 unrecog
473 unrecogcomments
15b3d2b2 474 unrecogflagcomments
1d239d69 475 unsignedcompare
885824d3 476 unusedspecial
477 usedef
478 usereleased
479 usestderr
480 usevarargs
481 varuse
482 voidabstract
483 warnflags
484 warnlintcomments
485 warnmissingglobs
486 warnmissingglobsnoglobs
487 warnposixheaders
60868d40 488 warnrc
885824d3 489 warnunixlib
15b3d2b2 490 warnuse
885824d3 491 whichlib
492 whileblock
493 whileempty
cc78dedd 494 zerobool
885824d3 495
496
885824d3 497likelybool --- type name is probably a boolean type but does not match default
498boolean type name, "bool", and alternate name is not set
499impabstract --- assume user type definitions are abstract (unless
500/*@concrete@*/ is used)
501accessall --- set accessmodule, accessfile and accessczech
502accessmodule --- allow access to abstract types in definition module
503accessfile --- allow access to abstract types by file name convention
504accessczech --- allow access to abstract types by czech naming convention
505accessslovak --- allow access to abstract types by slovak naming convention
506accessczechoslovak --- allow access to abstract types by czechoslovak naming
507convention
508abstract --- data abstraction barriers
509mutrep --- representation of mutable type has sharing semantics
510globalias --- function returns with global aliasing external state (sets
511checkstrictglobalias, checkedglobalias, checkmodglobalias and
512uncheckedglobalias)
513checkstrictglobalias --- function returns with a checkstrict global aliasing
514external state
515checkedglobalias --- function returns with a checked global aliasing external
516state
517checkmodglobalias --- function returns with a checkmod global aliasing external
518state
519uncheckedglobalias --- function returns with an unchecked global aliasing
520external state
521aliasunique --- unique parameter is aliased
522mayaliasunique --- unique parameter may be aliased
523mustnotalias --- temp storage aliased at return point or scope exit
524retalias --- function returns alias to parameter or global
525noparams --- function declaration has no parameter list
526oldstyle --- old style function definition
527gnuextensions --- support some gnu (gcc) language extensions
528usevarargs --- non-standard <varargs.h> included
529warnposixheaders --- a POSIX header is included, but the POSIX library is not
530used
531exitarg --- argument to exit has implementation defined behavior
532evalorder --- code has unspecified or implementation-dependent behavior because
533of order of evaluation
534evalorderuncon --- code involving call to unspecified function has undefined or
535implementation-dependent behavior
536boolfalse --- set name of boolean false (default FALSE)
537booltype --- set name of boolean type (default bool)
538booltrue --- set name of boolean true (default TRUE)
539noaccess --- ignore access comments
540nocomments --- ignore all stylized comments
541unrecogcomments --- stylized comment is unrecognized
15b3d2b2 542unrecogflagcomments --- stylized flag comment uses an unrecognized flag
885824d3 543continuecomment --- line continuation marker (\) in comment before */ on same
544line
1f11dead 545slashslashcomment --- C++ style // comment
885824d3 546nestcomment --- comment begins inside comment
547tmpcomments --- interpret t comments (ignore errors in lines marked with
548/*@t<n>@*/
549lintcomments --- interpret traditional lint comments (/*FALLTHROUGH*/,
550/*NOTREACHED*/)
551warnlintcomments --- print a warning and suggest an alternative when a
552traditional lint comment is used
553declundef --- function or variable declared but never defined
554specundef --- function or variable specified but never defined
555specundecl --- function or variable specified but never declared in a source
556file
557loopexec --- assume all loops execute at least once
558infloops --- likely infinite loop is detected
559infloopsuncon --- likely infinite loop is detected (may result from
560unconstrained function)
561deepbreak --- break inside nested while or for or switch
562looploopbreak --- break inside nested while or for
563switchloopbreak --- break in loop inside switch
564loopswitchbreak --- break in switch inside loop
565switchswitchbreak --- break in switch inside switch
566looploopcontinue --- continue inside nested loop
567unreachable --- unreachable code detected
568whileempty --- a while statement has no body
569whileblock --- the body of a while statement is not a block
570forempty --- a for statement has no body
571forblock --- the body of a for statement is not a block
572ifempty --- an if statement has no body
573ifblock --- the body of an if statement is not a block
574allempty --- an if, while or for statement has no body (sets ifempty,
575whileempty and forempty
576allblock --- the body of an if, while or for statement is not a block (sets
577ifblock, whileblock and forblock)
578elseifcomplete --- if ... else if chains must have final else
579noret --- path with no return detected in non-void function
580casebreak --- non-empty case in a switch without preceding break
581misscase --- switch on enum type missing case for some value
582firstcase --- first statement in switch is not a case
583shadow --- declaration reuses name visible in outer scope
584incondefslib --- function, variable or constant defined in a library is
585redefined with inconsistent type
586overload --- library function overloaded
587nestedextern --- an extern declaration is inside a function scope
588redecl --- function or variable redeclared
589redef --- function or variable redefined
590incondefs --- function, variable or constant redefined with inconsistent type
591imptype --- variable declaration has unknown (implicitly int) type
592matchfields --- struct or enum type redefined with inconsistent fields or
593members
594usedef --- use before definition
595impouts --- pointer parameters to unspecified functions may be implicit out
596parameters
597tmpdir --- set directory for writing temp files
598larchpath --- set path for searching for library files (overrides LARCH_PATH
599environment variable)
600lclimportdir --- set directory to search for LCL import files (overrides
601LCLIMPORTDIR)
602sysdirs --- set directories for system files (default /usr/include). Separate
15b3d2b2 603directories with path separator (colons in Unix, semi-colons in Windows). Flag
604settings propagate to files in a system directory. If -sysdirerrors is set, no
605errors are reported for files in system directories.
885824d3 606skipansiheaders --- prevent inclusion of header files in a system directory
607with names that match standard ANSI headers. The symbolic information in the
608standard library is used instead. Flag in effect only if a library including
609the ANSI library is loaded. The ANSI headers are:
610assert, ctype, errno, float, limits, locale, math, setjmp, signal, stdarg,
611stddef, stdio, stdlib, strings, string, time, and wchar.
612skipposixheaders --- prevent inclusion of header files in a system directory
613with names that match standard POSIX headers. The symbolic information in the
614posix library is used instead. The POSIX headers are:
615dirent, fcntl, grp, pwd, termios, sys/stat, sys/times, sys/types, sys/utsname,
616sys/wait, unistd, and utime.
617sysdirerrors --- report errors in files in system directories (set by -sysdirs)
618sysdirexpandmacros --- expand macros in system directories regardless of other
619settings, except for macros corresponding to names defined in a load library
620I<directory> --- add to C include path
621S<directory> --- add to spec path
622quiet --- suppress herald and error count
623usestderr --- send error messages to standard error (instead of standard out)
624showsummary --- show summary of all errors reported and suppressed
625showscan --- show file names are they are processed
626stats --- display lines processed and time
627timedist --- display time distribution
628showalluses --- show sorted list of uses of all globals
629noeffect --- statement with no effect
630noeffectuncon --- statement with no effect (except possibly through call to
631unconstrained function)
632exportany --- variable, function or type exported but not specified
633exportfcn --- function exported but not specified
634exportmacro --- expanded macro exported but not specified
635exporttype --- type definition exported but not specified
636exportvar --- variable exported but not specified
637exportconst --- constant exported but not specified
638exportiter --- constant exported but not specified
639repexpose --- abstract representation is exposed (sets assignexpose, retexpose,
640and castexpose)
641retexpose --- abstract representation is exposed (return values only)
642assignexpose --- abstract representation is exposed (assignments only)
643castexpose --- abstract representation is exposed through a cast
644linelen --- set length of messages (number of chars)
15b3d2b2 645indentspaces --- set number of spaces to indent sub-messages
885824d3 646showcolumn --- show column number where error is found
647parenfileformat --- show column number where error is found
648showfunc --- show name of function containing error
649showallconjs --- show all possible types
650impconj --- make all alternate types implicit (useful for making system
651libraries
652expect --- expect <int> code errors
653lclexpect --- expect <int> spec errors
654partial --- check as partial system (-specundef, -declundef, -exportlocal,
655don't check macros in headers without corresponding .c files)
656globs --- undocumented use of a checked global variable
657globuse --- global listed for a function not used
658internalglobs --- use of internalState
659internalglobsnoglobs --- use of internalState (in function with no globals
660list)
661warnmissingglobs --- global variable used in modifies clause is not listed in
662globals list
663warnmissingglobsnoglobs --- global variable used in modifies clause in a
664function with no globals list
665globnoglobs --- use of checked global in a function with no globals list or
666specification
667allglobs --- report use and modification errors for globals not annotated with
668unchecked
669checkstrictglobs --- report use and modification errors for checkedstrict
670globals
671impcheckedspecglobs --- assume checked qualifier for unqualified global
672declarations in .lcl files
673impcheckmodspecglobs --- assume checkmod qualifier for unqualified global
674declarations in .lcl files
675impcheckedstrictspecglobs --- assume checkmod qualifier for unqualified global
676declarations in .lcl files
677impcheckedglobs --- assume checked qualifier for unqualified global
678declarations
679impcheckmodglobs --- assume checkmod qualifier for unqualified global
680declarations
681impcheckedstrictglobs --- assume checkedstrict qualifier for unqualified global
682declarations
683impcheckedstatics --- assume checked qualifier for unqualified file static
684declarations
685impcheckmodstatics --- assume checkmod qualifier for unqualified file static
686declarations
687impcheckmodinternals --- assume checkmod qualifier for unqualified local static
688declarations (for internal state modifications)
689impcheckedstrictstatics --- assume checkedstrict qualifier for unqualified file
690static declarations
691modglobs --- undocumented modification of a checked global variable
692modglobsnomods --- undocumented modification of a checked global variable in a
693function declared with no modifies clause
694modstrictglobsnomods --- undocumented modification of a strict checked global
695variable in a function declared with no modifies clause
696modglobsunchecked --- undocumented modification of an unchecked checked global
697variable
698lh --- generate .lh files
699lcs --- generate .lcs files
700singleinclude --- optimize header inclusion to eliminate redundant includes
701neverinclude --- optimize header inclusion to not include any header files
702skipsysheaders --- do not include header files in system directories (set by
703-sysdirs)
60868d40 704warnflags --- warn when command line sets flag in abnormal way
705warnrc --- warn when there are problems with reading the initialization files
885824d3 706warnunixlib --- warn when the unix library is used
15b3d2b2 707badflag --- warn about bad command line flags
60868d40 708forcehints --- provide a hint for every warnings
885824d3 709help --- -help <flags> will describe flags
60868d40 710hints --- provide a hint the first time a particular warning appears
885824d3 711retval --- return value ignored (sets retvalint, retvalbool and retvalother)
712retvalother --- return value of type other than bool or int ignored
cc78dedd 713retvalbool --- return value of manifest type bool ignored
885824d3 714retvalint --- return value of type int ignored
60868d40 715f --- read an options file (default ~/.splintrc not loaded)
885824d3 716i --- set LCL initilization file
717nof --- do not read options file
718needspec --- information in specifications is not also included in syntactic
719comments
720newdecl --- report new global declarations in source files
721hasyield --- iter declaration has no yield parameters
722dump --- save state for merging (default suffix .lcd)
723load --- load state from dump file (default suffix .lcd)
724nolib --- do not load standard library
725ansilib --- use ANSI (ISO) standard library
726strictlib --- interpret standard library strictly
727unixlib --- use UNIX (sort-of) standard library
728unixstrictlib --- use strict version of UNIX (sort-of) library
729posixlib --- use POSIX standard library
730posixstrictlib --- use strict POSIX standard library
731whichlib --- show standard library filename
15b3d2b2 732mts --- load meta state declaration and corresponding xh file
885824d3 733commentchar --- set marker character for syntactic comments (default is '@')
734allmacros --- sets fcnmacros and constmacros
735libmacros --- check all macros with declarations in library as functions
736specmacros --- check all macros corresponding to specified functions or
737constants
738fcnmacros --- check all macros with parameter lists as functions
739constmacros --- check all macros without parameter lists as constants
740macromatchname --- macro definition does not match iter or constant declaration
741nextlinemacros --- the line after a constant or iter declaration must be a
742macro definition
743macrostmt --- macro definition is syntactically not equivalent to function
744macroempty --- macro definition for is empty
745macroparams --- macro parameter not used exactly once
746macroassign --- assignment to a macro parameter
747sefparams --- a parameter with side-effects is passed as a sef parameter
748sefuncon --- a parameter with unconstrained side-effects is passed as a sef
749parameter
750macroparens --- macro parameter used without parentheses (in potentially
751dangerous context)
752macrodecl --- macro without prototype or specification (sets macrofcndecl and
753macroconstdecl)
754macrofcndecl --- parameterized macro without prototype or specification
755macroconstdecl --- non-parameterized macro without prototype or specification
756macroredef --- macro redefined
757macrounrecog --- unrecognized identifier in macro
758stackref --- external reference to stack-allocated storage is created
759usereleased --- storage used after release
760strictusereleased --- element used after it may have been released
761compdef --- parameter, return value or global completely defined
762compmempass --- actual parameter matches alias kind of formal parameter
763completely
764mustdefine --- out storage not defined before return or scope exit
765uniondef --- at least one field of a union must be defined
766memimp --- memory errors for unqualified storage
767paramimptemp --- assume unannotated parameter is temp
768allimponly --- sets globimponly, retimponly, structimponly, specglobimponly,
769specretimponly and specstructimponly
770codeimponly --- sets globimponly, retimponly and structimponly
771specimponly --- sets specglobimponly, specretimponly and specstructimponly
772globimponly --- assume unannotated global storage is only
773retimponly --- assume unannotated returned storage is only
774structimponly --- assume unannotated structure field is only
775specglobimponly --- assume unannotated global storage is only
776specretimponly --- assume unannotated returned storage is only
777specstructimponly --- assume unannotated structure field is only
778deparrays --- array elements are dependent storage
779compdestroy --- all only references derivable from void pointer out only
780parameter are released
781strictdestroy --- report complete destruction errors for array elements that
782may have been released
783mustfree --- only storage not released before return or scope exit
784branchstate --- storage has inconsistent states of alternate paths through a
785branch
786strictbranchstate --- storage through array fetch has inconsistent states of
787alternate paths through a branch
788memchecks --- sets all dynamic memory checking flags (memimplicit, mustfree,
789mustdefine, mustnotalias, null, memtrans)
790memtrans --- memory transfer errors (sets all *trans flags)
791exposetrans --- exposure transfer errors
792observertrans --- observer transfer errors
793dependenttrans --- dependent transfer errors
794newreftrans --- new reference transfer to reference counted reference
795onlytrans --- only storage transferred to non-only reference (memory leak)
796onlyunqglobaltrans --- only storage transferred to an unqualified global or
797static reference (memory leak)
798ownedtrans --- owned storage transferred to non-owned reference (memory leak)
799freshtrans --- fresh storage transferred to non-only reference (memory leak)
800sharedtrans --- shared storage transferred to non-shared reference
801temptrans --- temp storage transferred to non-temporary reference
802kepttrans --- kept storage transferred to non-temporary reference
803keeptrans --- keep storage transferred inconsistently
804immediatetrans --- an immediate address (result of &) is transferred
805inconsistently
806refcounttrans --- reference counted storage is transferred in an inconsistent
807way
808statictrans --- static storage is transferred in an inconsistent way
809unqualifiedtrans --- unqualified storage is transferred in an inconsistent way
810staticinittrans --- static storage is used as an initial value in an
811inconsistent way
812unqualifiedinittrans --- unqualified storage is used as an initial value in an
813inconsistent way
814readonlystrings --- string literals are read-only (error if one is modified or
815released)
816readonlytrans --- report memory transfer errors for initializations to
817read-only string literals
818passunknown --- passing a value as an un-annotated parameter clears its
819annotation
820mods --- unspecified modification of caller-visible state
821mustmod --- specified modification is not detected
822modobserver --- possible modification of observer storage
823modobserveruncon --- possible modification of observer storage through
824unconstrained call
825modinternalstrict --- possible modification of internal storage through
826function call
827modfilesys --- report undocumented file system modifications (applies to
828unspecified functions if modnomods is set)
829modunspec --- modification in unspecified functions (sets modnomods,
830modglobunspec and modstrictglobsunspec)
831modnomods --- modification in a function with no modifies clause
832moduncon --- possible modification through a call to an unconstrained function
833modunconnomods --- possible modification through a call to an unconstrained
834function in a function with no modifies clause
835globsimpmodsnothing --- functions declared with a globals list but no modifies
836clause are assumed to modify nothing
837modsimpnoglobs --- functions declared with a modifies clause but no globals
838list are assumed to use no globals
839namechecks --- controls name checking without changing other settings
840czech --- czech naming convention (sets accessczech, czechfunctions, czechvars,
841czechconstants, czechenums, and czechmacros)
842czechfcns --- czech naming convention violated in a function or iterator
843declaration
844czechvars --- czech naming convention violated in a variable declaration
845czechmacros --- czech naming convention violated in an expanded macro name
846czechconsts --- czech naming convention violated in a constant declaration
847czechtypes --- czech naming convention violated in a user-defined type
848definition
849slovak --- slovak naming convention violated
850slovakfcns --- slovak naming convention violated in a function or iterator
851declaration
852slovakmacros --- slovak naming convention violated in an expanded macro name
853slovakvars --- slovak naming convention violated in a variable declaration
854slovakconsts --- slovak naming convention violated in a constant declaration
855slovaktypes --- slovak naming convention violated in a use-defined type
856definition
857czechoslovak --- czech or slovak naming convention violated
858czechoslovakfcns --- czechoslovak naming convention violated in a function or
859iterator declaration
860czechoslovakmacros --- czechoslovak naming convention violated in an expanded
861macro name
862czechoslovakvars --- czechoslovak naming convention violated in a variable
863declaration
864czechoslovakconsts --- czechoslovak naming convention violated in a constant
865declaration
866czechoslovaktypes --- czechoslovak naming convention violated in a user-defined
867type definition
868ansireserved --- external name conflicts with name reserved for system or
869standard library
870cppnames --- external or internal name is a C++ keyword or reserved word
871ansireservedinternal --- internal name conflicts with name reserved for system
872or standard library
873distinctexternalnames --- external name is not distinguishable from another
874external name using the number of significant characters
875externalnamelen --- set the number of significant characters in an external
876name
877externalnamecaseinsensitive --- alphabetic comparisons for external names are
878case-insensitive
879distinctinternalnames --- internal name is not distinguishable from another
880internal name using the number of significant characters
881internalnamelen --- set the number of significant characters in an internal
882name
883internalnamecaseinsensitive --- set whether case is significant an internal
884names (-internalnamecaseinsensitive means case is significant)
885internalnamelookalike --- lookalike characters match in internal names
886macrovarprefix --- set namespace prefix for variables declared in a macro body
887macrovarprefixexclude --- the macrovarprefix may not be used for non-macro
888variables
889tagprefix --- set namespace prefix for struct, union and enum tags
890tagprefixexclude --- the tagprefix may not be used for non-tag identifiers
891enumprefix --- set namespace prefix for enum members
892enumprefixexclude --- the enumprefix may not be used for non-enum member
893identifiers
894filestaticprefix --- set namespace prefix for file static declarations
895filestaticprefixexclude --- the filestaticprefix may not be used for
896identifiers that are not file static
897globalprefix --- set namespace prefix for global variables
898globalprefixexclude --- the globalprefix may not be used for non-global
899identifiers
900typeprefix --- set namespace prefix for user-defined types
901typeprefixexclude --- the typeprefix may not be used for identifiers that are
902not type names
903externalprefix --- set namespace prefix for external identifiers
904externalprefixexclude --- the externalprefix may not be used for non-external
905identifiers
906localprefix --- set namespace prefix for local variables
907localprefixexclude --- the localprefix may not be used for non-local
908identifiers
909uncheckedmacroprefix --- set namespace prefix for unchecked macros
910uncheckedmacroprefixexclude --- the uncheckmacroprefix may not be used for
911identifiers that are not unchecked macros
912constprefix --- set namespace prefix for constants
913constprefixexclude --- the constprefix may not be used for non-constant
914identifiers
915iterprefix --- set namespace prefix for iterators
916iterprefixexclude --- the iterprefix may not be used for non-iter identifiers
917protoparamprefix --- set namespace prefix for parameters in function prototype
918declarations
919protoparamname --- a parameter in a function prototype has a name
920protoparammatch --- the name of a parameter in a function prototype and
921corresponding declaration must match (after removing the protoparamprefix
922protoparamprefixexclude --- the protoparamprefix may not be used for
923non-declaraction parameter identifiers
924controlnestdepth --- set maximum nesting depth of compound statements,
925iteration control structures, and selection control structures (ANSI minimum is
92615)
927stringliterallen --- set maximum length of string literals (ANSI minimum is
928509)
929numstructfields --- set maximum number of fields in a struct or union (ANSI
930minimum is 127)
931numenummembers --- set maximum number of members of an enum (ANSI minimum is
932127)
933includenest --- set maximum number of nested #include files
934ansilimits --- check for violations of standard limits (controlnestdepth,
935stringliterallen, includenest, numstructfields, numenummembers)
936null --- misuses of null pointer
8e349e11 937nullterminated --- misuse of nullterminated allocation
8e349e11 938arrayread --- possible out of bounds read
939arraywrite --- possible buffer overflow from an out of bounds write
940fcnpost --- Function has the post condition
15b3d2b2 941parenconstraint --- parenthesize constraint term
942debugfcnconstraint --- debuging constraint flas
943arraybounds --- Possible out-of-bounds store. Unable to resolve constraint:
944arrayboundsread --- Possible out-of-bounds read. Unable to resolve constraint:
8e349e11 945fcnconstraint --- unresolved constraint
15b3d2b2 946checkpost --- unable to verify ensures annotation
947constraintlocation --- display full c expression for every constraint generated
948implictconstraint --- Try to generate implicit constraints for functions
949orconstraint --- Use limited OR expressions to resolve constraints
8e349e11 950nullterminated --- misuse of nullterminated allocation
885824d3 951nullderef --- possible dereferencce of null pointer
952fcnderef --- dereferencce of a function type
953nullpass --- possibly null pointer passed as formal with no null annotation
954nullret --- possibly null pointer returned as result with no null annotation
955nullstate --- possibly null pointer reachable from a reference with no null
956annotation
957nullassign --- inconsistent assignment or initialization involving null pointer
958boolcompare --- comparison between bools (dangerous because of multiple TRUE
959values)
960realcompare --- dangerous comparison between reals (dangerous because of
961inexact floating point representations)
1d239d69 962unsignedcompare --- comparison using <, <=, >= between an unsigned integral and
963zero constant
885824d3 964ptrarith --- arithmetic involving pointer and integer
965nullptrarith --- arithmetic involving possibly null pointer and integer
966ptrcompare --- comparison between pointer and number
967strictops --- primitive operation does not type check strictly
968bitwisesigned --- a bitwise logical operator does not have unsigned operands
969shiftsigned --- a shift operator does not have unsigned operands
970boolops --- primitive operation (!, && or ||) does not has a boolean argument
971ptrnegate --- allow ! to be used on pointer operand
972sizeoftype --- sizeof operator has a type argument
973sizeofformalarray --- sizeof operator has an array formal parameter argument
974fixedformalarray --- formal parameter of type array is declared with size
975incompletetype --- formal parameter has an incomplete type
976formalarray --- formal parameter is an array
977predassign --- condition test (if, while or for) is an assignment
978predbool --- type of condition test (if, while or for) not bool (sets
979predboolint, predboolptr and predboolothers)
980predboolint --- type of condition test (if, while or for) is an integral type
981predboolothers --- type of condition test (if, while or for) not bool, int or
982pointer
983predboolptr --- type of condition test (if, while or for) is a pointer
984D<initializer> --- passed to pre-processor
985U<initializer> --- passed to pre-processor
986globstate --- returns with global in inconsistent state (null or undefined)
987supcounts --- The number of errors detected does not match number in
988/*@i<n>@*/.
989limit --- limit <int> consecutive repeated errors
990syntax --- syntax error in parsing
991trytorecover --- try to recover from parse error
992type --- type mismatch
993fullinitblock --- initializer sets all fields
8fe44445 994initallelements --- initializer defines all array elements
995initsize --- initializer defines extra array elements
996stringliteraltoolong --- string literal too long for character array
997stringliteralnoroom --- string literal leaves no room for null terminator
998stringliteralsmaller --- string literal is smaller than the char array it is
999assigned to
885824d3 1000enummembers --- enum members must be int values
1001maintype --- type of main does not match expected type
1002formattype --- type-mismatch in parameter corresponding to format code in a
1003printf or scanf-like function
15b3d2b2 1004formatconst --- format parameter is not a string constant (hence variable
1005arguments cannot be typechecked)
885824d3 1006formatcode --- invalid format code in format string for printf or scanf-like
1007function
1008forwarddecl --- forward declarations of pointers to abstract representation
1009match abstract type
1010voidabstract --- void * matches pointers to abstract types, casting ok
1011(dangerous)
1012castfcnptr --- a pointer to a function is cast to a pointer to void (or vice
1013versa)
1014charindex --- char can be used to index arrays
1015enumindex --- enum can be used to index arrays
1016boolint --- bool and int are equivalent
1017charint --- char and int are equivalent
1018enumint --- enum and int are equivalent
1019floatdouble --- float and double are equivalent
1020ignorequals --- ignore type qualifiers (long, short, unsigned)
1021duplicatequals --- report duplicate type qualifiers (e.g., long long)
1022ignoresigns --- ignore signs in type comparisons (unsigned matches signed)
1023numliteral --- int literals can be reals
1024charintliteral --- character constants (e.g., 'a') can be used as ints
1025relaxquals --- report qualifier mismatches only if dangerous
1026relaxtypes --- allow all numeric types to match
1027charunsignedchar --- allow char and unsigned char types to match
1028matchanyintegral --- allow any intergral type to match an arbitrary integral
1029type (e.g., dev_t)
1030longunsignedintegral --- allow long unsigned type to match an arbitrary
1031integral type (e.g., dev_t)
1032longintegral --- allow long type to match an arbitrary integral type (e.g.,
1033dev_t)
1034longunsignedunsignedintegral --- allow long unsigned type to match an arbitrary
1035unsigned integral type (e.g., size_t)
1036longsignedintegral --- allow long type to match an arbitrary signed integral
1037type (e.g., ssize_t)
1038zeroptr --- 0 is treated as a pointer
cc78dedd 1039zerobool --- 0 is treated as a boolean
885824d3 1040repeatunrecog --- do not suppress repeated unrecognized identifier messages
1041(instead of only reporting the first error)
1042sysunrecog --- report unrecognized identifiers with system (__) prefix
1043unrecog --- unrecognized identifier
1044topuse --- declaration at top level not used
1045exportlocal --- a declaration is exported but not used outside this module
1046exportheader --- a declaration is exported but does not appear in a header file
1047exportheadervar --- a variable declaration is exported but does not appear in a
1048header file
1049fielduse --- field of structure type not used
1050enummemuse --- member of an enum type not used
1051constuse --- constant declared but not used
1052fcnuse --- function declared but not used
1053paramuse --- function parameter not used
1054typeuse --- type declared but not used
1055varuse --- variable declared but not used
1056unusedspecial --- unused declaration in special file (corresponding to .l or .y
1057file)
15b3d2b2 1058redundantsharequal --- declaration uses observer qualifier that is always true
1059misplacedsharequal --- declaration of unsharable storage uses sharing
1060annotation
1061annotationerror --- annotation is used in inconsistent location
1062commenterror --- inconsistent syntactic comment
1063bugslimit --- set maximum number of bugs detected before giving up
1064fileextensions --- warn when command line file does not have a recognized
1065extension
1066warnuse --- warn when declaration marked with warn is used
1067statetransfer --- storage has been transfered with invalid state
1068statemerge --- control paths merge with storage in incompatible states
1069its4mostrisky --- most risky security vulnerabilities (from its4 database)
1070its4veryrisky --- very risky security vulnerabilities (from its4 database)
1071its4risky --- risky security vulnerabilities (from its4 database)
1072its4moderate --- moderately risky security vulnerabilities (from its4 database)
1073its4low --- risky security vulnerabilities (from its4 database)
1074bufferoverflowhigh --- likely buffer overflow vulnerability
1075bufferoverflow --- possible buffer overflow vulnerability
1076toctou --- possible time of check, time of use vulnerability
1077multithreaded --- function is not reentrant
1d239d69 1078portability --- function may have undefined behavior
1079unixstandard --- function is not required in Standard UNIX Specification
15b3d2b2 1080superuser --- function is restricted to superusers
1081implementationoptional --- declarator is implementation optional (ISO99 does
1082not require an implementation to provide it)
885824d3 1083
This page took 0.214235 seconds and 5 git commands to generate.