NAME
ffscan - checks argument count for fortran f77 files
SYNOPSIS
ffscan [-fhnqv] -Eext -Idir -ofile -xname [files]
DESCRIPTION
ffscan scans a collection of fortran files and checks the
argument counts of every call made against its definition.
When a mismatch occurs, ffscan will tell you in which file
this particular call is made, and it will also tell what
the correct number of arguments should be, together with
the name of the file where the subroutine in question can
be found. ffscan does not do any type checking on the
arguments, it simply counts them.
OPTIONS
-f Include the full path of files in the output. The
default is to print the name of the file only.
Using this option increases the memory ffscan uses
to store its data, so it might be unwise to use
this option on msdos systems with their 640kb mem-
ory limit.
-h, --help
print a short help describing the options.
-n, -n-
Using this option will cause ffscan to tell what
subroutines are never invoked.
-q be really quiet (usefull if called from a script).
Only error messages and the final results will be
shown.
-v Be verbose. Adding more -v to the command line will
increase the output ffscan will generate.
Using -v will show some statistics of the files
being scanned such as the number of subroutines and
functions defined in a file and the number of calls
made. If you use the -ofile option, these statis-
tics will also be placed in file
Using -vv will, in addition to the output mentioned
above, cause ffscan to report all settings it is
using to determine what files it has to scan.
When you use -vvv ffscan will tell you what it is
scanning from your files, this in addition to the
output mentioned above. For each subroutine, func-
tion or call it encounters, ffscan will tell you
what the name of that routine is and the arguments
detected. It will also tell you how many arguments
there are. A number called brace count is also
shown. This number should always be zero. Using
this option can generate a considerable amount of
output, so you might wish to pipe it to a file.
At the end of a run ffscan will also give a count
for the total number of subroutines and functions
found.
--version
Show the version number of ffscan
-Eext Extensions ffscan must use to determine which files
it has to scan. Up to eight -E are allowed. The
default extension is .f
-Idir Using this option tells ffscan which directories it
has to search for f77 files. Only the contents of
that directory are scanned. Subdirectories are
ignored. Up to 64 -I are allowed.
-ofile file in which to store the results of the scan. The
default is stdout.
-xname Tells ffscan to exclude the named file when scan-
ning the files found with the -I -E options. Up to
64 -x are allowed.
DIAGNOSTICS
The following warning messages can occur:
WARNING: unbalanced right brace
WARNING: unbalanced left brace
When one of these warnings occur, you have a brace
to many or a missing brace in the argument list of
a subroutine or function definition or in the argu-
ment list of a call.
WARNING: more than 19 contination lines
ffscan has detected more than 19 successive contin-
uation lines in a argument declaration.
WARNING: no program entry point found
a call statement was encountered before a PROGRAM
statement was found. ffscan will use the name of
the file where this warning occurs as a program
name and continue.
ffscan will always tell you in which file and around what
line these warnings occur.
DISTRIBUTION POLICY
All utilities in this fortran utility suite are dis-
tributed under the GNU Public License.
COMPATIBILITY
ffscan has run under HP-UX 9 and 10, SGI IRIX 5.2 & 5.3,
DEC OSF1, SunOs 4.1 and 4.3, Cray Unicos, IBM AIX 3.2 &
4.1, Linux and MSDOS 6.2. ffscan also runs in a dos box
under Windows 3.1, 3.11 and Win95.
SHORTCOMINGS
Currently, ffscan only looks at CALL, so although FUNCTION
is found, these are not checked.
BUGS
The MS-DOS versions of these tools can cause problems
under MS-DOS if you feed them with a large collection of
files, few files with a lot of calls or a combination of
both. This is totally due to the 640kb memory limit MS-DOS
has.
If you think you have found a bug, you can send email to
the author, describing what the bug is, how you generated
it and if you can reproduce it. Also specify the platform
where this bug occured.
AUTHOR
Koen D'Hondt
ripley@xs4all.nl
(C)Copyright 1995-1996 by Ripley Software Development
SEE ALSO
fflow(1), ftags(1), scan_commons(1), get_common(1),
list_commons(1)