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