FFSCAN(1) ForUtil Fortran Tools FFSCAN(1) 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 Linux August 1996 1 FFSCAN(1) ForUtil Fortran Tools FFSCAN(1) 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. Linux August 1996 2 FFSCAN(1) ForUtil Fortran Tools FFSCAN(1) 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) Linux August 1996 3