Splint - Secure Programming Lint |
info@splint.org |
Manual Contents - Other Formats | Section: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 A B C D E Sponsors - Credits |
.splintrc, 73
/*@*/, 36
@, 12, 95, 97
abstract types, 15, 21, 22, 24, 31, 32, 33, 39, 58, 60, 61, 66, 78, 80, 87, 88, 99, 104, 108
access control, 22
aliasing, 9, 27, 31, 82, 85, 99
alternate types, 48, 75, 98
annotations, 9, 10, 13, 26, 27, 42, 97, 98
abstract, 21, 30, 80, 98
access, 23, 99
allocates, 39
alt, 57, 92
checked, 37, 67, 85, 99
checkedstrict, 37, 67, 84, 85, 99
checkmod, 37, 85, 99
concrete, 80, 98
constant, 86
defines, 39
dependent, 27, 42, 81, 99
end, 97
exits, 43, 100
exposed, 33, 81, 100
external, 65, 101
fallthrough, 46, 101, 102
falseexit, 43
falsenull, 14, 100
falsewhennull, 14
fileSystem, 36
i, 97
i<n>, 95, 97
ignore, 97
immutable, 23, 98
implicit, 29
in, 17, 100
innerbreak, 46, 91, 101
innercontinue, 47, 91, 101
integraltype, 20, 102
internalState, 36, 57
iter, 58, 59, 86, 89
keep, 28, 81, 99
killed, 38, 100
killref, 99
loopbreak, 46, 47, 91, 101
misscase, 46
mutable, 23, 98
neverexit, 101
noaccess, 23, 99
notfunction, 58, 68, 86, 102
nothing, 36
notnull, 15, 100
notreached, 101, 102
null, 14, 27, 55, 100
nullwhentrue, 14
observer, 33, 81, 83, 99
only, 26, 31, 38, 40, 42, 81, 82, 99
out, 17, 100
owned, 27, 42, 81, 99
partial, 18, 100
printflike, 101, 102
refcounted, 30, 98
refs, 30
reldef, 18, 100
releases, 40
relnull, 15, 100
returned, 31, 99
scanflike, 101, 102
sef, 56, 87, 101
sets, 39
shared, 28, 42, 81, 99
signedintegraltype, 20, 102
switchbreak, 46, 91, 101
t, 97
t<n>, 97
temp, 27, 81, 82, 83, 99
trueexit, 43
truenull, 14, 100
unchecked, 37, 67, 84, 85, 99
undef, 38, 100
unique, 31, 99
unsignedintegraltype, 20, 102
unused, 65, 101, 102
uses, 39
warnuse, 101
yield, 58
ARGSUSED, 102
assert, 43, 67
bool, 20, 43, 67, 77, 79, 92, 100
break statements, 46, 91, 101
char, 79
characters, 19
CLU, 25
comparisons, 78
complete logic, 47
complete programs, 65, 92, 105
continue statements, 46, 101
control comments, 13
control flow, 43, 100
control nesting depth, 94
control structures, 90
czechmacros, 61
declarations, 38, 85, 101
distinct names, 63, 90
enumerators, 19, 94
environment variables
LARCH_PATH, 73
LCLIMPORTDIR, 73
errno, 67
evaluation order, 90
exit, 93
exit status, 75
expected errors, 75
exported declarations, 65
exports, 93
exposure, 83, 99
external names, 65, 90
fall through cases, 9, 46, 101, 102
FALLTHROUGH, 95, 102
fileSystem, 36, 84
flag name abbreviations, 95
flags, 10, 11, 12
abstract, 79
accessczech, 60, 61, 80, 87
accessczechoslovak, 80, 88
accessfile, 23, 80
accessfunction, 23
accessmodule, 23, 80
accesssall, 80
accessslovak, 61, 80, 87
aliasunique, 82
allblock, 91
allempty, 91
allglobs, 84
allimponly, 29
allmacros, 57, 68, 86
ansilib, 74
ansilimits, 94
ansireserved, 63, 89
ansireservedinternal, 63, 89
ansistrict, 66
array parameters, 78
assignexpose, 32, 83
bitwisesigned, 77
bool, 77
boolcompare, 78
boolfalse, 21, 77
boolint, 13, 79
booltrue, 21, 77
booltype, 20, 77
branchstate, 80
casebreak, 46, 91
castexpose, 32, 83
castfcnptr, 78
charindex, 19, 79
charint, 13, 19, 79
charintliteral, 79
checkedglobalias, 85
checkmodglobalias, 85
checks, 36, 76
checkstrictglobalias, 85
checkstrictglobs, 37, 84
codeimponly, 82
commentchar, 12, 95, 97
compdef, 65, 77
compdestroy, 81
compmempass, 82
constmacros, 57, 58, 86
constprefix, 62, 89
constprefixexclude, 89
constuse, 65, 92
continuecomment, 95
controlnestdepth, 94
cppnames, 90
czech, 60, 87
czechconstants, 60
czechconsts, 87
czechfcns, 60, 87
czechmacros, 87
czechoslovak, 88
czechoslovakconstants, 61
czechoslovakconsts, 88
czechoslovakfcns, 61, 88
czechoslovakmacros, 61, 88
czechoslovaktype, 61
czechoslovaktypes, 88
czechoslovakvars, 61, 88
czechtypes, 61, 87
czechvars, 60, 87
D<initializer>, 73
declundef, 92, 93
deepbreak, 47, 91
deparrays, 80
dependenttrans, 81
distinctexternalnames, 63, 90
distinctinternalnames, 90
dump, 67, 73
duplicatequals, 95
elseifcomplete, 47, 90
empty, 86
enumindex, 19, 79
enumint, 19, 79
enummemuse, 65, 92
enumprefix, 62, 88
enumprefixexclude, 88
evalorder, 44, 90
evalorderuncon, 44, 45, 90
exitarg, 93
expect, 75
exportany, 105
exportconst, 105
exportfcn, 105, 106
exportheader, 65, 93
exportheadervar, 93
exportiter, 106
exportlocal, 93
exportmacro, 105, 106
exporttype, 106
exportvar, 105, 106
exposetrans, 81
externalnamecaseinsensitive, 63, 90
externalnamelen, 90
externalprefix, 62, 89
externalprefixexclude, 89
f <file>, 12, 73
fcnmacros, 57, 58, 86
fcnuse, 65, 92
fielduse, 65, 92
filestaticprefix, 62, 88, 89
filestaticprefixexclude, 89
fixedformalarray, 78
floatdouble, 79
forblock, 91
forcehints, 12, 75
forempty, 91
formalarray, 78
formatcode, 78
formattype, 78
forwarddecl, 79
freshtrans, 81
globalias, 85
globalprefix, 89
globalprefixexclude, 89
globimponly, 29, 82
globnoglobs, 37, 84
globs, 84
globsimpmodsnothing, 85, 96
globstate, 84
globuse, 84
globvarprefix, 62
globvarprefixexclude, 62
gnuextensions, 95
hasyield, 87
help, 72
hints, 75
i <file>, 104
I<directory>, 73
ifblock, 47, 91
ifempty, 91
ignorequals, 79
ignoresigns, 19, 79
immediatetrans, 81
impabstract, 22, 80
impcheckedglobs, 85
impcheckedspecglobs, 105
impcheckedstatics, 85
impcheckedstrictglobs, 85
impcheckedstrictspecglobs, 105
impcheckedstrictstatics, 38, 85
impcheckmodglobs, 85
impcheckmodinternals, 85
impcheckmodspecglobs, 105
impcheckmodstatics, 85
impouts, 17, 18, 76
imptype, 79
includenest, 94
incompletetype, 79
incondefs, 85
incondefslib, 85
infloops, 90
infloopsuncon, 45, 90
internalglobs, 84
internalglobsnoglobs, 84
internalnamecaseinsensitive, 64, 90
internalnamelen, 90
internalnamelength, 64
internalnamelookalike, 64, 90
iterprefix, 62, 89
iterprefixexclude, 89
keeptrans, 81
kepttrans, 81
larchpath, 73
lclexpect, 105
lclimportdir, 73
lcs, 104
lh, 104
libmacros, 86
limit, 74, 75
linelen, 12, 75
lintcomments, 95, 103
load, 67, 73
localprefix, 89
localprefixexclude, 89
longintegral, 20, 79
longsignedintegral, 20, 79
longunsignedintegral, 20, 79
longunsignedunsignedintegral, 20, 79
looploopbreak, 46, 91
looploopcontinue, 47, 91
loopswitchbreak, 46, 91
macroassign, 56, 86
macroconstdecl, 57, 86
macrodecl, 86
macrofcndecl, 57, 86
macromatchname, 86
macroparams, 56, 86
macroparens, 56, 86
macroredef, 86
macrostmt, 56, 86
macrounrecog, 86
macrovarprefix, 61, 62, 88
macrovarprefixexclude, 62, 88
maintype, 78
matchanyintegral, 20, 79
matchfields, 85
mayaliasunique, 82
memimp, 82
memtrans, 81
misscase, 91
modfilesys, 84
modfilesystem, 36
modglobs, 84
modglobsnomods, 37, 83, 84
modglobsunchecked, 84
modifies, 13, 83
modinternalstrict, 84
modnomods, 36, 83
modobserver, 83
modobserverstrict, 83
modsimpnoglobs, 85
modstrictglobsnomods, 83, 84
moduncon, 36, 83
modunconnomods, 84
mustdefine, 17, 77
mustfree, 81
mustfreefresh, 11
mustmod, 36, 83
mustnotalias, 83
mutrep, 24, 80
namechecks, 87
needspec, 105
nestcomment, 95
neverinclude, 68, 94
newreftrans, 81
nextlinemacros, 87
noaccess, 95
nocomments, 95
noeffect, 47, 48, 92
noeffectuncon, 47, 48, 92
nof, 12, 73
nolib, 67, 74
noparams, 93
noret, 92
null, 76
numenummembers, 94
numliteral, 79
numstructfields, 94
observertrans, 81
oldstyle, 93
onlytrans, 81
onlyunqglobaltrans, 82
overload, 85
ownedtrans, 81
paramimptemp, 29, 82
paramuse, 65, 92, 102
parenfileformat, 12, 75
partial, 65, 93
passunknown, 82
posixlib, 66, 74
posixstrictlib, 66, 74
predassign, 20, 77
predbool, 77
predboolint, 77
predboolothers, 20, 77
predboolptr, 20, 21, 77
protoparammatch, 63, 89
protoparamname, 62, 89
protoparamprefix, 62, 89
protoparamprefixexclude, 89
ptrarith, 77
ptrcompare, 78
ptrnegate, 77
quiet, 74
readonlystrings, 33, 83
readonlytrans, 83
realcompare, 78
redecl, 38, 93
redef, 93
refcounttrans, 81
relaxquals, 19, 79
relaxtypes, 79
repeatunrecog, 93
repexpose, 83
retalias, 31, 83
retexpose, 32, 83
retimponly, 29, 82
retval, 92
retvalbool, 48, 92
retvalint, 48, 92
retvalother, 92
retvalothers, 48
S<directory>, 73
sefparams, 87
sefuncon, 57, 87
shadow, 89
sharedtrans, 81
shiftsigned, 77
showallconjs, 75
showalluses, 74
showcol, 12
showcolumn, 75
showfunc, 12, 13, 75
showscan, 74
showsummary, 74
singleinclude, 68, 94
sizeofformalarray, 78
sizeoftype, 78
skipansiheaders, 68, 94
skipposixheaders, 68, 94
skipsysheaders, 68, 94
slovak, 61, 87
slovakconstants, 61
slovakconsts, 87, 88
slovakfcns, 61, 87, 88
slovakmacros, 61, 87, 88
slovaktypes, 87, 88
slovakvars, 61, 87, 88
specglobimponly, 105
specimponly, 105
specmacros, 105
specretimponly, 105
specstructimponly, 105
specundecl, 105
specundef, 105
stackref, 82
standard, 76
staticinittranc, 82
statictrans, 81
stats, 74
strict, 76
strictbranchstate, 80
strictdestroy, 81
strictlib, 74
strictops, 78
strictusereleased, 80
stringliterallen, 94
structimponly, 29, 82
supcounts, 95, 97
switchloopbreak, 46, 91
switchswitchbreak, 46, 91
syntax, 95
sysdirerrors, 73, 94
sysdirexpandmacros, 94
sysdirs, 68, 73, 94
systemunrecog, 93
tagprefix, 62, 88
tagprefixexclude, 88
temptrans, 81
timedist, 74
tmpcomments, 97
tmpdir, 73
topuse, 65, 92
trytorecover, 95
type, 77
typeprefix, 62, 89
typeprefixexclude, 62, 89
typeuse, 65, 92
U<initializer>, 73
uncheckedglobalias, 85
uncheckedmacroprefix, 62, 89
uncheckedmacroprefixexclude, 89
uniondef, 77
unixlib, 66, 74
unixstrictlib, 66, 74
unqualifiedinititrans, 82
unqualifiedtrans, 82
unreachable, 92
unrecog, 93
unrecogcomments, 95
unusedspecial, 92
usedef, 17, 76
usereleased, 80
usestderr, 74
usevarargs, 93
varuse, 65, 92
voidabstract, 78
warnflags, 12, 72
warnlintcomments, 95, 103
warnmissingglobs, 84
warnmissingglobsnoglobs, 84
warnposixheaders, 94
weak, 11, 76
whichlib, 74
whileblock, 91
whileempty, 91
zeroptr, 79
format codes, 78
free, 26, 27, 66, 81
function interfaces, 35, 83
gcc extensions, 95
global variables, 17, 32, 37, 44, 62, 84, 85, 98, 99, 105
globals list, 37, 44, 45
GNU extensions, 95
header file inclusion, 94
header files, 65, 68
help, 72
hints, 12, 75
if bodies, 47
ignored return values, 9, 48, 92
immutable type, 23
implicit annotations, 37, 82, 85, 105
include file nesting, 94
infinite loops, 9, 37, 45
information hiding, 9, 19, 21, 99
initialization files, 12, 73
.splintrc, 12, 73
lclinit.lci, 105
initializers, 82
internalState, 36, 57, 84
isalpha, 67
iscntrl, 67
isdigit, 67
isgraph, 67
islower, 67
isprint, 67
ispunct, 67
isspace, 67
isupper, 67
isxdigit, 67
iterators, 58, 86, 87, 98
Larch, 104
LARCH_PATH, 73, 105
LCL, 104
LCLIMPORTDIR, 73
lcs files, 104
lh files, 104
libraries, 66, 73, 85
line splitting, 12
lint comments, 102
loop bodies, 47
loopexec, 91
LSL, 104
macros, 55, 62, 86, 102, 105
main, 78
malloc, 26
McConnell, Steve, 21
memory leaks, 25, 81, 99
memory management, 9, 25, 30, 80
message format, 75
Microsoft VisualStudio, 12, 75
modes, 75
checks, 36, 76
standard, 76
strict, 76
weak, 11, 76
modification, 31, 32, 33, 35, 44, 56, 57, 83
modifies clause, 35, 39, 44, 45, 47, 57, 83, 84, 98
multiple definitions, 93
mutability, 23, 32
mutable type, 23
namespaces, 61, 88
naming convention, 23, 60, 87
Czech, 60, 63, 80, 87
Czechoslovak, 61, 80, 88
Slovak, 61, 63, 80, 87
naming restrictions, 63, 89
no effects, 47, 92
NOTREACHED, 95, 102
null, 66, 84
null dereferences, 14, 76, 100
null predicates, 100
numeric types, 19
output, 74
parse errors, 95
parsing, 95
partial programs, 65
path with no return, 92
pointers, 78
polymorphism, 57, 98
POSIX, 66, 94
predicates, 77
preprocessor, 73
primitive operations, 77
printf, 66, 78, 101
PRINTFLIKE, 95, 102
problematic control structures, 45
read-only storage, 32
reference counting, 30, 81
reserved names, 63, 89
return values, 48
security vulnerabilities, 9
sequence points, 44
Shakespeare, William, 25, 26
shared storage, 27
sharing, 31, 82
sharing semantics, 24
side effect free, 87
side effect free parameters, 56
side effects, 101
sizeof, 22, 78
special reward, 76
stack pointers, 25, 28
stack references, 28
standard error, 74
standard libraries, 66
standard library, 26
standard output, 74
static, 65
static variables, 37
stderr, 67
stdin, 67
stdout, 67
storage model, 25
strchr, 67
string literals, 33, 83, 94
strrchr, 67
structure fields, 94
suppressing warnings, 97
switch, 101
switch statements, 45, 46
syntactic comment, 95
syntax, 12
tolower, 67
toupper, 67
type, 9, 13, 21, 77, 78
type access, 99
type checking, 19
type equivalence, 78
types, 102
undefined, 44
undefined behavior, 31, 33, 36, 37, 44, 55, 90
undefined values, 9, 17, 38, 76, 84, 100
ungetc, 67
unreachable, 9
unreachable code, 92, 101, 102
unrecognized identifiers, 93
unused declarations, 9, 65, 92
use warnings, 101
use-before-definition, 9, 17, 38, 76, 91
van der Linden, Peter, 46, 63
varargs, 93
void, 48