[comp.os.vms] Lint on VMS

hd@philtis.UUCP (Henk D. Davids @ MSD) (06/24/87)

There are at least 2 lints for VMS that I know of: one from Oasys
(see below) and one from Information Processing Techniques Corp.,
1096 East Meadow Circle, Palo Alto, which I have not used yet. I
would like to hear from anyone that has experience with either of
these programs, or any other lint for VMS.

We started using lint on VMS from Wizard Systems Software, Inc. that is
marketed by Oasys ((617) 491-4180 / 60 Aberdeen Ave / Cambridge, MA 02138).

This is version V1.1 of lint. We use it for C sources that have to be
compiled by the VAX C compiler or the Intel C cross-compiler (for
8086 or 80286). Our experiences up till now: some good, some bad. I
have included a list of problems below; unfortunately some of the
problems have the effect that the output from lint is cluttered by so
many useless warnings that the important information is easily lost -
it is too hard to separate the problems from the non-problems. Anyone
from Oasys or Wizard listening? Now for the good news: with the
exception of the items listed below, we found that the output is
comparable to the output of the lint that comes with Ultrix. This
version of VMS lint is able to cope with identifiers of 32
characters, in fact you can even tell it how long your identifiers
should be.

Most serious problems on Wizard lint V1.1:
- Assignments to variables at declaration time (in the procedure
   heading) are flagged with a warning "Code has no effect". At
   least for the Intel and VAX C compilers this is not true. This
   probably also implies that questionable constructs in the
   right-hand side of such an assignment are not flagged.
- Comparison of a variable with a constant where the size of the
   operands is different, e.g. comparing a long int with a short
   int constant, is flagged as a "Degenerate constant expression".
   According to Kernighan and Ritchie this is a valid construct.
- For includes specified with "<..>" the current default directory
   is searched instead of the system libraries. There is a command line
   switch for specifying the include path, but even then includes
   of the type "<sys/file.h>" are not found; VAX C has no problems here.

Henk Davids
[No relation with Oasys or Wizard, just a customer ...]
-- 
Henk D. Davids @ PHILIPS, Medical Systems Division,  Dept. SWE-Tools
Building QA-II    PO Box 218   5600 MD  Eindhoven    The Netherlands
UUCP: {philabs!prlb2,mcvax}!philmds!philtis!hd Voice: +31 040 762255