|
|
NOTE(ALIGNMENT(fname,n))
where
n=1, 2, 4, 8, 16, 32, 64, 128
|
Makes lint set the following function result alignment in
n bytes. For example, malloc() is defined as returning
a char* or void* when it actually returns pointers that are
word, or even doubleword, aligned.
Suppresses the following message:
|
NOTE(ARGSUSED(n))
/*ARGSUSEDn*/
|
This directive acts like the -v option for the next function.
Suppresses the following message for every argument but the first n
in the function definition it precedes. Default is 0. For the NOTE format,
n must be specified.
|
NOTE(ARGUNUSED
(par_name[,par_name...]))
|
Makes lint not check the mentioned arguments for usage (this option acts
only for the next function).
Suppresses the following message for every argument listed in NOTE or
directive.
|
NOTE(CONSTCOND)
/*CONSTCOND*/
|
Suppresses complaints about constant operands for the conditional expression. Suppresses the
following messages for the constructs it precedes.
Also NOTE(CONSTANTCONDITION) or /*
CONSTANTCONDITION */.
constant in conditional context
constant operands to op: "!"
logical expression always false: op "&&"
logical expression always true: op "||"
|
NOTE(EMPTY) /*EMPTY*/
|
Suppresses complaints about a null statement consequent on an
if statement. This directive should be placed after the test expression and
before the semicolon. This directive is supplied to support empty if statements
when a valid else statement follows. It suppresses messages on an empty
else consequent.
Suppresses the following messages when inserted between the controlling expression of the
if and semicolon.
-
statement has no consequent: else
when inserted between the else and semicolon;
-
statement has no consequent: if
|
NOTE(FALLTHRU)
/*FALLTHRU*/
|
Suppresses complaints about a fall through to a case or
default labelled statement. This directive should be placed immediately preceding
the label.
Suppresses the following message for the case statement it precedes. Also
NOTE(FALLTHROUGH) or /* FALLTHROUGH */.
|
NOTE(LINTED (msg))
/*LINTED [msg]*/
|
Suppresses any intra-file warning (those issued by lint pass 1) except those dealing with unused variables or functions. Messages that require inter-file analysis and are issued by lint pass 2 cannot be suppress with the LINTED directive, and a warning message that the LINTED suppression directive was not used is usually given to indicate so. This directive should be placed on the line immediately preceding where the lint warning occurred. The -k option alters the way in which lint handles this directive. Instead of suppressing messages, lint prints an additional message, if any, contained in the comments. This directive is useful in conjunction with the -s option for post-lint filtering.
When -k is not invoked, suppresses every warning pertaining to an intra-file problem, except:
-
argument unused in function
-
declarations unused in block
-
set but not used in function
-
static unused
-
variable not used in function
for the line of code it precedes. msg is ignored.
|
NOTE(LINTLIBRARY)
/*LINTLIBRARY*/
|
When -o is invoked, writes to a library .ln file, only definitions in the .c file it heads. This directive suppresses messages about unused functions and function arguments in this file.
|
NOTE(NOTREACHED)
/*NOTREACHED*/
|
At appropriate points, stops comments about unreachable code. This comment is typically placed
just after calls to functions such as exit(2).
Suppresses the following messages for the closing curly brace it precedes at the end of the
function.
-
statement not reached
for the unreached statements it precedes;
-
fallthrough on case statement
for the case it precedes that cannot be reached from the preceding
case;
-
function falls off bottom without returning value
|
NOTE(PRINTFLIKE(n))
NOTE(PRINTFLIKE(fun_name,n))
/*PRINTFLIKEn*/
|
Treats the nth argument of the function definition it precedes as a
[fs]printf() format string and issues the following messages for mismatches
between the remaining arguments and the conversion specifications. lint issues
these warnings by default for errors in the calls to [fs]printf() functions
provided by the standard C library.
For the NOTE format, n must be specified.
-
malformed format strings
for invalid conversion specifications in that argument, and function argument type
inconsistent with format
-
too few arguments for format
-
too many arguments for format
|
NOTE(PROTOLIB(n))
/*PROTOLIBn*/
|
When n is 1 and NOTE(LINTLIBRARY) or /*
LINTLIBRARY */ is used, writes to a library .ln file only the function
prototype declarations in the .c file it heads. The default is 0, which cancels
the process.
For the NOTE format, n must be specified.
|
NOTE(SCANFLIKE(n))
NOTE(SCANLIKE(fun_name,n))
/*SCANFLIKEn*/
|
Same as NOTE(PRINTFLIKE(n))
or /* PRINTFLIKEn
*/, except that the nth argument of the function
definition is treated as a [fs]scanf() format string. By default,
lint issues warnings for errors in the calls to [fs]scanf()
functions provided by the standard C library.
For the NOTE format, n must be specified.
|
NOTE(VARARGS(n))
NOTE(VARARGS(fun_name,n))
/*VARARGSn*/
|
Suppresses the usual checking for variable numbers of arguments in the following function
declaration. The data types of the first n arguments are checked; a
missing n is taken to be 0. The use of the ellipsis (...) terminator in
the definition is suggested in new or updated code.
For the function whose definition it precedes, suppresses the following message for calls to
the function with n or more arguments. For the NOTE
format, n must be specified.
|