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