V10/cmd/f2c/doc/man1

From mwm Tue Jan 10 14:56:38 EST 1989
To: dmg
Subject: newer man


	Dave,

	This is the latest version of the man page.  It includes some things
(like -c, -L) which aren't implemented.  But it will give you a better picture
of the files generated by f2c.

	f2c -- Fortran 77 to C tranlator

ENVIRONMENT VARIABLES
	f2cdebug -- Holds filename for diagnostic output.  This only matters
		when the debugging switch has been given on the command line.

USER FILES
	.f -- Fortran 77 source files
	f2c.h -- Standard include file for the resulting C code

SYSTEM FILES
	raw_data -- Holds unordered, untyped initializers generated by DATA
		statements.  This file will be sorted and copied into
		init_file.
	init_file -- Holds the untyped initializers generated by Fortran
		DATA statements.  This is zeroed for each function in the
		input.
	c_functions -- Holds all translated functions.  After the entire
		input file has been processed, the table of constant values
		gets prepended to this file; the result is the final
		product, contained in c_output.
	c_output -- Holds the translated C code.
	p1_file -- Contains an intermediate form of the Fortran file.  This
		p1_file.BAK for debugging.
	p1_file.BAK -- Holds a copy of the p1 file for the previous
		function.  This is useful in debugging because p1_file is
		zeroed immediately after a function is tranlated.

COMMAND LINE OPTIONS
	-o <filename> -- Write all output to the given filename.  If many
		source files are input, they will be appended to this file
		(does this make sense? No, make it only useful for one; the
		default will be to write to infile.c)
	-w66 -- Suppress warnings about any non-Fortran 66 features used.
	-w -- Suppress all warnings.
	-66, -6 -- Generate an error when a generic function (f77 feature) is
		used.  Also generate an error when an extension to Fortran
		77 is used (hex/oct/bin constant, automatic/static/double
		complex types).
	-d -- Set debug flag
	-1, -onetrip -- perform each DO loop at least once
	-I2 -- use shorts for integers, logicals
	-I4 -- use longs for integers, logicals
	-Is -- use short subscripts on arrays
	-U -- don't convert all uppercase to lowercase
	-u -- make the default variable type undefined
	-O<#> -- use <#> register variables [NOT IMPLEMENTED]
	-C -- Check that array subscripts lie within bounds at runtime
	-Nq -- Set the max number of equivalences
	-Nx -- Set the max number of externs
	-Ns -- Set the max number of statement numbers
	-Nc -- Set the max number of control constructs (loops, IF-THEN-ELSE)
	-Nn -- Set the max number of identifiers (hash table size)
	-c -- include the original Fortran in the output.
	-L -- omit unreferenced labels



From mwm Tue Jan 10 14:54:38 EST 1989
To: dmg

f2c -- Fortran 77 to C translator

SWITCHES
	May be invoked with the same switches as f77

FILES
	- Fortran input files are given on the command line; these must have a
	  .f suffix
	- Generated C code will appear in a file called   c_output   in the
	  current working directory
	- Several intermediate files are generated, and not removed.  These
	  are:
		c_functions -- first copy of the generated C code, minus the
			       table of constant values
		expr_file -- useless, old data
		init_file -- holds static initializations on a function by
			     function basis
		p1_file -- function by function intermediate file, only
			   readable using the pfilter.awk script in
			   /usr/mwm/f2c
		p1_file.BAK -- same as above, useful for debugging since
			       p1_file is always zeroed on termination

	- Every generated C file begins with '#include "f2c.h"'; this can be
	  found in /usr/mwm/f2c/f2c.h
	- f2c calls the program /usr/mwm/f2c/f2cpass1 - this is hardcoded
	  right now.

ENVIRONMENT
	- When environment variable   f2cdebug   is nonempty, debugging
	  output will be written to that filename.