Package: splint
Version: 1:3.1.2+dfsg-5
Severity: minor
Tags: patch

   * What led up to the situation?

     Checking for defects with a new version

test-[g|n]roff -mandoc -t -K utf8 -rF0 -rHY=0 -rCHECKSTYLE=10 -ww -z < "man 
page"

  [Use "groff -e ' $' <file>" to find trailing spaces.]

  ["test-groff" is a script in the repository for "groff"; is not shipped]
(local copy and "troff" slightly changed by me).

  [The fate of "test-nroff" was decided in groff bug #55941.]

   * What was the outcome of this action?

an.tmac:<stdin>:1: style: .TH missing third argument; consider document 
modification date in ISO 8601 format (YYYY-MM-DD)
an.tmac:<stdin>:1: style: .TH missing fourth argument; consider package/project 
name and version (e.g., "groff 1.23.0")

   * What outcome did you expect instead?

     No output (no warnings).

-.-

  General remarks and further material, if a diff-file exist, are in the
attachments.


-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.6-amd64 (SMP w/2 CPU threads; PREEMPT)
Locale: LANG=is_IS.iso88591, LC_CTYPE=is_IS.iso88591 (charmap=ISO-8859-1), 
LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)

Versions of packages splint depends on:
ii  libc6        2.40-4
ii  libfl2       2.6.4-8.2+b4
ii  splint-data  1:3.1.2+dfsg-5

splint recommends no packages.

Versions of packages splint suggests:
pn  splint-doc-html  <none>

-- no debconf information
Input file is splint.1

  Any program (person), that produces man pages, should check the output
for defects by using (both groff and nroff)

[gn]roff -mandoc -t -ww -b -z -K utf8  <man page>

  The same goes for man pages that are used as an input.

  For a style guide use

  mandoc -T lint

-.-

  So any 'generator' should check its products with the above mentioned
'groff', 'mandoc',  and additionally with 'nroff ...'.

  This is just a simple quality control measure.

  The 'generator' may have to be corrected to get a better man page,
the source file may, and any additional file may.

  Common defects:

  Input text line longer than 80 bytes.

  Not removing trailing spaces (in in- and output).
  The reason for these trailing spaces should be found and eliminated.

  Not beginning each input sentence on a new line.
Lines should thus be shorter.

  See man-pages(7), item 'semantic newline'.

-.-

The difference between the formatted output of the original and patched file
can be seen with:

  nroff -mandoc <file1> > <out1>
  nroff -mandoc <file2> > <out2>
  diff -u <out1> <out2>

and for groff, using

"printf '%s\n%s\n' '.kern 0' '.ss 12 0' | groff -mandoc -Z - "

instead of 'nroff -mandoc'

  Add the option '-t', if the file contains a table.

  Read the output of 'diff -u' with 'less -R' or similar.

-.-.

  If 'man' (man-db) is used to check the manual for warnings,
the following must be set:

  The option "-warnings=w"

  The environmental variable:

export MAN_KEEP_STDERR=yes (or any non-empty value)

  or

  (produce only warnings):

export MANROFFOPT="-ww -b -z"

export MAN_KEEP_STDERR=yes (or any non-empty value)


-.-.

Output from "mandoc -T lint  splint.1": (shortened list)

     50 input text line longer than 80 bytes
      1 missing date, using ""
      1 skipping paragraph macro
     68 whitespace at end of input line

-.-.

Output from "test-groff -mandoc -t -ww -z splint.1": (shortened list)

      2         Use macro '.B' for one argument or split argument.
      2 .BR is for at least 2 arguments, got 1
     41 trailing space in the line

-.-.

Remove space characters (whitespace) at the end of lines.
Use "git apply ... --whitespace=fix" to fix extra space issues, or use
global configuration "core.whitespace".

Number of lines affected is

68

-.-.

Use the correct macro for the font change of a single argument or
split the argument into two.

7:.BR splint
11:.BR splint

-.-.

Change a HYPHEN-MINUS (code 0x2D) to a minus(-dash) (\-),
if it
is in front of a name for an option,
is a symbol for standard input,
is a single character used to indicate an option,
or is in the NAME section (man-pages(7)).
N.B. - (0x2D), processed as a UTF-8 file, is changed to a hyphen
(0x2010, groff \[u2010] or \[hy]) in the output.

126:information to be printed; setting -<flag> prevents it. By default, all 
these flags are off.
187:locally in syntactic comments. The linelen and limit flags may be preceded 
by + or - with the same meaning;
188:for the other flags, + turns on the describe printing and - turns it off. 
The box to the left of each flag gives its
202:Show all possible alternate types (see Section 8.2.2). Default: - 
216:class. Default: - 

-.-.

Wrong distance between sentences in the input file.

  Separate the sentences and subordinate clauses; each begins on a new
line.  See man-pages(7) ("Conventions for source file layout") and
"info groff" ("Input Conventions").

  The best procedure is to always start a new sentence on a new line,
at least, if you are typing on a computer.

Remember coding: Only one command ("sentence") on each (logical) line.

E-mail: Easier to quote exactly the relevant lines.

Generally: Easier to edit the sentence.

Patches: Less unaffected text.

Search for two adjacent words is easier, when they belong to the same line,
and the same phrase.

  The amount of space between sentences in the output can then be
controlled with the ".ss" request.

Mark a final abbreviation point as such by suffixing it with "\&".


N.B.

  The number of lines affected can be too large to be in a patch.

13:vulnerabilities and common programming mistakes. With minimal effort,
14:splint can be used as a better lint. If additional effort is invested
29:These flags control directories and files used by splint. They may be used 
from the
31:source code. Except where noted. they have the same meaning preceded by \- 
or +. 
35:Set directory for writing temp files. Default is /tmp/. 
39:Add directory to path searched for C include files. Note there is no space 
after the I,
48:Load options file <file>. If this flag is used from the command line, the 
default ~/.splintrc file is
49:not loaded. This flag may be used in an options file to load in another 
options file. 
53:Prevents the default options files (./.splintrc and ~/.splintrc) from being 
loaded. (Setting
58:Set directories for system files (default is "/usr/include"). Separate 
directories with colons (e.g.,
59:"/usr/include:/usr/local/lib"). Flag settings propagate to files in a system 
directory. If
82:Save state in <file> for loading. The default extension .lcd is added if 
<file> has no extension. 
86:Load state from <file> (created by \-dump). The default extension .lcd is 
added if <file> has no
87:extension. Only one library file may be loaded. 
89:By default, the standard library is loaded if the \-load flag is not used to 
load a user library. If no user library is
90:loaded, one of the following flags may be used to select a different 
standard library. Precede the flag by + to
91:load the described library (or prevent a library from being loaded using 
nolib). See Apppendix F for
96:Do not load any library. This prevents the standard library from being 
loaded. 
125:These flags control what additional information is printed by splint. 
Setting +<flag> causes the described
126:information to be printed; setting -<flag> prevents it. By default, all 
these flags are off.
136:Show a summary of all errors reported and suppressed. Counts of suppressed 
errors are not
159:Suppress herald and error count. (If quiet is not set, splint prints out a 
herald with version
168:At most <number> similar errors are reported consecutively. Further errors 
are suppressed, and a
174:Normally, splint will expect to report no errors. The exit status will be 
success (0) if no errors are reported,
175:and failure if any errors are reported. Flags can be used to set the 
expected number of reported errors.
181:Exactly <number> code errors are expected. splint will exit with failure 
exit status unless
186:These flags control how messages are printed. They may be set at the 
command line, in options files, or
187:locally in syntactic comments. The linelen and limit flags may be preceded 
by + or - with the same meaning;
188:for the other flags, + turns on the describe printing and - turns it off. 
The box to the left of each flag gives its
193:Show column number where error is found. Default: + 
197:Show name of function (or macro) definition containing error. The function 
name is printed once
198:before the first message detected in that function. Default: +
202:Show all possible alternate types (see Section 8.2.2). Default: - 
211:reported in each error class. Default: + 
216:class. Default: - 
220:Set length of maximum message line to <number> characters. splint will 
split messages longer
221:than <number> characters long into multiple lines. Default: 80 
226:Mode selects flags set the mode checking flags to predefined values. They 
provide a quick coarse-grain way
227:of controlling what classes of errors are reported. Specific checking flags 
may be set after a mode flag to
228:override the mode settings. Mode flags may be used locally, however the 
mode settings will override specific
229:command line flag settings. A warning is produced if a mode flag is used 
after a mode checking flag has been
232:These are brief descriptions to give a general idea of what each mode does. 
To see the complete flag settings
233:in each mode, use splint \-help modes. A mode flag has the same effect when 
used with either + or \-.
237:Weak checking, intended for typical unannotated C code. No modifies 
checking, macro checking,
238:rep exposure, or clean interface checking is done. Return values of type 
int may be ignored. The
239:types bool, int, char and user-defined enum types are all equivalent. Old 
style declarations are
244:The default mode. All checking done by weak, plus modifies checking, global 
alias checking, use all
246:unreachable code, infinite loops, and fall-through cases. The types bool, 
int and char are distinct.
251:Moderately strict checking. All checking done by standard, plus must 
modification checking, rep
256:Absurdly strict checking. All checking done by checks, plus modifications 
and global variables
257:used in unspecified functions, strict standard library, and strict typing 
of C operators. A special

-.-.

Split lines longer than 80 characters into two or more lines.
Appropriate break points are the end of a sentence and a subordinate
clause; after punctuation marks.

N.B.

  The number of lines affected can be too large to be in a patch.


Line 29, length 83

These flags control directories and files used by splint. They may be used from 
the

Line 30, length 82

command line or in an options file, but may not be used as control comments in 
the

Line 31, length 81

source code. Except where noted. they have the same meaning preceded by \- or 
+. 

Line 39, length 87

Add directory to path searched for C include files. Note there is no space 
after the I,

Line 48, length 101

Load options file <file>. If this flag is used from the command line, the 
default ~/.splintrc file is

Line 49, length 86

not loaded. This flag may be used in an options file to load in another options 
file. 

Line 53, length 92

Prevents the default options files (./.splintrc and ~/.splintrc) from being 
loaded. (Setting

Line 58, length 101

Set directories for system files (default is "/usr/include"). Separate 
directories with colons (e.g.,

Line 59, length 90

"/usr/include:/usr/local/lib"). Flag settings propagate to files in a system 
directory. If

Line 60, length 82

\-systemdirerrors is set, no errors are reported for files in system 
directories. 

Line 82, length 98

Save state in <file> for loading. The default extension .lcd is added if <file> 
has no extension. 

Line 86, length 96

Load state from <file> (created by \-dump). The default extension .lcd is added 
if <file> has no

Line 89, length 119

By default, the standard library is loaded if the \-load flag is not used to 
load a user library. If no user library is

Line 90, length 111

loaded, one of the following flags may be used to select a different standard 
library. Precede the flag by + to

Line 91, length 100

load the described library (or prevent a library from being loaded using 
nolib). See Apppendix F for

Line 125, length 106

These flags control what additional information is printed by splint. Setting 
+<flag> causes the described

Line 126, length 92

information to be printed; setting -<flag> prevents it. By default, all these 
flags are off.

Line 132, length 83

message and fatal error streams independently.  See the output of splint 
+usestderr

Line 136, length 89

Show a summary of all errors reported and suppressed. Counts of suppressed 
errors are not

Line 137, length 94

necessarily correct since turning a flag off may prevent some checking from 
being done to save

Line 138, length 90

computation, and errors that are not reported may propagate differently from 
when they are

Line 159, length 94

Suppress herald and error count. (If quiet is not set, splint prints out a 
herald with version

Line 160, length 97

information before checking begins, and a line summarizing the total number of 
errors reported.) 

Line 168, length 96

At most <number> similar errors are reported consecutively. Further errors are 
suppressed, and a

Line 174, length 112

Normally, splint will expect to report no errors. The exit status will be 
success (0) if no errors are reported,

Line 175, length 104

and failure if any errors are reported. Flags can be used to set the expected 
number of reported errors.

Line 176, length 105

Because of the provided error suppression mechanisms, these options should 
probably not be used for final

Line 181, length 91

Exactly <number> code errors are expected. splint will exit with failure exit 
status unless

Line 186, length 103

These flags control how messages are printed. They may be set at the command 
line, in options files, or

Line 187, length 107

locally in syntactic comments. The linelen and limit flags may be preceded by + 
or - with the same meaning;

Line 188, length 116

for the other flags, + turns on the describe printing and - turns it off. The 
box to the left of each flag gives its

Line 197, length 95

Show name of function (or macro) definition containing error. The function name 
is printed once

Line 210, length 89

Provide hints describing an error and how a message may be suppressed for the 
first error

Line 215, length 101

Provide hints for all errors reported, even if the hint has already been 
displayed for the same error

Line 220, length 92

Set length of maximum message line to <number> characters. splint will split 
messages longer

Line 226, length 106

Mode selects flags set the mode checking flags to predefined values. They 
provide a quick coarse-grain way

Line 227, length 107

of controlling what classes of errors are reported. Specific checking flags may 
be set after a mode flag to

Line 228, length 108

override the mode settings. Mode flags may be used locally, however the mode 
settings will override specific

Line 229, length 108

command line flag settings. A warning is produced if a mode flag is used after 
a mode checking flag has been

Line 232, length 109

These are brief descriptions to give a general idea of what each mode does. To 
see the complete flag settings

Line 233, length 101

in each mode, use splint \-help modes. A mode flag has the same effect when 
used with either + or \-.

Line 237, length 93

Weak checking, intended for typical unannotated C code. No modifies checking, 
macro checking,

Line 238, length 96

rep exposure, or clean interface checking is done. Return values of type int 
may be ignored. The

Line 239, length 96

types bool, int, char and user-defined enum types are all equivalent. Old style 
declarations are

Line 244, length 99

The default mode. All checking done by weak, plus modifies checking, global 
alias checking, use all

Line 245, length 86

parameters, using released storage, ignored return values or any type, macro 
checking,

Line 246, length 100

unreachable code, infinite loops, and fall-through cases. The types bool, int 
and char are distinct.

Line 251, length 95

Moderately strict checking. All checking done by standard, plus must 
modification checking, rep

Line 256, length 94

Absurdly strict checking. All checking done by checks, plus modifications and 
global variables

Line 257, length 99

used in unspecified functions, strict standard library, and strict typing of C 
operators. A special

Line 258, length 99

reward will be presented to the first person to produce a real program that 
produces no errors with


-.-.

Put a parenthetical sentence, phrase on a separate line,
if not part of a code.
See man-pages(7), item "semantic newline".

splint.1:53:Prevents the default options files (./.splintrc and ~/.splintrc) 
from being loaded. (Setting
splint.1:58:Set directories for system files (default is "/usr/include"). 
Separate directories with colons (e.g.,
splint.1:86:Load state from <file> (created by \-dump). The default extension 
.lcd is added if <file> has no
splint.1:91:load the described library (or prevent a library from being loaded 
using nolib). See Apppendix F for
splint.1:100:Use the ANSI standard library (selected by default). 
splint.1:130:Send error messages to standard error (instead of standard out).  
This flag
splint.1:202:Show all possible alternate types (see Section 8.2.2). Default: - 

-.-.

Put a subordinate sentence (after a comma) on a new line.

15:adding annotations to programs, splint can perform stronger checks than
16:can be done by any standard lint.  For full documentation, install the
30:command line or in an options file, but may not be used as control comments 
in the
48:Load options file <file>. If this flag is used from the command line, the 
default ~/.splintrc file is
54:\-nof overrides +nof, causing the options files to be loaded normally.) 
60:\-systemdirerrors is set, no errors are reported for files in system 
directories. 
89:By default, the standard library is loaded if the \-load flag is not used to 
load a user library. If no user library is
90:loaded, one of the following flags may be used to select a different 
standard library. Precede the flag by + to
126:information to be printed; setting -<flag> prevents it. By default, all 
these flags are off.
131:has been replaced by more precise flags for controlling the warning, status
138:computation, and errors that are not reported may propagate differently 
from when they are
159:Suppress herald and error count. (If quiet is not set, splint prints out a 
herald with version
160:information before checking begins, and a line summarizing the total number 
of errors reported.) 
168:At most <number> similar errors are reported consecutively. Further errors 
are suppressed, and a
174:Normally, splint will expect to report no errors. The exit status will be 
success (0) if no errors are reported,
176:Because of the provided error suppression mechanisms, these options should 
probably not be used for final
186:These flags control how messages are printed. They may be set at the 
command line, in options files, or
188:for the other flags, + turns on the describe printing and - turns it off. 
The box to the left of each flag gives its
215:Provide hints for all errors reported, even if the hint has already been 
displayed for the same error
228:override the mode settings. Mode flags may be used locally, however the 
mode settings will override specific
233:in each mode, use splint \-help modes. A mode flag has the same effect when 
used with either + or \-.
237:Weak checking, intended for typical unannotated C code. No modifies 
checking, macro checking,
238:rep exposure, or clean interface checking is done. Return values of type 
int may be ignored. The
239:types bool, int, char and user-defined enum types are all equivalent. Old 
style declarations are
244:The default mode. All checking done by weak, plus modifies checking, global 
alias checking, use all
245:parameters, using released storage, ignored return values or any type, 
macro checking,
246:unreachable code, infinite loops, and fall-through cases. The types bool, 
int and char are distinct.
251:Moderately strict checking. All checking done by standard, plus must 
modification checking, rep
252:exposure, return alias, memory management and complete interfaces. 
256:Absurdly strict checking. All checking done by checks, plus modifications 
and global variables
257:used in unspecified functions, strict standard library, and strict typing 
of C operators. A special

-.-.

Output from "test-groff  -mandoc -t -K utf8 -rF0 -rHY=0 -rCHECKSTYLE=10 -ww -z 
":

an.tmac:<stdin>:1: style: .TH missing third argument; consider document 
modification date in ISO 8601 format (YYYY-MM-DD)
an.tmac:<stdin>:1: style: .TH missing fourth argument; consider package/project 
name and version (e.g., "groff 1.23.0")
an.tmac:<stdin>:7: misuse, warning: .BR is for at least 2 arguments, got 1
        Use macro '.B' for one argument or split argument.
an.tmac:<stdin>:11: misuse, warning: .BR is for at least 2 arguments, got 1
        Use macro '.B' for one argument or split argument.
troff:<stdin>:18: warning: trailing space in the line
troff:<stdin>:31: warning: trailing space in the line
troff:<stdin>:35: warning: trailing space in the line
troff:<stdin>:40: warning: trailing space in the line
troff:<stdin>:44: warning: trailing space in the line
troff:<stdin>:49: warning: trailing space in the line
troff:<stdin>:54: warning: trailing space in the line
troff:<stdin>:60: warning: trailing space in the line
troff:<stdin>:70: warning: trailing space in the line
troff:<stdin>:74: warning: trailing space in the line
troff:<stdin>:82: warning: trailing space in the line
troff:<stdin>:87: warning: trailing space in the line
troff:<stdin>:92: warning: trailing space in the line
troff:<stdin>:96: warning: trailing space in the line
troff:<stdin>:100: warning: trailing space in the line
troff:<stdin>:104: warning: trailing space in the line
troff:<stdin>:108: warning: trailing space in the line
troff:<stdin>:112: warning: trailing space in the line
troff:<stdin>:116: warning: trailing space in the line
troff:<stdin>:120: warning: trailing space in the line
troff:<stdin>:139: warning: trailing space in the line
troff:<stdin>:143: warning: trailing space in the line
troff:<stdin>:147: warning: trailing space in the line
troff:<stdin>:151: warning: trailing space in the line
troff:<stdin>:155: warning: trailing space in the line
troff:<stdin>:160: warning: trailing space in the line
troff:<stdin>:164: warning: trailing space in the line
troff:<stdin>:169: warning: trailing space in the line
troff:<stdin>:182: warning: trailing space in the line
troff:<stdin>:193: warning: trailing space in the line
troff:<stdin>:202: warning: trailing space in the line
troff:<stdin>:206: warning: trailing space in the line
troff:<stdin>:211: warning: trailing space in the line
troff:<stdin>:216: warning: trailing space in the line
troff:<stdin>:221: warning: trailing space in the line
troff:<stdin>:230: warning: trailing space in the line
troff:<stdin>:240: warning: trailing space in the line
troff:<stdin>:247: warning: trailing space in the line
troff:<stdin>:252: warning: trailing space in the line
troff:<stdin>:259: warning: trailing space in the line
troff:<stdin>:265: warning: trailing space in the line

-.-.

Spelling: (from codespell)

/tmp/splint.1.new: Apppendix ==> Appendix
--- splint.1    2025-01-11 21:45:51.282175663 +0000
+++ splint.1.new        2025-01-11 22:02:03.183929600 +0000
@@ -4,18 +4,18 @@
 splint \- A tool for statically checking C programs
 
 .SH SYNOPSIS
-.BR splint
+.B splint
 [options]
 
 .SH DESCRIPTION
-.BR splint
+.B splint
 is a tool for statically checking C programs for security
 vulnerabilities and common programming mistakes. With minimal effort,
 splint can be used as a better lint. If additional effort is invested
 adding annotations to programs, splint can perform stronger checks than
 can be done by any standard lint.  For full documentation, install the
 splint-doc-html Debian package.  This man page only covers a few of the
-available options. 
+available options.
 
 .SH OPTIONS
 
@@ -28,36 +28,36 @@ Shows help
 
 These flags control directories and files used by splint. They may be used 
from the
 command line or in an options file, but may not be used as control comments in 
the
-source code. Except where noted. they have the same meaning preceded by \- or 
+. 
+source code. Except where noted. they have the same meaning preceded by \- or 
+.
 
 .TP 6
 .BI \-tmpdir " directory"
-Set directory for writing temp files. Default is /tmp/. 
+Set directory for writing temp files. Default is /tmp/.
 
 .TP 6
 .BI \-I " directory"
 Add directory to path searched for C include files. Note there is no space 
after the I,
-to be consistent with C preprocessor flags. 
+to be consistent with C preprocessor flags.
 
 .TP 6
 .BI \-S " directory"
-Add directory to path search for .lcl specification files. 
+Add directory to path search for .lcl specification files.
 
 .TP 6
 .BI \-f " file"
 Load options file <file>. If this flag is used from the command line, the 
default ~/.splintrc file is
-not loaded. This flag may be used in an options file to load in another 
options file. 
+not loaded. This flag may be used in an options file to load in another 
options file.
 
 .TP 6
-.B \-nof 
+.B \-nof
 Prevents the default options files (./.splintrc and ~/.splintrc) from being 
loaded. (Setting
-\-nof overrides +nof, causing the options files to be loaded normally.) 
+\-nof overrides +nof, causing the options files to be loaded normally.)
 
 .TP 6
 .BI \-systemdirs " directories"
 Set directories for system files (default is "/usr/include"). Separate 
directories with colons (e.g.,
 "/usr/include:/usr/local/lib"). Flag settings propagate to files in a system 
directory. If
-\-systemdirerrors is set, no errors are reported for files in system 
directories. 
+\-systemdirerrors is set, no errors are reported for files in system 
directories.
 
 .PP
 .B Pre-processor
@@ -67,11 +67,11 @@ The \-I<directory> flag is also passed t
 
 .TP 6
 .BI \-D " initializer"
-Passed to the C pre-processor. 
+Passed to the C pre-processor.
 
 .TP 6
 .BI \-U " initializer"
-Passed to the C pre-processor 
+Passed to the C pre-processor
 
 .PP
 .B Libraries
@@ -79,94 +79,94 @@ These flags control the creation and use
 
 .TP 6
 .BI \-dump " file"
-Save state in <file> for loading. The default extension .lcd is added if 
<file> has no extension. 
+Save state in <file> for loading. The default extension .lcd is added if 
<file> has no extension.
 
 .TP 6
 .BI \-load " file"
 Load state from <file> (created by \-dump). The default extension .lcd is 
added if <file> has no
-extension. Only one library file may be loaded. 
+extension. Only one library file may be loaded.
 
 By default, the standard library is loaded if the \-load flag is not used to 
load a user library. If no user library is
 loaded, one of the following flags may be used to select a different standard 
library. Precede the flag by + to
-load the described library (or prevent a library from being loaded using 
nolib). See Apppendix F for
-information on the provided libraries. 
+load the described library (or prevent a library from being loaded using 
nolib). See Appendix F for
+information on the provided libraries.
 
 .TP 6
-.B \-nolib 
-Do not load any library. This prevents the standard library from being loaded. 
+.B \-nolib
+Do not load any library. This prevents the standard library from being loaded.
 
 .TP 6
-.B \-ansi-lib 
-Use the ANSI standard library (selected by default). 
+.B \-ansi-lib
+Use the ANSI standard library (selected by default).
 
 .TP 6
-.B \-strict-lib 
-Use strict version of the ANSI standard library. 
+.B \-strict-lib
+Use strict version of the ANSI standard library.
 
 .TP 6
-.B \-posix-lib 
-Use the POSIX standard library. 
+.B \-posix-lib
+Use the POSIX standard library.
 
 .TP 6
-.B \-posix-strict-lib 
-Use the strict version of the POSIX standard library. 
+.B \-posix-strict-lib
+Use the strict version of the POSIX standard library.
 
 .TP 6
-.B \-1-lib 
-Use UNIX version of standard library. 
+.B \-1-lib
+Use UNIX version of standard library.
 
 .TP 6
-.B \-1-strict-lib 
-Use the strict version of the UNIX standard library. 
+.B \-1-strict-lib
+Use the strict version of the UNIX standard library.
 
 .PP
 .B Output
 
 These flags control what additional information is printed by splint. Setting 
+<flag> causes the described
-information to be printed; setting -<flag> prevents it. By default, all these 
flags are off.
+information to be printed; setting \-<flag> prevents it. By default, all these 
flags are off.
 
 .TP 6
-.B \-usestderr 
+.B \-usestderr
 Send error messages to standard error (instead of standard out).  This flag
 has been replaced by more precise flags for controlling the warning, status
 message and fatal error streams independently.  See the output of splint 
+usestderr
 
 .TP 6
-.B \-showsummary 
+.B \-showsummary
 Show a summary of all errors reported and suppressed. Counts of suppressed 
errors are not
 necessarily correct since turning a flag off may prevent some checking from 
being done to save
 computation, and errors that are not reported may propagate differently from 
when they are
-reported. 
+reported.
 
 .TP 6
-.B \-showscan 
-Show file names as they are processed. 
+.B \-showscan
+Show file names as they are processed.
 
 .TP 6
-.B \-showalluses 
-Show list of uses of all external identifiers sorted by number of uses. 
+.B \-showalluses
+Show list of uses of all external identifiers sorted by number of uses.
 
 .TP 6
-.B \-stats 
-Display number of lines processed and checking time. 
+.B \-stats
+Display number of lines processed and checking time.
 
 .TP 6
-.B \-timedist 
-Display distribution of where checking time is spent. 
+.B \-timedist
+Display distribution of where checking time is spent.
 
 .TP 6
-.B \-quiet 
+.B \-quiet
 Suppress herald and error count. (If quiet is not set, splint prints out a 
herald with version
-information before checking begins, and a line summarizing the total number of 
errors reported.) 
+information before checking begins, and a line summarizing the total number of 
errors reported.)
 
 .TP 6
-.B \-whichlib 
-Print out the standard library filename and creation information. 
+.B \-whichlib
+Print out the standard library filename and creation information.
 
 .TP 6
 .BI \-limit " number"
 At most <number> similar errors are reported consecutively. Further errors are 
suppressed, and a
-message showing the number of suppressed messages is printed. 
+message showing the number of suppressed messages is printed.
 
 .PP
 .B Expected Errors
@@ -177,48 +177,48 @@ Because of the provided error suppressio
 checking real programs but may be useful in developing programs using make.
 
 .TP 6
-.B \-expect <number> 
+.B \-expect <number>
 Exactly <number> code errors are expected. splint will exit with failure exit 
status unless
-<number> code errors are detected. 
+<number> code errors are detected.
 
 .TP 6
 .B \-Message Format
 These flags control how messages are printed. They may be set at the command 
line, in options files, or
-locally in syntactic comments. The linelen and limit flags may be preceded by 
+ or - with the same meaning;
-for the other flags, + turns on the describe printing and - turns it off. The 
box to the left of each flag gives its
+locally in syntactic comments. The linelen and limit flags may be preceded by 
+ or \- with the same meaning;
+for the other flags, + turns on the describe printing and \- turns it off. The 
box to the left of each flag gives its
 default value.
 
 .TP 6
-.B \-showcolumn 
-Show column number where error is found. Default: + 
+.B \-showcolumn
+Show column number where error is found. Default: +
 
 .TP 6
-.B \-showfunc 
+.B \-showfunc
 Show name of function (or macro) definition containing error. The function 
name is printed once
 before the first message detected in that function. Default: +
 
 .TP 6
-.B \-showallconjs 
-Show all possible alternate types (see Section 8.2.2). Default: - 
+.B \-showallconjs
+Show all possible alternate types (see Section 8.2.2). Default: \-
 
 .TP 6
-.B \-paren-file-format 
-Use file(line) format in messages. 
+.B \-paren-file-format
+Use file(line) format in messages.
 
 .TP 6
-.B \-hints 
+.B \-hints
 Provide hints describing an error and how a message may be suppressed for the 
first error
-reported in each error class. Default: + 
+reported in each error class. Default: +
 
 .TP 6
-.B \-forcehints 
+.B \-forcehints
 Provide hints for all errors reported, even if the hint has already been 
displayed for the same error
-class. Default: - 
+class. Default: \-
 
 .TP 6
 .BI \-linelen " number"
 Set length of maximum message line to <number> characters. splint will split 
messages longer
-than <number> characters long into multiple lines. Default: 80 
+than <number> characters long into multiple lines. Default: 80
 
 .PP
 .B Mode Selector Flags
@@ -227,40 +227,39 @@ Mode selects flags set the mode checking
 of controlling what classes of errors are reported. Specific checking flags 
may be set after a mode flag to
 override the mode settings. Mode flags may be used locally, however the mode 
settings will override specific
 command line flag settings. A warning is produced if a mode flag is used after 
a mode checking flag has been
-set. 
+set.
 
 These are brief descriptions to give a general idea of what each mode does. To 
see the complete flag settings
 in each mode, use splint \-help modes. A mode flag has the same effect when 
used with either + or \-.
 
 .TP 6
-.B \-weak 
+.B \-weak
 Weak checking, intended for typical unannotated C code. No modifies checking, 
macro checking,
 rep exposure, or clean interface checking is done. Return values of type int 
may be ignored. The
 types bool, int, char and user-defined enum types are all equivalent. Old 
style declarations are
-unreported. 
+unreported.
 
 .TP 6
-.B \-standard 
+.B \-standard
 The default mode. All checking done by weak, plus modifies checking, global 
alias checking, use all
 parameters, using released storage, ignored return values or any type, macro 
checking,
 unreachable code, infinite loops, and fall-through cases. The types bool, int 
and char are distinct.
-Old style declarations are reported. 
+Old style declarations are reported.
 
 .TP 6
-.B \-checks 
+.B \-checks
 Moderately strict checking. All checking done by standard, plus must 
modification checking, rep
-exposure, return alias, memory management and complete interfaces. 
+exposure, return alias, memory management and complete interfaces.
 
 .TP 6
-.B \-strict 
+.B \-strict
 Absurdly strict checking. All checking done by checks, plus modifications and 
global variables
 used in unspecified functions, strict standard library, and strict typing of C 
operators. A special
 reward will be presented to the first person to produce a real program that 
produces no errors with
-strict checking. 
+strict checking.
 
 .SH AUTHOR
-.PP
 If you need to get in contact with the authors send email to
 i...@splint.org
-or visit 
+or visit
 <http://www.splint.org>.

Reply via email to