version 1.7, 1999/07/04 11:53:53 |
version 1.8, 1999/12/04 19:04:52 |
|
|
.Op Fl I Ar ignorefile |
.Op Fl I Ar ignorefile |
.Op Ar name |
.Op Ar name |
.Sh DESCRIPTION |
.Sh DESCRIPTION |
|
The |
.Nm |
.Nm |
analyzes and optionally disperses the diagnostic error messages |
utility analyzes and optionally disperses the diagnostic error messages |
produced by a number of compilers and language processors to the source |
produced by a number of compilers and language processors to the source |
file and line where the errors occurred. It can replace the painful, |
file and line where the errors occurred. It can replace the painful, |
traditional methods of scribbling abbreviations of errors on paper, and |
traditional methods of scribbling abbreviations of errors on paper, and |
permits error messages and source code to be viewed simultaneously |
permits error messages and source code to be viewed simultaneously |
without machinations of multiple windows in a screen editor. |
without machinations of multiple windows in a screen editor. |
.Pp |
.Pp |
Options are: |
The options are as follows: |
.Bl -tag -width Ds |
.Bl -tag -width Ds |
.It Fl n |
.It Fl n |
Do |
Do |
|
|
The user is |
The user is |
.Ar queried |
.Ar queried |
whether s/he wants to touch the file. |
whether s/he wants to touch the file. |
A ``y'' or ``n'' to the question is necessary to continue. |
A |
|
.Sq y |
|
or |
|
.Sq n |
|
to the question is necessary to continue. |
Absence of the |
Absence of the |
.Fl q |
.Fl q |
option implies that all referenced files |
option implies that all referenced files |
|
|
.It Fl t Ar suffixlist |
.It Fl t Ar suffixlist |
Take the following argument as a suffix list. |
Take the following argument as a suffix list. |
Files whose suffixes do not appear in the suffix list are not touched. |
Files whose suffixes do not appear in the suffix list are not touched. |
The suffix list is dot separated, and ``*'' wildcards work. |
The suffix list is dot separated, and |
|
.Sq \&* |
|
wildcards work. |
Thus the suffix list: |
Thus the suffix list: |
.Pp |
.Pp |
.Dl ".c.y.foo*.h" |
.Dl ".c.y.foo*.h" |
.Pp |
.Pp |
allows |
allows |
.Nm |
.Nm |
to touch files ending with ``.c'', ``.y'', ``.foo*'' and ``.h''. |
to touch files ending with |
|
.Sq \&.c , |
|
.Sq \&.y , |
|
.Sq \&.foo\&* , |
|
and |
|
.Sq \&.h . |
.It Fl s |
.It Fl s |
Print out |
Print out |
.Em statistics |
.Em statistics |
regarding the error categorization. |
regarding the error categorization. |
Not too useful. |
Not too useful. |
|
.It Fl I Ar ignorefile |
|
Specifies a file containing a list of functions to ignore. |
.El |
.El |
.Pp |
.Pp |
.Nm |
.Nm |
|
|
.Nm |
.Nm |
knows about the error messages produced by: |
knows about the error messages produced by: |
.Xr make 1 , |
.Xr make 1 , |
.Xr \&cc 1 , |
.Xr cc 1 , |
.Xr cpp 1 , |
.Xr cpp 1 , |
.Xr ccom 1 , |
.Xr ccom 1 , |
.Xr \&as 1 , |
.Xr as 1 , |
.Xr \&ld 1 , |
.Xr ld 1 , |
.Xr lint 1 , |
.Xr lint 1 , |
.Xr \&pi 1 , |
.Xr pi 1 , |
.Xr \&pc 1 , |
.Xr pc 1 , |
.Xr f77 1 , |
.Xr f77 1 , |
and |
and |
.Em DEC Western Research Modula\-2 . |
.Em DEC Western Research Modula\-2 . |
|
|
Each error message is turned into a one line comment for the |
Each error message is turned into a one line comment for the |
language, |
language, |
and is internally flagged |
and is internally flagged |
with the string ``###'' at |
with the string |
the beginning of the error, |
.Dq ### |
and ``%%%'' at the end of the error. |
at the beginning of the error, |
|
and |
|
.Dq %%% |
|
at the end of the error. |
This makes pattern searching for errors easier with an editor, |
This makes pattern searching for errors easier with an editor, |
and allows the messages to be easily removed. |
and allows the messages to be easily removed. |
In addition, each error message contains the source line number |
In addition, each error message contains the source line number |
|
|
.Pp |
.Pp |
.Nm error , |
.Nm error , |
since it is purely mechanical, |
since it is purely mechanical, |
will not filter out subsequent errors caused by `floodgating' |
will not filter out subsequent errors caused by |
|
.Dq floodgating |
initiated by one syntactically trivial error. |
initiated by one syntactically trivial error. |
Humans are still much better at discarding these related errors. |
Humans are still much better at discarding these related errors. |
.Pp |
.Pp |
Pascal error messages belong after the lines affected |
Pascal error messages belong after the lines affected |
(error puts them before). The alignment of the `\\' marking |
(error puts them before). The alignment of the |
the point of error is also disturbed by |
.Sq \e |
|
marking the point of error is also disturbed by |
.Nm error . |
.Nm error . |
.Pp |
.Pp |
.Nm |
.Nm |