STRUCT(1)                                               STRUCT(1)

     NAME
          struct - structure Fortran programs

     SYNOPSIS
          struct [ option ] ...  file

     DESCRIPTION
          Struct translates the Fortran program specified by file
          (standard input default) into a Ratfor program.  Wherever
          possible, Ratfor control constructs replace the original
          Fortran.  Statement numbers appear only where still neces-
          sary.  Cosmetic changes are made, including changing Hol-
          lerith strings into quoted strings and relational operators
          into symbols (.e.g. `.GT.' into `>').  The output is appro-
          priately indented.

          The following options may occur in any order.

          -s   Input is accepted in standard format, i.e.  comments
               are specified by a c, C, or * in column 1, and continu-
               ation lines are specified by a nonzero, nonblank char-
               acter in column 6.  Normally, a statement whose first
               nonblank character is not alphanumeric is treated as a
               continuation.

          -i   Do not turn computed goto statements into switches.
               (Ratfor does not turn switches back into computed goto
               statements.)

          -a   Turn sequences of else ifs into a non-Ratfor switch of
               the form

               switch {
                      case pred1: code
                      case pred2: code
                      case pred3: code
                      default: code
                    }

               The case predicates are tested in order; the code
               appropriate to only one case is executed.  This gener-
               alized form of switch statement does not occur in Rat-
               for.

          -b   Generate goto's instead of multilevel break statements.

          -n   Generate goto's instead of multilevel next statements.

          Will not generate Ratfor FOR statements.