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