		 README file for ftnchek version 3.3

Author: Robert Moniot
	Fordham University
	New York, NY  10023  USA
	Telephone: (212) 636-6311
	URL: http://www.dsm.fordham.edu/~moniot

Date:	November 3, 2004

Ftnchek (short for Fortran checker) is designed to detect certain
errors in a Fortran program that a compiler usually does not.  Ftnchek
is not primarily intended to detect syntax errors.  Its purpose is to
assist the user in finding semantic errors.  Semantic errors are legal
in the Fortran language but are wasteful or may cause incorrect
operation.  For example, variables which are never used may indicate
some omission in the program; uninitialized variables contain garbage
which may cause incorrect results to be calculated; and variables
which are not declared may not have the intended type.

Ftnchek is written in C.  To build ftnchek, you must have a C compiler
for the machine on which you wish to build it.  The URL for ftnchek's
home page is http://www.dsm.fordham.edu/~ftnchek.  Source code, binary
executables for some platforms, and other information are available
there.


		  INSTALLING FTNCHEK
		  ------------------

See the file INSTALL for detailed instructions on how to install
ftnchek on your system.


		   NEW FEATURES
		   ------------

Here are the new features in version 3.3:

  1.  Front-end has been rewritten for unlimited lookahead,
      eliminating the longstanding bug that caused incorrect
      interpretation of statements whose ambiguity was not resolved
      in the first line.

  2.  The -mkhtml option is now available in the MS-DOS version.

  3.  Added support for Fortran 90 pointer related syntax: ALLOCATE,
      DEALLOCATE, and NULLIFY statements; the ALLOCATABLE, POINTER and
      TARGET attributes in type declarations; the pointer assigment
      operator => and intrinsic functions ALLOCATED and ASSOCIATED;
      and deferred-shape array declarations.  At present these new
      syntax features are accepted but not properly checked.  This
      feature was added by Robert Landrito.

  4.  The -f77 and -f90 pointer option controlling warnings about
      ''Cray pointers'' has been renamed to cray-pointer.  The
      -f77=pointer option now instead controls warnings for code
      containing Fortran 90 pointer-related syntax.

  5.  Re-implemented -mkhtml processing so it is now much faster on
      source files containing many routines.

  6.  Changed the arrangement of the test directory so there is no
      longer any need to modify the distribution in order to run the
      test suite (check.bat) under MS-DOS.

  7.  Fixed bug in reading numeric settings on command line when
      setting name abbreviated to 3 characters.

  8.  Fixed bug causing spurious warning for a GOTO referring to a
      labeled END statement when the statement before END was a
      FORMAT.

  9.  New flag -f77=character to control warnings about extensions to
      the Fortran 77 character data type.  Accompanying this new flag
      is support for Fortran 90 rules for character variable
      declarations that evaluate to zero or negative length, allowing
      them and treating negative length values as zero.

  10. Fixed minor bug in printing of comments and blank lines
      following last END statement in -list mode.

See the file PATCHES for further changes made after the initial
release of this version.

NOTE: For VMS, it is recommendend to obtain the file shell_mung.c.
This file is not necessary to build ftnchek, but without it wildcards
in file names on the command line will not be expanded.  This file is
no longer bundled with ftnchek, but is obtainable at the ftnchek home
site and elsewhere.
