[comp.lang.fortran] fortran checker

t19@nikhefh.hep.nl (Geert J v Oldenborgh) (02/20/88)

Does anybody know of an affordable ANSI fortran syntax checker?  I mean 
something that checks whether there are uninitialized variables, checks 
the number and type of arguments to subroutines, checks if common blocks 
are consistent and more of those stupid little errors which just make 
your computer say 'segmentation error' or give four bombs and die.

I am aware of FORCHECK which is sold by somebody at Leiden University 
here in the Netherlands but he wants fl 7000,= (about $3500) for a 
system site license and we have a Gould, Apollos and Ataris ...

Thanks for any information,
                                Geert Jan van Oldenborgh
                                t19@nikhefh.hep.nl

lamson@sierra.uucp (scott h lamson) (02/22/88)

In response to a couple of requests for FORTRAN macro processors
and pretty printers, I wanted to share our experience with TOOLPACK.
TOOLPACK is an integrated set of tools to support FORTRAN mathematical
software development.  It is public domain software developed at
the U of Colorado, Argonne National Labs, JPL, Bell Labs, Purdue,
Numerical Algorithms Group, and other sites.  It includes a macro
processor, pretty printer, and much more powerful tools to transform
standard FORTRAN source code.  The tools run on top of a portability
base (TIE), which we have for VAX/VMS and UNIX although others are
available.
There are lots of other tools, for example one which compares two
files and checks that all the numerical data is the same within some
user defined precision.  Other tools provide global inter-procedural
analysis (argument checking...) or coverage analysis.

TOOLPACK understands standard FORTRAN; code with lots of vendor specific
extensions may be difficult to get TOOLPACK to accept, which prevents 
you from using the many of the tools.  When you are able to get your
program into TOOLPACK, you get MUCH more readable code out.  A real
life-saver for "dusty-deck" fortran.  We are very excited about it here.
In fact, we have started work on a tool to replace subroutine/function
calls with in-line code from the called module. 

For distribution, contact Integrated Systems Technologies at (312)869-
7820 or the Numerical Algorithms Group (usa 312-971-2337 or uk oxford
(0865)511245 international +44865 511245).

also see references IEEE Transactions on Software Engineering SE-9
                       #6 Nov 83 P 673.  L.J. Osterweil
                    ACM Transactions on Mathematical Software vol 12
                       p324-353 Cowell,Thompson
                    Unix Shell scripts to invoke a set of Toolpack/1 tools
                       Technical Memorandum ANL/MCS-TM-77 ANL,86.
TOOLPACK Funding was provided by the NSF, DOE, and 
                      UK Research & Engineering Council.
        Scott|  ARPA:      lamson@ge-crd.arpa
       Lamson|  UUCP:      uunet!steinmetz!sierra!lamson
(518)387-5795|  GE DECnet: qtmvax::lamson