F77(1)                                                     F77(1)

     NAME
          f77 - Fortran 77 compiler

     SYNOPSIS
          f77 [ option ] ... file ...

     DESCRIPTION
          F77 is a Fortran 77 compiler.  It accepts several types of
          arguments:

          Arguments whose names end with `.f' are taken to be Fortran
          77 source programs; they are compiled, and each object pro-
          gram is left on the file in the current directory whose name
          is that of the source with `.o' substituted for '.f'.

          Arguments whose names end with `.r' or `.e' are taken to be
          Ratfor or EFL source programs, respectively; these are first
          transformed by the appropriate preprocessor, then compiled
          by f77.

          In the same way, arguments whose names end with `.c' or `.s'
          are taken to be C or assembly source programs and are com-
          piled or assembled, producing a `.o' file.

          The following options have the same meaning as in cc(1). See
          ld(1) for load-time options.

          -c   Suppress loading and produce `.o' files for each source
               file.

          -g   Have the compiler produce additional symbol table
               information for sdb(1). Also pass the -lg flag to
               ld(1).

          -w   Suppress all warning messages.  If the option is
               `-w66', only Fortran 66 compatibility warnings are sup-
               pressed.

          -p   Prepare object files for profiling, see prof(1).

          -O   Invoke an object-code optimizer.

          -S   Compile the named programs, and leave the assembler-
               language output on corresponding files suffixed `.s'.
               (No `.o' is created.).

          -o output
               Name the final output file output instead of `a.out'.

          The following options are peculiar to f77.

     F77(1)                                                     F77(1)

          -onetrip
               Compile DO loops that are performed at least once if
               reached.  (Fortran 77 DO loops are not performed at all
               if the upper limit is smaller than the lower limit.)

          -u   Make the default type of a variable `undefined' rather
               than using the default Fortran rules.

          -C   Compile code to check that subscripts are within
               declared array bounds.

          -F   Apply EFL and Ratfor preprocessors to relevant files,
               put the results in the files with the suffix changed to
               `.f', but do not compile.

          -m   Apply the M4 preprocessor to each `.r' or `.e' file
               before transforming it with the Ratfor or EFL prepro-
               cessor.

          -Ex  Use the string x as an EFL option in processing `.e'
               files.

          -Rx  Use the string x as a Ratfor option in processing `.r'
               files.

          Other arguments are taken to be either loader option argu-
          ments, or F77-compatible object programs, typically produced
          by an earlier run, or perhaps libraries of F77-compatible
          routines.  These programs, together with the results of any
          compilations specified, are loaded (in the order given) to
          produce an executable program with name `a.out'.

     FILES
          file.[fresc]        input file
          file.o              object file
          a.out               loaded output
          /usr/lib/f77pass1   compiler
          /lib/f1             pass 2
          /lib/c2             optional optimizer
          /usr/lib/libF77.a   intrinsic function library
          /usr/lib/libI77.a   Fortran I/O library
          /lib/libc.a         C library, see section 3

     SEE ALSO
          S. I. Feldman, P. J. Weinberger, A Portable Fortran 77 Com-
          piler
          prof(1), cc(1), ld(1), efl(1), ratfor(1)

     DIAGNOSTICS
          The diagnostics produced by f77 itself are intended to be
          self-explanatory.  Occasional messages may be produced by
          the loader.