Trailing-Edge - PDP-10 Archives - decuslib10-12 - 43,50552/forver.doc
There are no other files named forver.doc in the archive.


      FORVER  is  a program that takes as input a FORTRAN-10 source
      file and analyses it  to  determine  whether  subroutine  and
      function  calls  are  correct, both in the type of the passed
      arguments, and in their number.  This being one of  the  most
      common  errors  encountered in FORTRAN programs, and the fact
      that the DEC-10 FORTRAN compiler doesn't do anything about it
      are the main task in life for FORVER.

                           HOW TO RUN FORVER

      To run FORVER on the DEC-10, just give the monitor command:

         .R FORVER

      You will then get a message of  some  sort  telling  you  the
      FORVER version you're dealing with, and a prompt:


      To  this  you must give it the name of a FORTRAN source file,
      and whatever options you want, in the format:

          FVR>name /sw/sw...

      Following is a description of the various options  and  their


      If  you  just  say  "FOOBAR<return>" after the "FVR>" prompt,
      forver will assume the following:

         1. Your FORTRAN source file  is  FOOBAR.FOR  in  your  PPN
            (actually  you  can  give  a  full DEC-10 filespec like
            DEV:NAME.EXT[P,PN],      the       defaults       being

         2. FORVER   will   generate   a  listing  file  FOOBAR.LSV
            containing a  numbered  listing  of  your  source  file
            (optionally)  as  well as a second section containing a
            list of all SUBROUTINES and  FUNCTIONS  encountered  in
            your  source  file .    In  this part all the incorrect

   not only the defined routines, but also the referenced ones, although
these may not be part of this source

            calls  will be listed showing the argument types so you
            can decide what to do with them.

         3. Optionally, FORVER will  also  generate  an  "attibute"
            file   called  FOOBAR.VTR  containing  a  compact  (and
            readable) description of all the  entry-points  defined
            in  this  source  file.    This  is necessary for, say,
            subroutine packages like IMSL or NEWPLT, that are to be
            called from other files.

                        LIST OF FORVER SWITCHES

      Following is  a  list  of  all  valid  FORVER  switches  (all
      switches  may  be abbreviated to one letter).  Note also that
      most switches (except /FULL) act as toggles, meaning that  if
      you  give one of them twice it's as if you hadn't given it at

      /VTR            Generate  .VTR  attribute  file.  When   this
                      switch  in on, the .VTR file corresponding to
                      this source will be generated.

      /UNDECLARED     Warn the user about undeclared variables, and
                      report their assumed  types  in  the  listing

      /INIT           Warn  the user about uninitialized variables.
                      This is used  to  tell  you  about  variables
                      whose  value  is  used (eg. in an expression)
                      before FORVER has seen  something  explicitly
                      assigned  to  them  (notice that a warning of
                      this kind is not always correct since control
                      flow in FORTRAN programs is seldom sequential
                      and variables may  be  initialized  in  other
                      ways, not visible to FORVER, eg. in a routine

      /ASSIGNMENT     Check  that  all  assignments  are  done with
                      implicit type conversion (eg. this will point
                      out statements like I = 1.5).

      /DIVISIONS      Warn the user about integer divisions.   This
                      is  also  a  common  source of hard to locate
                      errors; this may happen for  instance,  in  a
                      stapement  like  HALF = 1/2,  where  the REAL
                      variable  "HALF"  will  get  the  value   0.0
                      instead  of  0.5  as  was probably the user's

      /LIST           Generate the  line-numbered  listing  of  the
                      source file.  This option is provided so that
                      you  don't  have  to  get the full listing in
                      those cases where all you want is to  have  a
                      quick look at the incorrect routine calls.

      /FULL           Do  everything.  This  switch  turns  all the
                      other switches ON.

      The default switch settings is only "/VTR".

      When  the  source  file  has  been completely scanned, and if
      there are some routines that remain  undefined,  FORVER  will
      prompt you with a message:

          [FVRUDS "n" undefined external references]

      To  this  prompt  you must give the filespec corresponding to
      the .VTR file you think will be needed.    FORVER  will  then
      tell  you  what it found in that file, and continue prompting
      you until all references are satisfied, or you type  <return>
      to  the  "Search:" prompt, in which case FORVER won't be able
      to verify the calls to the undefined routines.

      To this you may also answer "?<return>" and FORVER will  list
      all  the remaining undefined references, to guide you in your
      decision as to what .VTR files you will search.

      Frequently used FORTRAN subroutine packages such as  IMSL  or
      NEWPLT  have  their  .VTR  files  in  device FOR:, to get the

      Have fun.