]> andersk Git - splint.git/blame - test/help.expect
Renamed lclintMacros.nf splintMacros.nf
[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
527impouts --- pointer parameters to unspecified functions may be implicit out
528parameters
529incondefs --- function, variable or constant redefined with inconsistent type
530matchfields --- struct or enum type redefined with inconsistent fields or
531members
532fcnderef --- dereferencce of a function type
533realcompare --- dangerous comparison between reals (dangerous because of
534inexact floating point representations)
535unsignedcompare --- comparison using <, <=, >= between an unsigned integral and
536zero constant
537ptrarith --- arithmetic involving pointer and integer
538nullptrarith --- arithmetic involving possibly null pointer and integer
539ptrcompare --- comparison between pointer and number
540strictops --- primitive operation does not type check strictly
541bitwisesigned --- a bitwise logical operator does not have unsigned operands
542shiftnegative --- a shift right operand may be negative
543shiftimplementation --- a shift left operand may be negative
544sizeoftype --- sizeof operator has a type argument
545sizeofformalarray --- sizeof operator has an array formal parameter argument
546fixedformalarray --- formal parameter of type array is declared with size
547incompletetype --- formal parameter has an incomplete type
548formalarray --- formal parameter is an array
549booltype --- set name of boolean type (default bool)
550boolfalse --- set name of boolean false (default FALSE)
551booltrue --- set name of boolean true (default TRUE)
885824d3 552likelybool --- type name is probably a boolean type but does not match default
553boolean type name, "bool", and alternate name is not set
bb7c2085 554boolcompare --- comparison between bools (dangerous because of multiple TRUE
555values)
556boolops --- primitive operation (!, && or ||) does not has a boolean argument
557ptrnegate --- allow ! to be used on pointer operand
558predassign --- condition test (if, while or for) is an assignment
559predbool --- type of condition test (if, while or for) not bool (sets
560predboolint, predboolptr and predboolothers)
561predboolint --- type of condition test (if, while or for) is an integral type
562predboolptr --- type of condition test (if, while or for) is a pointer
563predboolothers --- type of condition test (if, while or for) not bool, int or
564pointer
565abstract --- data abstraction barriers
885824d3 566impabstract --- assume user type definitions are abstract (unless
567/*@concrete@*/ is used)
885824d3 568accessmodule --- allow access to abstract types in definition module
569accessfile --- allow access to abstract types by file name convention
570accessczech --- allow access to abstract types by czech naming convention
571accessslovak --- allow access to abstract types by slovak naming convention
572accessczechoslovak --- allow access to abstract types by czechoslovak naming
573convention
bb7c2085 574accessall --- set accessmodule, accessfile and accessczech
885824d3 575mutrep --- representation of mutable type has sharing semantics
bb7c2085 576mustfreefresh --- freshly allocated storage not released before return or scope
577exit
578mustfreeonly --- only storage not released before return or scope exit
579mustfree --- fresh or only storage not released before return or scope exit
580(sets mustfreefresh and mustfreeonly)
581usereleased --- storage used after release
582strictusereleased --- element used after it may have been released
583compdestroy --- all only references derivable from void pointer out only
584parameter are released
585strictdestroy --- report complete destruction errors for array elements that
586may have been released
587deparrays --- array elements are dependent storage
588branchstate --- storage has inconsistent states of alternate paths through a
589branch
590strictbranchstate --- storage through array fetch has inconsistent states of
591alternate paths through a branch
592memchecks --- sets all dynamic memory checking flags (memimplicit, mustfree,
593mustdefine, mustnotalias, null, memtrans)
594compmempass --- actual parameter matches alias kind of formal parameter
595completely
596stackref --- external reference to stack-allocated storage is created
597memtrans --- memory transfer errors (sets all *trans flags)
598dependenttrans --- dependent transfer errors
599newreftrans --- new reference transfer to reference counted reference
600onlytrans --- only storage transferred to non-only reference (memory leak)
601onlyunqglobaltrans --- only storage transferred to an unqualified global or
602static reference (memory leak)
603ownedtrans --- owned storage transferred to non-owned reference (memory leak)
604freshtrans --- fresh storage transferred to non-only reference (memory leak)
605sharedtrans --- shared storage transferred to non-shared reference
606temptrans --- temp storage transferred to non-temporary reference
607kepttrans --- kept storage transferred to non-temporary reference
608keeptrans --- keep storage transferred inconsistently
609immediatetrans --- an immediate address (result of &) is transferred
610inconsistently
611refcounttrans --- reference counted storage is transferred in an inconsistent
612way
613statictrans --- static storage is transferred in an inconsistent way
614unqualifiedtrans --- unqualified storage is transferred in an inconsistent way
615staticinittrans --- static storage is used as an initial value in an
616inconsistent way
617unqualifiedinittrans --- unqualified storage is used as an initial value in an
618inconsistent way
619readonlytrans --- report memory transfer errors for initializations to
620read-only string literals
621passunknown --- passing a value as an un-annotated parameter clears its
622annotation
623readonlystrings --- string literals are read-only (error if one is modified or
624released)
625memimp --- memory errors for unqualified storage
626paramimptemp --- assume unannotated parameter is temp
627allimponly --- sets globimponly, retimponly, structimponly, specglobimponly,
628specretimponly and specstructimponly
629codeimponly --- sets globimponly, retimponly and structimponly
630specimponly --- sets specglobimponly, specretimponly and specstructimponly
631globimponly --- assume unannotated global storage is only
632retimponly --- assume unannotated returned storage is only
633structimponly --- assume unannotated structure field is only
634specglobimponly --- assume unannotated global storage is only
635specretimponly --- assume unannotated returned storage is only
636specstructimponly --- assume unannotated structure field is only
637aliasunique --- unique parameter is aliased
638mayaliasunique --- unique parameter may be aliased
639mustnotalias --- temp storage aliased at return point or scope exit
640retalias --- function returns alias to parameter or global
885824d3 641globalias --- function returns with global aliasing external state (sets
642checkstrictglobalias, checkedglobalias, checkmodglobalias and
643uncheckedglobalias)
644checkstrictglobalias --- function returns with a checkstrict global aliasing
645external state
646checkedglobalias --- function returns with a checked global aliasing external
647state
648checkmodglobalias --- function returns with a checkmod global aliasing external
649state
650uncheckedglobalias --- function returns with an unchecked global aliasing
651external state
bb7c2085 652exposetrans --- exposure transfer errors
653observertrans --- observer transfer errors
885824d3 654repexpose --- abstract representation is exposed (sets assignexpose, retexpose,
655and castexpose)
656retexpose --- abstract representation is exposed (return values only)
657assignexpose --- abstract representation is exposed (assignments only)
658castexpose --- abstract representation is exposed through a cast
bb7c2085 659redundantsharequal --- declaration uses observer qualifier that is always true
660misplacedsharequal --- declaration of unsharable storage uses sharing
661annotation
662mods --- unspecified modification of caller-visible state
663mustmod --- specified modification is not detected
664modobserver --- possible modification of observer storage
665modobserveruncon --- possible modification of observer storage through
666unconstrained call
667modinternalstrict --- possible modification of internal storage through
668function call
669modfilesys --- report undocumented file system modifications (applies to
670unspecified functions if modnomods is set)
671modunspec --- modification in unspecified functions (sets modnomods,
672modglobunspec and modstrictglobsunspec)
673modnomods --- modification in a function with no modifies clause
674moduncon --- possible modification through a call to an unconstrained function
675modunconnomods --- possible modification through a call to an unconstrained
676function in a function with no modifies clause
677globsimpmodsnothing --- functions declared with a globals list but no modifies
678clause are assumed to modify nothing
679modsimpnoglobs --- functions declared with a modifies clause but no globals
680list are assumed to use no globals
681globstate --- returns with global in inconsistent state (null or undefined)
885824d3 682globs --- undocumented use of a checked global variable
683globuse --- global listed for a function not used
684internalglobs --- use of internalState
685internalglobsnoglobs --- use of internalState (in function with no globals
686list)
687warnmissingglobs --- global variable used in modifies clause is not listed in
688globals list
689warnmissingglobsnoglobs --- global variable used in modifies clause in a
690function with no globals list
691globnoglobs --- use of checked global in a function with no globals list or
692specification
693allglobs --- report use and modification errors for globals not annotated with
694unchecked
695checkstrictglobs --- report use and modification errors for checkedstrict
696globals
697impcheckedspecglobs --- assume checked qualifier for unqualified global
698declarations in .lcl files
699impcheckmodspecglobs --- assume checkmod qualifier for unqualified global
700declarations in .lcl files
701impcheckedstrictspecglobs --- assume checkmod qualifier for unqualified global
702declarations in .lcl files
703impcheckedglobs --- assume checked qualifier for unqualified global
704declarations
705impcheckmodglobs --- assume checkmod qualifier for unqualified global
706declarations
707impcheckedstrictglobs --- assume checkedstrict qualifier for unqualified global
708declarations
709impcheckedstatics --- assume checked qualifier for unqualified file static
710declarations
711impcheckmodstatics --- assume checkmod qualifier for unqualified file static
712declarations
713impcheckmodinternals --- assume checkmod qualifier for unqualified local static
714declarations (for internal state modifications)
715impcheckedstrictstatics --- assume checkedstrict qualifier for unqualified file
716static declarations
717modglobs --- undocumented modification of a checked global variable
718modglobsnomods --- undocumented modification of a checked global variable in a
719function declared with no modifies clause
720modstrictglobsnomods --- undocumented modification of a strict checked global
721variable in a function declared with no modifies clause
722modglobsunchecked --- undocumented modification of an unchecked checked global
723variable
bb7c2085 724noret --- path with no return detected in non-void function
725emptyreturn --- empty return in function declared to return value
726alwaysexits --- loop predicate always exits
727loopexec --- assume all loops execute at least once (sets forloopexec,
728whileloopexec and iterloopexec)
729forloopexec --- assume all for loops execute at least once
730whileloopexec --- assume all while loops execute at least once
731iterloopexec --- assume all iterator loops execute at least once
732obviousloopexec --- assume loop that can be determined to always execute always
733does
734evalorder --- code has unspecified or implementation-dependent behavior because
735of order of evaluation
736evalorderuncon --- code involving call to unspecified function has undefined or
737implementation-dependent behavior
738infloops --- likely infinite loop is detected
739infloopsuncon --- likely infinite loop is detected (may result from
740unconstrained function)
741casebreak --- non-empty case in a switch without preceding break
742misscase --- switch on enum type missing case for some value
743firstcase --- first statement in switch is not a case
744duplicatecases --- duplicate cases in switch
745deepbreak --- break inside nested while or for or switch
746looploopbreak --- break inside nested while or for
747switchloopbreak --- break in loop inside switch
748loopswitchbreak --- break in switch inside loop
749switchswitchbreak --- break in switch inside switch
750looploopcontinue --- continue inside nested loop
751whileempty --- a while statement has no body
752whileblock --- the body of a while statement is not a block
753forempty --- a for statement has no body
754forblock --- the body of a for statement is not a block
755ifempty --- an if statement has no body
756ifblock --- the body of an if statement is not a block
757allempty --- an if, while or for statement has no body (sets ifempty,
758whileempty and forempty
759allblock --- the body of an if, while or for statement is not a block (sets
760ifblock, whileblock and forblock)
761elseifcomplete --- if ... else if chains must have final else
762unreachable --- unreachable code detected
763noeffect --- statement with no effect
764noeffectuncon --- statement with no effect (except possibly through call to
765unconstrained function)
885824d3 766retval --- return value ignored (sets retvalint, retvalbool and retvalother)
767retvalother --- return value of type other than bool or int ignored
cc78dedd 768retvalbool --- return value of manifest type bool ignored
885824d3 769retvalint --- return value of type int ignored
bb7c2085 770nullterminated --- misuse of nullterminated allocation
771bounds --- memory bounds checking (sets boundsread and boundswrite)
772boundsread --- possible out of bounds read
773boundswrite --- possible buffer overflow from an out of bounds write
774fcnpost --- display function post conditions
775checkpost --- unable to verify predicate in ensures clause
776implictconstraint --- generate implicit constraints for functions
777orconstraint --- use limited OR expressions to resolve constraints
778nullterminated --- misuse of nullterminated allocation
779showconstraintparens --- display parentheses around constraint terms
780showconstraintlocation --- display location for every constraint generated
15b3d2b2 781mts --- load meta state declaration and corresponding xh file
bb7c2085 782statetransfer --- storage has been transfered with invalid state
783statemerge --- control paths merge with storage in incompatible states
784macroredef --- macro redefined
785macrounrecog --- unrecognized identifier in macro
786macroconstdecl --- non-parameterized macro without prototype or specification
885824d3 787macrostmt --- macro definition is syntactically not equivalent to function
788macroempty --- macro definition for is empty
789macroparams --- macro parameter not used exactly once
bb7c2085 790macroreturn --- return statement in macro body
885824d3 791macroassign --- assignment to a macro parameter
885824d3 792macroparens --- macro parameter used without parentheses (in potentially
793dangerous context)
794macrodecl --- macro without prototype or specification (sets macrofcndecl and
795macroconstdecl)
796macrofcndecl --- parameterized macro without prototype or specification
bb7c2085 797sefparams --- a parameter with side-effects is passed as a sef parameter
798sefuncon --- a parameter with unconstrained side-effects is passed as a sef
799parameter
800constmacros --- check all macros without parameter lists as constants
801fcnmacros --- check all macros with parameter lists as functions
802allmacros --- sets fcnmacros and constmacros
803libmacros --- check all macros with declarations in library as functions
804specmacros --- check all macros corresponding to specified functions or
805constants
806macromatchname --- macro definition does not match iter or constant declaration
807nextlinemacros --- the line after a constant or iter declaration must be a
808macro definition
809iterbalance --- iter is not balanced with end_<iter>
810iteryield --- iter yield parameter is inappropriate
811hasyield --- iter declaration has no yield parameters
885824d3 812namechecks --- controls name checking without changing other settings
813czech --- czech naming convention (sets accessczech, czechfunctions, czechvars,
814czechconstants, czechenums, and czechmacros)
815czechfcns --- czech naming convention violated in a function or iterator
816declaration
817czechvars --- czech naming convention violated in a variable declaration
818czechmacros --- czech naming convention violated in an expanded macro name
819czechconsts --- czech naming convention violated in a constant declaration
820czechtypes --- czech naming convention violated in a user-defined type
821definition
822slovak --- slovak naming convention violated
823slovakfcns --- slovak naming convention violated in a function or iterator
824declaration
825slovakmacros --- slovak naming convention violated in an expanded macro name
826slovakvars --- slovak naming convention violated in a variable declaration
827slovakconsts --- slovak naming convention violated in a constant declaration
828slovaktypes --- slovak naming convention violated in a use-defined type
829definition
830czechoslovak --- czech or slovak naming convention violated
831czechoslovakfcns --- czechoslovak naming convention violated in a function or
832iterator declaration
833czechoslovakmacros --- czechoslovak naming convention violated in an expanded
834macro name
835czechoslovakvars --- czechoslovak naming convention violated in a variable
836declaration
837czechoslovakconsts --- czechoslovak naming convention violated in a constant
838declaration
839czechoslovaktypes --- czechoslovak naming convention violated in a user-defined
840type definition
885824d3 841macrovarprefix --- set namespace prefix for variables declared in a macro body
842macrovarprefixexclude --- the macrovarprefix may not be used for non-macro
843variables
844tagprefix --- set namespace prefix for struct, union and enum tags
845tagprefixexclude --- the tagprefix may not be used for non-tag identifiers
846enumprefix --- set namespace prefix for enum members
847enumprefixexclude --- the enumprefix may not be used for non-enum member
848identifiers
849filestaticprefix --- set namespace prefix for file static declarations
850filestaticprefixexclude --- the filestaticprefix may not be used for
851identifiers that are not file static
852globalprefix --- set namespace prefix for global variables
853globalprefixexclude --- the globalprefix may not be used for non-global
854identifiers
855typeprefix --- set namespace prefix for user-defined types
856typeprefixexclude --- the typeprefix may not be used for identifiers that are
857not type names
858externalprefix --- set namespace prefix for external identifiers
859externalprefixexclude --- the externalprefix may not be used for non-external
860identifiers
861localprefix --- set namespace prefix for local variables
862localprefixexclude --- the localprefix may not be used for non-local
863identifiers
864uncheckedmacroprefix --- set namespace prefix for unchecked macros
865uncheckedmacroprefixexclude --- the uncheckmacroprefix may not be used for
866identifiers that are not unchecked macros
867constprefix --- set namespace prefix for constants
868constprefixexclude --- the constprefix may not be used for non-constant
869identifiers
870iterprefix --- set namespace prefix for iterators
871iterprefixexclude --- the iterprefix may not be used for non-iter identifiers
872protoparamprefix --- set namespace prefix for parameters in function prototype
873declarations
bb7c2085 874isoreserved --- external name conflicts with name reserved for system or
875standard library
876cppnames --- external or internal name is a C++ keyword or reserved word
877isoreservedinternal --- internal name conflicts with name reserved for system
878or standard library
879distinctexternalnames --- external name is not distinguishable from another
880external name using the number of significant characters
881externalnamelen --- set the number of significant characters in an external
882name
883externalnamecaseinsensitive --- alphabetic comparisons for external names are
884case-insensitive
885distinctinternalnames --- internal name is not distinguishable from another
886internal name using the number of significant characters
887internalnamelen --- set the number of significant characters in an internal
888name
889internalnamecaseinsensitive --- set whether case is significant an internal
890names (-internalnamecaseinsensitive means case is significant)
891internalnamelookalike --- lookalike characters match in internal names
885824d3 892protoparamname --- a parameter in a function prototype has a name
893protoparammatch --- the name of a parameter in a function prototype and
894corresponding declaration must match (after removing the protoparamprefix
895protoparamprefixexclude --- the protoparamprefix may not be used for
896non-declaraction parameter identifiers
bb7c2085 897topuse --- declaration at top level not used
898exportlocal --- a declaration is exported but not used outside this module
899exportheader --- a declaration is exported but does not appear in a header file
900exportheadervar --- a variable declaration is exported but does not appear in a
901header file
902fielduse --- field of structure type not used
903enummemuse --- member of an enum type not used
904constuse --- constant declared but not used
905fcnuse --- function declared but not used
906paramuse --- function parameter not used
907typeuse --- type declared but not used
908varuse --- variable declared but not used
909unusedspecial --- unused declaration in special file (corresponding to .l or .y
910file)
911declundef --- function or variable declared but never defined
912specundef --- function or variable specified but never defined
913specundecl --- function or variable specified but never declared in a source
914file
915newdecl --- report new global declarations in source files
916needspec --- information in specifications is not also included in syntactic
917comments
918nolib --- do not load standard library
919isolib --- use normal standard library
920strictlib --- interpret standard library strictly
921unixlib --- use UNIX (sort-of) standard library
922unixstrictlib --- use strict version of UNIX (sort-of) library
923posixlib --- use POSIX standard library
924posixstrictlib --- use strict POSIX standard library
925whichlib --- show standard library filename
926warnposixheaders --- a POSIX header is included, but the POSIX library is not
927used
928warnunixlib --- warn when the unix library is used
929usevarargs --- non-standard <varargs.h> included
930dump --- save state for merging (default suffix .lcd)
931load --- load state from dump file (default suffix .lcd)
932singleinclude --- optimize header inclusion to eliminate redundant includes
933neverinclude --- optimize header inclusion to not include any header files
934skipsysheaders --- do not include header files in system directories (set by
935-sysdirs)
936gnuextensions --- support some gnu (gcc) language extensions
937noparams --- function declaration has no parameter list
938oldstyle --- old style function definition
939maintype --- type of main does not match expected type
940exitarg --- argument to exit has implementation defined behavior
941shadow --- declaration reuses name visible in outer scope
942incondefslib --- function, variable or constant defined in a library is
943redefined with inconsistent type
944overload --- library function overloaded
945nestedextern --- an extern declaration is inside a function scope
946redecl --- function or variable redeclared
947redef --- function or variable redefined
948imptype --- variable declaration has unknown (implicitly int) type
949tmpdir --- set directory for writing temp files
950larchpath --- set path for searching for library files (overrides LARCH_PATH
951environment variable)
952lclimportdir --- set directory to search for LCL import files (overrides
953LCLIMPORTDIR)
954sysdirs --- set directories for system files (default /usr/include). Separate
955directories with path separator (colons in Unix, semi-colons in Windows). Flag
956settings propagate to files in a system directory. If -sysdirerrors is set, no
957errors are reported for files in system directories.
958skipansiheaders --- prevent inclusion of header files in a system directory
959with names that match standard ANSI headers. The symbolic information in the
960standard library is used instead. Flag in effect only if a library including
961the ANSI library is loaded. The ANSI headers are:
962assert, ctype, errno, float, limits, locale, math, setjmp, signal, stdarg,
963stddef, stdio, stdlib, strings, string, time, and wchar.
964skipposixheaders --- prevent inclusion of header files in a system directory
965with names that match standard POSIX headers. The symbolic information in the
966posix library is used instead. The POSIX headers are:
967dirent, fcntl, grp, pwd, termios, sys/stat, sys/times, sys/types, sys/utsname,
968sys/wait, unistd, and utime.
969sysdirerrors --- report errors in files in system directories (set by -sysdirs)
970sysdirexpandmacros --- expand macros in system directories regardless of other
971settings, except for macros corresponding to names defined in a load library
972I<directory> --- add to C include path
973S<directory> --- add to spec path
974exportany --- variable, function or type exported but not specified
975exportfcn --- function exported but not specified
976exportmacro --- expanded macro exported but not specified
977exporttype --- type definition exported but not specified
978exportvar --- variable exported but not specified
979exportconst --- constant exported but not specified
980exportiter --- constant exported but not specified
981linelen --- set length of messages (number of chars)
982indentspaces --- set number of spaces to indent sub-messages
983showcolumn --- show column number where error is found
984parenfileformat --- show column number where error is found
985showfunc --- show name of function containing error
986showallconjs --- show all possible types
987impconj --- make all alternate types implicit (useful for making system
988libraries
989expect --- expect <int> code errors
990lclexpect --- expect <int> spec errors
991partial --- check as partial system (-specundef, -declundef, -exportlocal,
992don't check macros in headers without corresponding .c files)
993lh --- generate .lh files
994lcs --- generate .lcs files
995warnflags --- warn when command line sets flag in abnormal way
996warnrc --- warn when there are problems with reading the initialization files
997badflag --- warn about bad command line flags
998fileextensions --- warn when command line file does not have a recognized
999extension
1000help --- -help <flags> will describe flags
1001f --- read an options file (default ~/.splintrc not loaded)
1002i --- set LCL initilization file
1003nof --- do not read options file
1004commentchar --- set marker character for syntactic comments (default is '@')
885824d3 1005controlnestdepth --- set maximum nesting depth of compound statements,
27c9e640 1006iteration control structures, and selection control structures (ANSI89 minimum
1007is 15; ISO99 is 63)
1008stringliterallen --- set maximum length of string literals (ANSI89 minimum is
1009509; ISO99 is 4095)
1010numstructfields --- set maximum number of fields in a struct or union (ANSI89
1011minimum is 127; ISO99 is 1023)
1012numenummembers --- set maximum number of members of an enum (ANSI89 minimum is
1013127; ISO99 is 1023)
885824d3 1014includenest --- set maximum number of nested #include files
27c9e640 1015ansi89limits --- check for violations of standard limits (controlnestdepth,
1016stringliterallen, includenest, numstructfields, numenummembers) based on ANSI89
1017standard
1018iso99limits --- check for violations of standard limits (controlnestdepth,
1019stringliterallen, includenest, numstructfields, numenummembers) based on ISO99
1020standard
885824d3 1021D<initializer> --- passed to pre-processor
1022U<initializer> --- passed to pre-processor
4f43223c 1023unrecogdirective --- unrecognized pre-processor directive
885824d3 1024supcounts --- The number of errors detected does not match number in
1025/*@i<n>@*/.
1026limit --- limit <int> consecutive repeated errors
1027syntax --- syntax error in parsing
1028trytorecover --- try to recover from parse error
bb7c2085 1029preproc --- preprocessing error
885824d3 1030type --- type mismatch
1031fullinitblock --- initializer sets all fields
8fe44445 1032initallelements --- initializer defines all array elements
1033initsize --- initializer defines extra array elements
1034stringliteraltoolong --- string literal too long for character array
1035stringliteralnoroom --- string literal leaves no room for null terminator
1036stringliteralsmaller --- string literal is smaller than the char array it is
1037assigned to
885824d3 1038enummembers --- enum members must be int values
885824d3 1039formattype --- type-mismatch in parameter corresponding to format code in a
1040printf or scanf-like function
15b3d2b2 1041formatconst --- format parameter is not a string constant (hence variable
1042arguments cannot be typechecked)
885824d3 1043formatcode --- invalid format code in format string for printf or scanf-like
1044function
1045forwarddecl --- forward declarations of pointers to abstract representation
1046match abstract type
1047voidabstract --- void * matches pointers to abstract types, casting ok
1048(dangerous)
1049castfcnptr --- a pointer to a function is cast to a pointer to void (or vice
1050versa)
1051charindex --- char can be used to index arrays
1052enumindex --- enum can be used to index arrays
1053boolint --- bool and int are equivalent
1054charint --- char and int are equivalent
1055enumint --- enum and int are equivalent
1056floatdouble --- float and double are equivalent
1057ignorequals --- ignore type qualifiers (long, short, unsigned)
1058duplicatequals --- report duplicate type qualifiers (e.g., long long)
1059ignoresigns --- ignore signs in type comparisons (unsigned matches signed)
1060numliteral --- int literals can be reals
1061charintliteral --- character constants (e.g., 'a') can be used as ints
1062relaxquals --- report qualifier mismatches only if dangerous
1063relaxtypes --- allow all numeric types to match
1064charunsignedchar --- allow char and unsigned char types to match
1065matchanyintegral --- allow any intergral type to match an arbitrary integral
1066type (e.g., dev_t)
1067longunsignedintegral --- allow long unsigned type to match an arbitrary
1068integral type (e.g., dev_t)
1069longintegral --- allow long type to match an arbitrary integral type (e.g.,
1070dev_t)
1071longunsignedunsignedintegral --- allow long unsigned type to match an arbitrary
1072unsigned integral type (e.g., size_t)
1073longsignedintegral --- allow long type to match an arbitrary signed integral
1074type (e.g., ssize_t)
bb7c2085 1075zeroptr --- tread 0 as a pointer
1076zerobool --- treat 0 as a boolean
885824d3 1077repeatunrecog --- do not suppress repeated unrecognized identifier messages
1078(instead of only reporting the first error)
1079sysunrecog --- report unrecognized identifiers with system (__) prefix
1080unrecog --- unrecognized identifier
15b3d2b2 1081annotationerror --- annotation is used in inconsistent location
1082commenterror --- inconsistent syntactic comment
15b3d2b2 1083warnuse --- warn when declaration marked with warn is used
bb7c2085 1084bufferoverflow --- possible buffer overflow vulnerability
1085bufferoverflowhigh --- likely buffer overflow vulnerability
1086implementationoptional --- declarator is implementation optional (ISO99 does
1087not require an implementation to provide it)
1088legacy --- legacy declaration in Unix Standard
1089multithreaded --- function is not reentrant
1090portability --- function may have undefined behavior
1091superuser --- function is restricted to superusers
1092toctou --- possible time of check, time of use vulnerability
1093unixstandard --- function is not required in Standard UNIX Specification
15b3d2b2 1094its4mostrisky --- most risky security vulnerabilities (from its4 database)
1095its4veryrisky --- very risky security vulnerabilities (from its4 database)
1096its4risky --- risky security vulnerabilities (from its4 database)
1097its4moderate --- moderately risky security vulnerabilities (from its4 database)
1098its4low --- risky security vulnerabilities (from its4 database)
bb7c2085 1099nocomments --- ignore all stylized comments
1100noaccess --- ignore access comments
1101unrecogcomments --- stylized comment is unrecognized
1102unrecogflagcomments --- stylized flag comment uses an unrecognized flag
1103tmpcomments --- interpret t comments (ignore errors in lines marked with
1104/*@t<n>@*/
1105lintcomments --- interpret traditional lint comments (/*FALLTHROUGH*/,
1106/*NOTREACHED*/)
1107warnlintcomments --- warn when a traditional lint comment is used
1108continuecomment --- line continuation marker (\) in comment before */ on same
1109line
1110slashslashcomment --- use of // comment
1111nestcomment --- comment begins inside comment
1112quiet --- suppress herald and error count
1113usestderr --- send error messages to standard error (instead of standard out)
1114showsummary --- show summary of all errors reported and suppressed
1115showscan --- show file names are they are processed
1116stats --- display lines processed and time
1117timedist --- display time distribution
1118showalluses --- show sorted list of uses of all globals
1119hints --- provide a hint the first time a particular warning appears
1120forcehints --- provide a hint for every warnings
1121showsourceloc --- display the source code location where a warning is produced
1122bugslimit --- set maximum number of bugs detected before giving up
1123debugfcnconstraint --- debug function constraints
1124grammar --- debug parsing
1125nopp --- do not pre-process input files
1126keep --- do not delete temporary files
885824d3 1127
This page took 0.485718 seconds and 5 git commands to generate.