g77 doc improvements

craig@jcb-sc.com craig@jcb-sc.com
Sun Feb 14 01:40:00 GMT 1999


I've committed this patch.

        tq vm, (burley)


1999-02-14  Craig Burley  <craig@jcb-sc.com>

	* g77.texi, g77install.texi, bugs.texi, g77install.texi: Clean
	up and improve indexing, and some other areas of docs.

*** egcs-19990211/gcc/f/bugs.texi.~1~	Wed Dec 16 16:16:47 1998
--- egcs-19990211/gcc/f/bugs.texi	Sun Feb 14 04:20:38 1999
*************** Fixed in @code{egcs}.
*** 61,64 ****
--- 61,65 ----
  @cindex stack, 387 coprocessor
  @cindex ix86
+ @cindex x86
  @cindex -O2
  @item
*************** This is to be fixed in version 0.6, when
*** 124,128 ****
  @cindex memory usage, of compiler
  @cindex large aggregate areas
! @cindex initialization
  @cindex DATA statement
  @cindex statements, DATA
--- 125,129 ----
  @cindex memory usage, of compiler
  @cindex large aggregate areas
! @cindex initialization, bug
  @cindex DATA statement
  @cindex statements, DATA
*** egcs-19990211/gcc/f/g77.texi.~1~	Fri Feb 12 00:33:34 1999
--- egcs-19990211/gcc/f/g77.texi	Sun Feb 14 04:35:03 1999
*************** to make big mistakes.
*** 958,963 ****
  @cindex debugger
  @cindex bugs, finding
! @cindex gdb command
! @cindex commands, gdb
  @item
  They provide information in the generated machine code
--- 958,963 ----
  @cindex debugger
  @cindex bugs, finding
! @cindex @code{gdb}, command
! @cindex commands, @code{gdb}
  @item
  They provide information in the generated machine code
*************** such as @code{gdb}).
*** 968,973 ****
  @cindex libraries
  @cindex linking
! @cindex ld command
! @cindex commands, ld
  @item
  They locate and gather machine code already generated
--- 968,973 ----
  @cindex libraries
  @cindex linking
! @cindex @code{ld} command
! @cindex commands, @code{ld}
  @item
  They locate and gather machine code already generated
*************** the generated machine code run faster, a
*** 1028,1036 ****
  
  @cindex components of g77
! @cindex g77, components of
  @code{g77} consists of several components:
  
! @cindex gcc command
! @cindex commands, gcc
  @itemize @bullet
  @item
--- 1028,1036 ----
  
  @cindex components of g77
! @cindex @code{g77}, components of
  @code{g77} consists of several components:
  
! @cindex @code{gcc}, command
! @cindex commands, @code{gcc}
  @itemize @bullet
  @item
*************** of @code{gcc} considered more stable or 
*** 1043,1048 ****
  used to build the operating system kernel.)
  
! @cindex g77 command
! @cindex commands, g77
  @item
  The @code{g77} command itself, which also might be installed as the
--- 1043,1048 ----
  used to build the operating system kernel.)
  
! @cindex @code{g77}, command
! @cindex commands, @code{g77}
  @item
  The @code{g77} command itself, which also might be installed as the
*************** system's @code{f77} command.
*** 1053,1057 ****
  @cindex libraries, libf2c
  @cindex libraries, libg2c
! @cindex run-time library
  @item
  The @code{libg2c} run-time library.
--- 1053,1057 ----
  @cindex libraries, libf2c
  @cindex libraries, libg2c
! @cindex run-time, library
  @item
  The @code{libg2c} run-time library.
*************** The maintainer of @code{libf2c} currentl
*** 1071,1079 ****
  @email{dmg@@bell-labs.com}.
  
! @cindex f771 program
! @cindex programs, f771
  @cindex assembler
! @cindex as command
! @cindex commands, as
  @cindex assembly code
  @cindex code, assembly
--- 1071,1079 ----
  @email{dmg@@bell-labs.com}.
  
! @cindex @code{f771}, program
! @cindex programs, @code{f771}
  @cindex assembler
! @cindex @code{as} command
! @cindex commands, @code{as}
  @cindex assembly code
  @cindex code, assembly
*************** and linking.
*** 1095,1099 ****
  
  @cindex driver, gcc command as
! @cindex gcc command as driver
  @cindex executable file
  @cindex files, executable
--- 1095,1099 ----
  
  @cindex driver, gcc command as
! @cindex @code{gcc}, command as driver
  @cindex executable file
  @cindex files, executable
*************** As another example, the command @samp{gc
*** 1116,1121 ****
  @code{gcc} would use the C++ compiler (named @code{cc1plus}).
  
! @cindex f771 program
! @cindex programs, f771
  In a GNU Fortran installation, @code{gcc} recognizes Fortran source
  files by name just like it does C and C++ source files.
--- 1116,1121 ----
  @code{gcc} would use the C++ compiler (named @code{cc1plus}).
  
! @cindex @code{f771}, program
! @cindex programs, @code{f771}
  In a GNU Fortran installation, @code{gcc} recognizes Fortran source
  files by name just like it does C and C++ source files.
*************** It knows to use the Fortran compiler nam
*** 1123,1127 ****
  @code{cc1} or @code{cc1plus}, to compile Fortran files.
  
! @cindex gcc not recognizing Fortran source
  @cindex unrecognized file format
  @cindex file format not recognized
--- 1123,1127 ----
  @code{cc1} or @code{cc1plus}, to compile Fortran files.
  
! @cindex @code{gcc}, not recognizing Fortran source
  @cindex unrecognized file format
  @cindex file format not recognized
*************** and link Fortran programs---and since @c
*** 1133,1138 ****
  to do most of the actual work, neither will @code{g77}!
  
! @cindex g77 command
! @cindex commands, g77
  The @code{g77} command is essentially just a front-end for
  the @code{gcc} command.
--- 1133,1138 ----
  to do most of the actual work, neither will @code{g77}!
  
! @cindex @code{g77}, command
! @cindex commands, @code{g77}
  The @code{g77} command is essentially just a front-end for
  the @code{gcc} command.
*************** large chunks of code.
*** 1193,1197 ****
  @cindex GNU Back End (GBE)
  @cindex GBE
! @cindex gcc back end
  @cindex back end, gcc
  @cindex code generator
--- 1193,1197 ----
  @cindex GNU Back End (GBE)
  @cindex GBE
! @cindex @code{gcc}, back end
  @cindex back end, gcc
  @cindex code generator
*************** whenever the distinction is important.
*** 1206,1210 ****
  @cindex GNU Fortran Front End (FFE)
  @cindex FFE
! @cindex g77 front end
  @cindex front end, g77
  The other chunk of @code{f771} is the
--- 1206,1210 ----
  @cindex GNU Fortran Front End (FFE)
  @cindex FFE
! @cindex @code{g77}, front end
  @cindex front end, g77
  The other chunk of @code{f771} is the
*************** of generated code (in terms of speed and
*** 1237,1242 ****
  @cindex programs, compiling
  
! @cindex gcc command
! @cindex commands, gcc
  A GNU Fortran installation includes a modified version of the @code{gcc}
  command.
--- 1237,1242 ----
  @cindex programs, compiling
  
! @cindex @code{gcc}, command
! @cindex commands, @code{gcc}
  A GNU Fortran installation includes a modified version of the @code{gcc}
  command.
*************** for information on the way different lan
*** 1254,1259 ****
  by the GNU CC compiler (@code{gcc}).
  
! @cindex g77 command
! @cindex commands, g77
  Also provided as part of GNU Fortran is the @code{g77} command.
  The @code{g77} command is designed to make compiling and linking Fortran
--- 1254,1259 ----
  by the GNU CC compiler (@code{gcc}).
  
! @cindex @code{g77}, command
! @cindex commands, @code{g77}
  Also provided as part of GNU Fortran is the @code{g77} command.
  The @code{g77} command is designed to make compiling and linking Fortran
*************** appropriately before submitting it to th
*** 1264,1268 ****
  
  @cindex -v option
! @cindex g77 options, -v
  @cindex options, -v
  Use the @samp{-v} option with @code{g77}
--- 1264,1268 ----
  
  @cindex -v option
! @cindex @code{g77} options, -v
  @cindex options, -v
  Use the @samp{-v} option with @code{g77}
*************** preprocessor directive must be used inst
*** 1493,1499 ****
  
  @cindex Ratfor preprocessor
! @cindex programs, ratfor
! @cindex .r filename suffix
! @pindex ratfor
  @item @var{file}.r
  Ratfor source code, which must be preprocessed by the @code{ratfor}
--- 1493,1499 ----
  
  @cindex Ratfor preprocessor
! @cindex programs, @code{ratfor}
! @cindex @samp{.r} filename suffix
! @cindex @code{ratfor}
  @item @var{file}.r
  Ratfor source code, which must be preprocessed by the @code{ratfor}
*************** with a diagnostic if it detects an incon
*** 1615,1622 ****
  @cindex -fno-silent option
  @cindex options, -fno-silent
! @cindex @code{f2c} compatibility
! @cindex compatibility, @code{f2c}
  @cindex status, compilation
! @cindex compilation status
  @cindex reporting compilation status
  @cindex printing compilation status
--- 1615,1622 ----
  @cindex -fno-silent option
  @cindex options, -fno-silent
! @cindex f2c compatibility
! @cindex compatibility, f2c
  @cindex status, compilation
! @cindex compilation, status
  @cindex reporting compilation status
  @cindex printing compilation status
*************** existing and obsolete Fortran implementa
*** 1705,1712 ****
  @item -ff77
  @cindex UNIX f77
! @cindex @code{f2c} compatibility
! @cindex compatibility, @code{f2c}
! @cindex @code{f77} compatibility
! @cindex compatibility, @code{f77}
  Specify that the program is written in idiomatic UNIX FORTRAN 77
  and/or the dialect accepted by the @code{f2c} product.
--- 1705,1712 ----
  @item -ff77
  @cindex UNIX f77
! @cindex f2c compatibility
! @cindex compatibility, f2c
! @cindex f77 compatibility
! @cindex compatibility, f77
  Specify that the program is written in idiomatic UNIX FORTRAN 77
  and/or the dialect accepted by the @code{f2c} product.
*************** existing and obsolete Fortran implementa
*** 1735,1739 ****
  @section Options Controlling Fortran Dialect
  @cindex dialect options
! @cindex language dialect options
  @cindex options, dialect
  
--- 1735,1739 ----
  @section Options Controlling Fortran Dialect
  @cindex dialect options
! @cindex language, dialect options
  @cindex options, dialect
  
*************** that the compiler accepts:
*** 1746,1753 ****
  @cindex -fno-fixed-form option
  @cindex options, -fno-fixed-form
! @cindex source file form
  @cindex free form
  @cindex fixed form
! @cindex Fortran 90 features
  @item -ffree-form
  @item -fno-fixed-form
--- 1746,1753 ----
  @cindex -fno-fixed-form option
  @cindex options, -fno-fixed-form
! @cindex source file format
  @cindex free form
  @cindex fixed form
! @cindex Fortran 90, features
  @item -ffree-form
  @item -fno-fixed-form
*************** Specify that the source file is written 
*** 1757,1761 ****
  @cindex -ff90 option
  @cindex options, -ff90
! @cindex Fortran 90 features
  @item -ff90
  Allow certain Fortran-90 constructs.
--- 1757,1761 ----
  @cindex -ff90 option
  @cindex options, -ff90
! @cindex Fortran 90, features
  @item -ff90
  Allow certain Fortran-90 constructs.
*************** current level of support for Fortran 90.
*** 1773,1778 ****
  @cindex options, -fvxt
  @item -fvxt
! @cindex Fortran 90 features
! @cindex VXT features
  Specify the treatment of certain constructs that have different
  meanings depending on whether the code is written in
--- 1773,1778 ----
  @cindex options, -fvxt
  @item -fvxt
! @cindex Fortran 90, features
! @cindex VXT extensions
  Specify the treatment of certain constructs that have different
  meanings depending on whether the code is written in
*************** For example, automatic conversion betwee
*** 1914,1925 ****
  @item -fonetrip
  @cindex FORTRAN 66
! @cindex DO loops, one-trip
! @cindex one-trip DO loops
  @cindex compatibility, FORTRAN 66
! Imperative executable @code{DO} loops are to be executed at
  least once each time they are reached.
  
  ANSI FORTRAN 77 and more recent versions of the Fortran standard
! specify that the body of an imperative @code{DO} loop is not executed
  if the number of iterations calculated from the parameters of the
  loop is less than 1.
--- 1914,1927 ----
  @item -fonetrip
  @cindex FORTRAN 66
! @cindex @code{DO} loops, one-trip
! @cindex one-trip @code{DO} loops
! @cindex @code{DO} loops, zero-trip
! @cindex zero-trip @code{DO} loops
  @cindex compatibility, FORTRAN 66
! Executable iterative @code{DO} loops are to be executed at
  least once each time they are reached.
  
  ANSI FORTRAN 77 and more recent versions of the Fortran standard
! specify that the body of an iterative @code{DO} loop is not executed
  if the number of iterations calculated from the parameters of the
  loop is less than 1.
*************** The @samp{-fonetrip} option specifies th
*** 1939,1943 ****
  compiled require one-trip loops.
  
! This option affects only those loops specified by the (imperative) @code{DO}
  statement and by implied-@code{DO} lists in I/O statements.
  Loops specified by implied-@code{DO} lists in @code{DATA} and
--- 1941,1945 ----
  compiled require one-trip loops.
  
! This option affects only those loops specified by the (iterative) @code{DO}
  statement and by implied-@code{DO} lists in I/O statements.
  Loops specified by implied-@code{DO} lists in @code{DATA} and
*************** variables named @samp{i} and @samp{I} to
*** 2088,2093 ****
  @cindex options, -fbadu77-intrinsics-enable
  @item -fbadu77-intrinsics-enable
! @cindex badu77 intrinsics
! @cindex intrinsics, badu77
  Specify status of UNIX intrinsics having inappropriate forms.
  @samp{-fbadu77-intrinsics-enable} is the default.
--- 2090,2095 ----
  @cindex options, -fbadu77-intrinsics-enable
  @item -fbadu77-intrinsics-enable
! @cindex @code{badu77} intrinsics
! @cindex intrinsics, @code{badu77}
  Specify status of UNIX intrinsics having inappropriate forms.
  @samp{-fbadu77-intrinsics-enable} is the default.
*************** Specify status of UNIX intrinsics having
*** 2106,2111 ****
  @cindex options, -ff2c-intrinsics-enable
  @item -ff2c-intrinsics-enable
! @cindex f2c intrinsics
! @cindex intrinsics, f2c
  Specify status of f2c-specific intrinsics.
  @samp{-ff2c-intrinsics-enable} is the default.
--- 2108,2113 ----
  @cindex options, -ff2c-intrinsics-enable
  @item -ff2c-intrinsics-enable
! @cindex @code{f2c} intrinsics
! @cindex intrinsics, @code{f2c}
  Specify status of f2c-specific intrinsics.
  @samp{-ff2c-intrinsics-enable} is the default.
*************** Specify status of f2c-specific intrinsic
*** 2124,2128 ****
  @cindex options, -ff90-intrinsics-enable
  @item -ff90-intrinsics-enable
! @cindex Fortran 90 intrinsics
  @cindex intrinsics, Fortran 90
  Specify status of F90-specific intrinsics.
--- 2126,2130 ----
  @cindex options, -ff90-intrinsics-enable
  @item -ff90-intrinsics-enable
! @cindex Fortran 90, intrinsics
  @cindex intrinsics, Fortran 90
  Specify status of F90-specific intrinsics.
*************** Specify status of F90-specific intrinsic
*** 2143,2148 ****
  @item -fgnu-intrinsics-enable
  @cindex Digital Fortran features
! @cindex COMPLEX intrinsics
! @cindex intrinsics, COMPLEX
  Specify status of Digital's COMPLEX-related intrinsics.
  @samp{-fgnu-intrinsics-enable} is the default.
--- 2145,2150 ----
  @item -fgnu-intrinsics-enable
  @cindex Digital Fortran features
! @cindex @code{COMPLEX} intrinsics
! @cindex intrinsics, @code{COMPLEX}
  Specify status of Digital's COMPLEX-related intrinsics.
  @samp{-fgnu-intrinsics-enable} is the default.
*************** Specify status of VXT intrinsics.
*** 2207,2213 ****
  @item -ffixed-line-length-@var{n}
  @cindex source file format
! @cindex line length
  @cindex length of source lines
! @cindex fixed-form line length
  Set column after which characters are ignored in typical fixed-form
  lines in the source file, and through which spaces are assumed (as
--- 2209,2215 ----
  @item -ffixed-line-length-@var{n}
  @cindex source file format
! @cindex lines, length
  @cindex length of source lines
! @cindex fixed form
  Set column after which characters are ignored in typical fixed-form
  lines in the source file, and through which spaces are assumed (as
*************** to them to fill out the line.
*** 2230,2235 ****
  @node Warning Options
  @section Options to Request or Suppress Warnings
! @cindex options to control warnings
! @cindex warning messages
  @cindex messages, warning
  @cindex suppressing warnings
--- 2232,2237 ----
  @node Warning Options
  @section Options to Request or Suppress Warnings
! @cindex options, warnings
! @cindex warnings, suppressing
  @cindex messages, warning
  @cindex suppressing warnings
*************** is @samp{-mno-align-double}, not @samp{-
*** 2654,2667 ****
  @cindex options, -ffloat-store
  @item -ffloat-store
! @cindex IEEE conformance
! @cindex conformance, IEEE
! @cindex floating point precision
  Might help a Fortran program that depends on exact IEEE conformance on
  some machines, but might slow down a program that doesn't.
  
! This option is effective when the floating point unit is set to work in
  IEEE 854 `extended precision'---as it typically is on x86 and m68k GNU
  systems---rather than IEEE 754 double precision.  @code{-ffloat-store}
! tries to remove the extra precision by spilling data from floating point
  registers into memory and this typically involves a big performance
  hit.  However, it doesn't affect intermediate results, so that it is
--- 2656,2669 ----
  @cindex options, -ffloat-store
  @item -ffloat-store
! @cindex IEEE 754 conformance
! @cindex conformance, IEEE 754
! @cindex floating-point, precision
  Might help a Fortran program that depends on exact IEEE conformance on
  some machines, but might slow down a program that doesn't.
  
! This option is effective when the floating-point unit is set to work in
  IEEE 854 `extended precision'---as it typically is on x86 and m68k GNU
  systems---rather than IEEE 754 double precision.  @code{-ffloat-store}
! tries to remove the extra precision by spilling data from floating-point
  registers into memory and this typically involves a big performance
  hit.  However, it doesn't affect intermediate results, so that it is
*************** but not in code like:
*** 2677,2681 ****
  
  For another, potentially better, way of controlling the precision
! @ref{Floating point precision}.
  
  @cindex -fforce-mem option
--- 2679,2683 ----
  
  For another, potentially better, way of controlling the precision
! @ref{Floating-point precision}.
  
  @cindex -fforce-mem option
*************** For another, potentially better, way of 
*** 2686,2690 ****
  @item -fforce-addr
  @cindex loops, speeding up
! @cindex speeding up loops
  Might improve optimization of loops.
  
--- 2688,2692 ----
  @item -fforce-addr
  @cindex loops, speeding up
! @cindex speed, of loops
  Might improve optimization of loops.
  
*************** Might improve optimization of loops.
*** 2692,2696 ****
  @cindex options, -fno-inline
  @item -fno-inline
! @cindex in-line compilation
  @cindex compilation, in-line
  @c DL: Only relevant for -O3?
--- 2694,2698 ----
  @cindex options, -fno-inline
  @item -fno-inline
! @cindex in-line code
  @cindex compilation, in-line
  @c DL: Only relevant for -O3?
*************** Note that if you are not optimizing, no 
*** 2703,2708 ****
  @cindex options, -ffast-math
  @item -ffast-math
! @cindex IEEE conformance
! @cindex conformance, IEEE
  Might allow some programs designed to not be too dependent
  on IEEE behavior for floating-point to run faster, or die trying.
--- 2705,2710 ----
  @cindex options, -ffast-math
  @item -ffast-math
! @cindex IEEE 754 conformance
! @cindex conformance, IEEE 754
  Might allow some programs designed to not be too dependent
  on IEEE behavior for floating-point to run faster, or die trying.
*************** on IEEE behavior for floating-point to r
*** 2712,2716 ****
  @item -fstrength-reduce
  @cindex loops, speeding up
! @cindex speeding up loops
  @c DL: normally defaulted?
  Might make some loops run faster.
--- 2714,2718 ----
  @item -fstrength-reduce
  @cindex loops, speeding up
! @cindex speed, of loops
  @c DL: normally defaulted?
  Might make some loops run faster.
*************** Might improve performance on some code.
*** 2742,2749 ****
  @cindex loops, unrolling
  @cindex unrolling loops
! @cindex loop optimization
  @c DL: fixme: Craig doesn't like `indexed' but f95 doesn't seem to
  @c provide a suitable term
! Typically improves performance on code using indexed @code{DO} loops by
  unrolling them and is probably generally appropriate for Fortran, though
  it is not turned on at any optimization level.  
--- 2744,2756 ----
  @cindex loops, unrolling
  @cindex unrolling loops
! @cindex loops, optimizing
! @cindex indexed (iterative) @code{DO}
! @cindex iterative @code{DO}
  @c DL: fixme: Craig doesn't like `indexed' but f95 doesn't seem to
  @c provide a suitable term
! @c CB: I've decided on `iterative', for the time being, and changed
! @c my previous, rather bizarre, use of `imperative' to that
! @c (though `precomputed-trip' would be a more precise adjective)
! Typically improves performance on code using iterative @code{DO} loops by
  unrolling them and is probably generally appropriate for Fortran, though
  it is not turned on at any optimization level.  
*************** constructed out of lower-level construct
*** 2765,2779 ****
  than otherwise.} is done, so only loops written with @code{DO}
  benefit from loop optimizations, including---but not limited
! to---unrolling.  Loops written with @code{IF} and @code{GOTO} will not
! be recognized as such.  This option only unrolls indexed @code{DO}
! loops, not @code{DO WHILE} loops.
  
  @cindex -funroll-all-loops option
  @cindex options, -funroll-all-loops
! @cindex @code{DO WHILE}
  @item -funroll-all-loops
  @c DL: Check my understanding of -funroll-all-loops v. -funroll-loops is correct.
  Probably improves performance on code using @code{DO WHILE} loops by
! unrolling them in addition to indexed @code{DO} loops.  In the absence
  of @code{DO WHILE}, this option is equivalent to @code{-funroll-loops}
  but possibly slower.
--- 2772,2786 ----
  than otherwise.} is done, so only loops written with @code{DO}
  benefit from loop optimizations, including---but not limited
! to---unrolling.  Loops written with @code{IF} and @code{GOTO} are not
! currently recognized as such.  This option unrolls only iterative
! @code{DO} loops, not @code{DO WHILE} loops.
  
  @cindex -funroll-all-loops option
  @cindex options, -funroll-all-loops
! @cindex DO WHILE
  @item -funroll-all-loops
  @c DL: Check my understanding of -funroll-all-loops v. -funroll-loops is correct.
  Probably improves performance on code using @code{DO WHILE} loops by
! unrolling them in addition to iterative @code{DO} loops.  In the absence
  of @code{DO WHILE}, this option is equivalent to @code{-funroll-loops}
  but possibly slower.
*************** contains preprocessor directives.
*** 2849,2853 ****
  @node Directory Options
  @section Options for Directory Search
! @cindex directory options
  @cindex options, directory search
  @cindex search path
--- 2856,2860 ----
  @node Directory Options
  @section Options for Directory Search
! @cindex directory, options
  @cindex options, directory search
  @cindex search path
*************** These options are:
*** 2873,2879 ****
  @cindex options, -Idir
  @item -I@var{dir}
! @cindex directory search paths for inclusion
  @cindex inclusion, directory search paths for
! @cindex searching for included files
  These affect interpretation of the @code{INCLUDE} directive
  (as well as of the @code{#include} directive of the @code{cpp}
--- 2880,2887 ----
  @cindex options, -Idir
  @item -I@var{dir}
! @cindex directory, search paths for inclusion
  @cindex inclusion, directory search paths for
! @cindex search paths, for included files
! @cindex paths, search
  These affect interpretation of the @code{INCLUDE} directive
  (as well as of the @code{#include} directive of the @code{cpp}
*************** gcc,Using and Porting GNU CC}, for infor
*** 2897,2903 ****
  @node Code Gen Options
  @section Options for Code Generation Conventions
! @cindex code generation conventions
  @cindex options, code generation 
! @cindex run-time options
  
  These machine-independent options control the interface conventions
--- 2905,2911 ----
  @node Code Gen Options
  @section Options for Code Generation Conventions
! @cindex code generation, conventions
  @cindex options, code generation 
! @cindex run-time, options
  
  These machine-independent options control the interface conventions
*************** the name @samp{-static}.)
*** 2927,2931 ****
  @cindex DATA statement
  @cindex statements, DATA
! @cindex initialization of local variables
  @cindex variables, initialization of
  @cindex uninitialized variables
--- 2935,2939 ----
  @cindex DATA statement
  @cindex statements, DATA
! @cindex initialization, of local variables
  @cindex variables, initialization of
  @cindex uninitialized variables
*************** generating code for an incompatible libr
*** 3001,3005 ****
  @cindex options, -fno-underscoring
  @item -fno-underscoring
! @cindex underscores
  @cindex symbol names, underscores
  @cindex transforming symbol names
--- 3009,3013 ----
  @cindex options, -fno-underscoring
  @item -fno-underscoring
! @cindex underscore
  @cindex symbol names, underscores
  @cindex transforming symbol names
*************** interfaces.
*** 3076,3080 ****
  @cindex options, -fno-second-underscore
  @item -fno-second-underscore
! @cindex underscores
  @cindex symbol names, underscores
  @cindex transforming symbol names
--- 3084,3088 ----
  @cindex options, -fno-second-underscore
  @item -fno-second-underscore
! @cindex underscore
  @cindex symbol names, underscores
  @cindex transforming symbol names
*************** and remove support for prior versions of
*** 3547,3551 ****
  
  @cindex -@w{}-driver option
! @cindex g77 options, -@w{}-driver
  @cindex options, -@w{}-driver
  @item
--- 3555,3559 ----
  
  @cindex -@w{}-driver option
! @cindex @code{g77} options, -@w{}-driver
  @cindex options, -@w{}-driver
  @item
*************** as well as statically-allocate data.
*** 3673,3677 ****
  
  @cindex -@w{}-driver option
! @cindex g77 options, -@w{}-driver
  @cindex options, -@w{}-driver
  @item
--- 3681,3685 ----
  
  @cindex -@w{}-driver option
! @cindex @code{g77} options, -@w{}-driver
  @cindex options, -@w{}-driver
  @item
*************** Extensions to the ANSI FORTRAN 77 standa
*** 4215,4219 ****
  @cindex direction of language development
  @cindex features, language
! @cindex language features
  
  The purpose of the following description of the GNU Fortran
--- 4223,4227 ----
  @cindex direction of language development
  @cindex features, language
! @cindex language, features
  
  The purpose of the following description of the GNU Fortran
*************** of @code{g77}).
*** 4360,4365 ****
  @section ANSI FORTRAN 77 Standard Support
  @cindex ANSI FORTRAN 77 support
! @cindex standard support
! @cindex support for ANSI FORTRAN 77
  @cindex compatibility, FORTRAN 77
  @cindex FORTRAN 77 compatibility
--- 4368,4373 ----
  @section ANSI FORTRAN 77 Standard Support
  @cindex ANSI FORTRAN 77 support
! @cindex standard, support for
! @cindex support, FORTRAN 77
  @cindex compatibility, FORTRAN 77
  @cindex FORTRAN 77 compatibility
*************** character (which must be a letter).
*** 4652,4657 ****
  (Corresponds to Section 2.3 of ANSI X3.9-1978 FORTRAN 77.)
  
! @cindex comments, trailing
! @cindex trailing comments
  Use of an exclamation point (@samp{!}) to begin a
  trailing comment (a comment that extends to the end of the same
--- 4660,4670 ----
  (Corresponds to Section 2.3 of ANSI X3.9-1978 FORTRAN 77.)
  
! @cindex trailing comment
! @cindex comment
! @cindex characters, comment
! @cindex !
! @cindex exclamation point
! @cindex continuation character
! @cindex characters, continuation
  Use of an exclamation point (@samp{!}) to begin a
  trailing comment (a comment that extends to the end of the same
*************** in their commentary text.
*** 4677,4681 ****
  @end itemize
  
! @cindex semicolons
  @cindex statements, separated by semicolon
  Use of a semicolon (@samp{;}) as a statement separator
--- 4690,4695 ----
  @end itemize
  
! @cindex ;
! @cindex semicolon
  @cindex statements, separated by semicolon
  Use of a semicolon (@samp{;}) as a statement separator
*************** Special characters include:
*** 4763,4796 ****
--- 4777,4839 ----
  @itemize @bullet
  @item
+ @cindex ;
+ @cindex semicolon
  Semicolon (@samp{;})
  
  @item
+ @cindex !
+ @cindex exclamation point
  Exclamation point (@samp{!})
  
  @item
+ @cindex "
+ @cindex double quote
  Double quote (@samp{"})
  
  @item
+ @cindex \
+ @cindex backslash
  Backslash (@samp{\})
  
  @item
+ @cindex ?
+ @cindex question mark
  Question mark (@samp{?})
  
  @item
+ @cindex #
+ @cindex hash mark
+ @cindex pound sign
  Hash mark (@samp{#})
  
  @item
+ @cindex &
+ @cindex ampersand
  Ampersand (@samp{&})
  
  @item
+ @cindex %
+ @cindex percent sign
  Percent sign (@samp{%})
  
  @item
+ @cindex _
+ @cindex underscore
  Underscore (@samp{_})
  
  @item
+ @cindex <
+ @cindex open angle
+ @cindex left angle
+ @cindex open bracket
+ @cindex left bracket
  Open angle (@samp{<})
  
  @item
+ @cindex >
+ @cindex close angle
+ @cindex right angle
+ @cindex close bracket
+ @cindex right bracket
  Close angle (@samp{>})
  
*************** and @samp{:})
*** 4802,4806 ****
  @end itemize
  
! @cindex blanks (spaces)
  Note that this document refers to @key{SPC} as @dfn{space},
  while X3.9-1978 FORTRAN 77 refers to it as @dfn{blank}.
--- 4845,4851 ----
  @end itemize
  
! @cindex blank
! @cindex space
! @cindex SPC
  Note that this document refers to @key{SPC} as @dfn{space},
  while X3.9-1978 FORTRAN 77 refers to it as @dfn{blank}.
*************** while X3.9-1978 FORTRAN 77 refers to it 
*** 4810,4815 ****
  @cindex lines
  @cindex source file format
! @cindex source form
! @cindex files, source
  @cindex source code
  @cindex code, source
--- 4855,4860 ----
  @cindex lines
  @cindex source file format
! @cindex source format
! @cindex file, source
  @cindex source code
  @cindex code, source
*************** of text that precedes it (and that does 
*** 4853,4857 ****
  
  @item
! @cindex blanks (spaces)
  Any line of text that is shorter than 72 characters is padded to that length
  with spaces (called ``blanks'' in the standard).
--- 4898,4904 ----
  
  @item
! @cindex blank
! @cindex space
! @cindex SPC
  Any line of text that is shorter than 72 characters is padded to that length
  with spaces (called ``blanks'' in the standard).
*************** line containing 72 spaces.
*** 4882,4889 ****
  @node Continuation Line
  @subsection Continuation Line
! @cindex continuation lines, number of
  @cindex lines, continuation
  @cindex number of continuation lines
! @cindex limits on continuation lines
  
  (Corresponds to Section 3.2.3 of ANSI X3.9-1978 FORTRAN 77.)
--- 4929,4936 ----
  @node Continuation Line
  @subsection Continuation Line
! @cindex continuation line, number of
  @cindex lines, continuation
  @cindex number of continuation lines
! @cindex limits, continuation lines
  
  (Corresponds to Section 3.2.3 of ANSI X3.9-1978 FORTRAN 77.)
*************** An @code{END BLOCK DATA} statement, if t
*** 4999,5003 ****
  @node INCLUDE
  @subsection Including Source Text
! @cindex INCLUDE
  
  Additional source text may be included in the processing of
--- 5046,5050 ----
  @node INCLUDE
  @subsection Including Source Text
! @cindex INCLUDE directive
  
  Additional source text may be included in the processing of
*************** worth adding to the above list, please l
*** 6376,6383 ****
  @node REAL() and AIMAG() of Complex
  @subsection @code{REAL()} and @code{AIMAG()} of Complex
! @cindex REAL intrinsic
! @cindex intrinsics, REAL
! @cindex AIMAG intrinsic
! @cindex intrinsics, AIMAG
  
  The GNU Fortran language disallows @code{REAL(@var{expr})}
--- 6423,6430 ----
  @node REAL() and AIMAG() of Complex
  @subsection @code{REAL()} and @code{AIMAG()} of Complex
! @cindex @code{Real} intrinsic
! @cindex intrinsics, @code{Real}
! @cindex @code{AImag} intrinsic
! @cindex intrinsics, @code{AImag}
  
  The GNU Fortran language disallows @code{REAL(@var{expr})}
*************** treated as @samp{REAL(REALPART(@var{expr
*** 6436,6441 ****
  @node CMPLX() of DOUBLE PRECISION
  @subsection @code{CMPLX()} of @code{DOUBLE PRECISION}
! @cindex CMPLX intrinsic
! @cindex intrinsics, CMPLX
  
  In accordance with Fortran 90 and at least some (perhaps all)
--- 6483,6488 ----
  @node CMPLX() of DOUBLE PRECISION
  @subsection @code{CMPLX()} of @code{DOUBLE PRECISION}
! @cindex @code{Cmplx} intrinsic
! @cindex intrinsics, @code{Cmplx}
  
  In accordance with Fortran 90 and at least some (perhaps all)
*************** did not exist, would leave this document
*** 6600,6604 ****
  @node Scope and Classes of Names
  @section Scope and Classes of Symbolic Names
! @cindex symbolic names
  @cindex scope
  
--- 6647,6651 ----
  @node Scope and Classes of Names
  @section Scope and Classes of Symbolic Names
! @cindex symbol names, scope and classes
  @cindex scope
  
*************** for the relevant aspects of GNU Fortran.
*** 6615,6619 ****
  @node Underscores in Symbol Names
  @subsection Underscores in Symbol Names
! @cindex underscores
  
  Underscores (@samp{_}) are accepted in symbol names after the first
--- 6662,6666 ----
  @node Underscores in Symbol Names
  @subsection Underscores in Symbol Names
! @cindex underscore
  
  Underscores (@samp{_}) are accepted in symbol names after the first
*************** These Fortran 90 features are supported:
*** 6640,6643 ****
--- 6687,6691 ----
  @itemize @bullet
  @item
+ @cindex FORMAT descriptors
  @cindex Z edit descriptor
  @cindex edit descriptor, Z
*************** specifier is supported.
*** 6652,6655 ****
--- 6700,6704 ----
  @section Fortran 90 Features
  @cindex Fortran 90
+ @cindex extensions, from Fortran 90
  
  For convenience this section collects a list (probably incomplete) of
*************** permitted.  Character constants may be e
*** 6700,6704 ****
  @item @code{INCLUDE} statements
  @xref{INCLUDE}.
! @item List directed and namelist i/o on internal files
  @item Binary, octal and hexadecimal constants
  These are supported more generally than required by Fortran 90.
--- 6749,6753 ----
  @item @code{INCLUDE} statements
  @xref{INCLUDE}.
! @item List-directed and namelist I/O on internal files
  @item Binary, octal and hexadecimal constants
  These are supported more generally than required by Fortran 90.
*************** These are supported more generally than 
*** 6708,6711 ****
--- 6757,6767 ----
  @item @code{OPEN} specifiers
  @code{STATUS='REPLACE'} is supported.
+ The @code{FILE=} specifier may be omitted in an @code{OPEN} statement if
+ @code{STATUS='SCRATCH'} is supplied.
+ @item @code{FORMAT} edit descriptors
+ @cindex FORMAT descriptors
+ @cindex Z edit descriptor
+ @cindex edit descriptor, Z
+ The @code{Z} edit descriptor is supported.
  @item Relational operators
  The operators @code{<}, @code{<=}, @code{==}, @code{/=}, @code{>} and
*************** of work!}
*** 6761,6766 ****
  @section Source Form
  @cindex source file format
! @cindex source form
! @cindex files, source
  @cindex source code
  @cindex code, source
--- 6817,6822 ----
  @section Source Form
  @cindex source file format
! @cindex source format
! @cindex file, source
  @cindex source code
  @cindex code, source
*************** inside such constants.
*** 6811,6815 ****
  @node Tabs
  @subsection Tabs
! @cindex tab characters
  
  A source line with a @key{TAB} character anywhere in it is treated as
--- 6867,6872 ----
  @node Tabs
  @subsection Tabs
! @cindex tab character
! @cindex horizontal tab
  
  A source line with a @key{TAB} character anywhere in it is treated as
*************** the way continued character/Hollerith co
*** 6845,6850 ****
  @subsection Short Lines
  @cindex short source lines
! @cindex space-padding
! @cindex spaces
  @cindex source lines, short
  @cindex lines, short
--- 6902,6906 ----
  @subsection Short Lines
  @cindex short source lines
! @cindex space, padding with
  @cindex source lines, short
  @cindex lines, short
*************** like @samp{-ffixed-line-length-none}, fo
*** 6872,6876 ****
  @subsection Long Lines
  @cindex long source lines
! @cindex truncation
  @cindex lines, long
  @cindex source lines, long
--- 6928,6932 ----
  @subsection Long Lines
  @cindex long source lines
! @cindex truncation, of long lines
  @cindex lines, long
  @cindex source lines, long
*************** continuation line, imitating the behavio
*** 6899,6904 ****
  
  @cindex trailing comment
! @cindex comment, trailing
  @cindex /*
  @code{g77} supports use of @samp{/*} to start a trailing
  comment.
--- 6955,6963 ----
  
  @cindex trailing comment
! @cindex comment
! @cindex characters, comment
  @cindex /*
+ @cindex !
+ @cindex exclamation point
  @code{g77} supports use of @samp{/*} to start a trailing
  comment.
*************** both constructs in the general case, sin
*** 7293,7297 ****
  @node Exclamation Point
  @subsection Meaning of Exclamation Point in Column 6
! @cindex exclamation points
  @cindex continuation character
  @cindex characters, continuation
--- 7352,7357 ----
  @node Exclamation Point
  @subsection Meaning of Exclamation Point in Column 6
! @cindex !
! @cindex exclamation point
  @cindex continuation character
  @cindex characters, continuation
*************** marks a line as a continuation line when
*** 7327,7331 ****
  @section Fortran 90
  @cindex compatibility, Fortran 90
! @cindex Fortran 90 compatibility
  
  The GNU Fortran language includes a number of features that are
--- 7387,7391 ----
  @section Fortran 90
  @cindex compatibility, Fortran 90
! @cindex Fortran 90, compatibility
  
  The GNU Fortran language includes a number of features that are
*************** without conversion.
*** 7680,7685 ****
  @node Ugly Null Arguments
  @subsection Ugly Null Arguments
! @cindex trailing commas
! @cindex commas, trailing
  @cindex null arguments
  @cindex arguments, null
--- 7740,7746 ----
  @node Ugly Null Arguments
  @subsection Ugly Null Arguments
! @cindex trailing comma
! @cindex comma, trailing
! @cindex characters, comma
  @cindex null arguments
  @cindex arguments, null
*************** avoid clashes with C++ reserved words in
*** 8595,8600 ****
  
  @cindex startup code
! @cindex runtime initialization
! @cindex initialization, runtime
  Unlike with some runtime systems,
  it shouldn't be necessary
--- 8656,8661 ----
  
  @cindex startup code
! @cindex run-time, initialization
! @cindex initialization, run-time
  Unlike with some runtime systems,
  it shouldn't be necessary
*************** might need to be done by your @code{main
*** 8831,8838 ****
  Fortran environment your Fortran code is expecting.
  
! @cindex IARGC() intrinsic
! @cindex intrinsics, IARGC()
! @cindex GETARG() intrinsic
! @cindex intrinsics, GETARG()
  For example, @code{libg2c}'s @code{main()} sets up the information used by
  the @code{IARGC} and @code{GETARG} intrinsics.
--- 8892,8899 ----
  Fortran environment your Fortran code is expecting.
  
! @cindex @code{IArgC} intrinsic
! @cindex intrinsics, @code{IArgC}
! @cindex @code{GetArg} intrinsic
! @cindex intrinsics, @code{GetArg}
  For example, @code{libg2c}'s @code{main()} sets up the information used by
  the @code{IARGC} and @code{GETARG} intrinsics.
*************** functions return @code{float}.
*** 9005,9009 ****
  @section Names
  @cindex symbol names
! @cindex transformation of symbol names
  
  Fortran permits each implementation to decide how to represent
--- 9066,9070 ----
  @section Names
  @cindex symbol names
! @cindex transforming symbol names
  
  Fortran permits each implementation to decide how to represent
*************** could be used to inhibit the appending o
*** 9105,9110 ****
  @section Common Blocks (COMMON)
  @cindex common blocks
! @cindex COMMON statement
! @cindex statements, COMMON
  
  @code{g77} names and lays out @code{COMMON} areas
--- 9166,9171 ----
  @section Common Blocks (COMMON)
  @cindex common blocks
! @cindex @code{COMMON} statement
! @cindex statements, @code{COMMON}
  
  @code{g77} names and lays out @code{COMMON} areas
*************** previous method in the documentation.)
*** 9220,9224 ****
  @section Complex Variables (COMPLEX)
  @cindex complex variables
! @cindex imaginary part of complex
  @cindex COMPLEX statement
  @cindex statements, COMPLEX
--- 9281,9285 ----
  @section Complex Variables (COMPLEX)
  @cindex complex variables
! @cindex imaginary part
  @cindex COMPLEX statement
  @cindex statements, COMPLEX
*************** Microsoft's rumored patent on the digits
*** 9944,9949 ****
  @cindex statements, BLOCK DATA
  @cindex libraries, containing BLOCK DATA
! @cindex @code{f2c} compatibility
! @cindex compatibility, @code{f2c}
  
  To ensure that block data program units are linked, especially a concern
--- 10005,10010 ----
  @cindex statements, BLOCK DATA
  @cindex libraries, containing BLOCK DATA
! @cindex f2c compatibility
! @cindex compatibility, f2c
  
  To ensure that block data program units are linked, especially a concern
*************** in the Fortran standard@dots{}and is qui
*** 10045,10049 ****
  many programmers might expect.
  
! In particular, Fortran indexed @code{DO} loops are implemented as if
  the number of trips through the loop is calculated @emph{before}
  the loop is entered.
--- 10106,10110 ----
  many programmers might expect.
  
! In particular, Fortran iterative @code{DO} loops are implemented as if
  the number of trips through the loop is calculated @emph{before}
  the loop is entered.
*************** tracking down bugs in such programs.
*** 10229,10233 ****
  * Output Assumed To Flush::
  * Large File Unit Numbers::
! * Floating point precision::
  * Inconsistent Calling Sequences::
  @end menu
--- 10290,10294 ----
  * Output Assumed To Flush::
  * Large File Unit Numbers::
! * Floating-point precision::
  * Inconsistent Calling Sequences::
  @end menu
*************** are given types and then evaluated.
*** 10288,10292 ****
  @subsection Variables Assumed To Be Zero
  @cindex zero-initialized variables
! @cindex variables assumed to be zero
  @cindex uninitialized variables
  
--- 10349,10353 ----
  @subsection Variables Assumed To Be Zero
  @cindex zero-initialized variables
! @cindex variables, assumed to be zero
  @cindex uninitialized variables
  
*************** options using @code{g77}.
*** 10313,10317 ****
  @node Variables Assumed To Be Saved
  @subsection Variables Assumed To Be Saved
! @cindex variables retaining values across calls
  @cindex saved variables
  @cindex static variables
--- 10374,10378 ----
  @node Variables Assumed To Be Saved
  @subsection Variables Assumed To Be Saved
! @cindex variables, retaining values across calls
  @cindex saved variables
  @cindex static variables
*************** Information on how to increase these lim
*** 10648,10667 ****
  in your system's documentation.
  
! @node Floating point precision
! @subsection Floating point precision
  
! @cindex IEEE 754
! @cindex IEEE conformance
! @cindex conformance, IEEE
! @cindex floating point precision
! If your program depends on exact IEEE 754 floating point handling it may
  help on some systems---specifically x86 or m68k hardware---to use
  the @code{-ffloat-store} option or to reset the precision flag on the
! floating point unit @xref{Optimize Options}.
  
  However, it might be better simply to put the FPU into double precision
  mode and not take the performance hit of @code{-ffloat-store}.  On x86
  and m68k GNU systems you can do this with a technique similar to that
! for turning on floating point exceptions @xref{Floating-point Exception
  Handling}.  The control word could be set to double precision by
  replacing the @code{__setfpucw} call with one like this:
--- 10709,10729 ----
  in your system's documentation.
  
! @node Floating-point precision
! @subsection Floating-point precision
  
! @cindex IEEE 754 conformance
! @cindex conformance, IEEE 754
! @cindex floating-point, precision
! @cindex ix86 floating-point
! @cindex x86 floating-point
! If your program depends on exact IEEE 754 floating-point handling it may
  help on some systems---specifically x86 or m68k hardware---to use
  the @code{-ffloat-store} option or to reset the precision flag on the
! floating-point unit @xref{Optimize Options}.
  
  However, it might be better simply to put the FPU into double precision
  mode and not take the performance hit of @code{-ffloat-store}.  On x86
  and m68k GNU systems you can do this with a technique similar to that
! for turning on floating-point exceptions @xref{Floating-point Exception
  Handling}.  The control word could be set to double precision by
  replacing the @code{__setfpucw} call with one like this:
*************** Configurations,gcc,Using and Porting GNU
*** 10680,10684 ****
  
  @pindex ftnchek
! @cindex floating point errors
  @cindex x86 FPU stack
  Code containing inconsistent calling sequences in the same file is
--- 10742,10747 ----
  
  @pindex ftnchek
! @cindex floating-point, errors
! @cindex ix86 FPU stack
  @cindex x86 FPU stack
  Code containing inconsistent calling sequences in the same file is
*************** consistency across source files 
*** 10696,10704 ****
  Mysterious errors, which may appear to be code generation problems, can
  appear specifically on the x86 architecture with some such
! inconsistencies.  On x86 hardware, floating point return values of
! functions are placed on the floating point unit's register stack, not
  the normal stack.  Thus calling a @code{REAL} or @code{DOUBLE PRECISION}
  @code{FUNCTION} as some other sort of procedure, or vice versa,
! scrambles the floating point stack.  This may break unrelated code
  executed later.  Similarly if, say, external C routines are written
  incorrectly.
--- 10759,10767 ----
  Mysterious errors, which may appear to be code generation problems, can
  appear specifically on the x86 architecture with some such
! inconsistencies.  On x86 hardware, floating-point return values of
! functions are placed on the floating-point unit's register stack, not
  the normal stack.  Thus calling a @code{REAL} or @code{DOUBLE PRECISION}
  @code{FUNCTION} as some other sort of procedure, or vice versa,
! scrambles the floating-point stack.  This may break unrelated code
  executed later.  Similarly if, say, external C routines are written
  incorrectly.
*************** It is easy to find these using @samp{-f@
*** 10799,10803 ****
  @node Faster Programs
  @section Faster Programs
! @cindex speeding up programs
  @cindex programs, speeding up
  
--- 10862,10866 ----
  @node Faster Programs
  @section Faster Programs
! @cindex speed, of programs
  @cindex programs, speeding up
  
*************** it working).
*** 10821,10825 ****
  @cindex aligned stack
  @cindex Pentium optimizations
! @cindex optimizations, Pentium
  
  On some systems, such as those with Pentium Pro CPUs, programs
--- 10884,10888 ----
  @cindex aligned stack
  @cindex Pentium optimizations
! @cindex optimization, for Pentium
  
  On some systems, such as those with Pentium Pro CPUs, programs
*************** There are a variety of approaches to use
*** 10843,10848 ****
  @itemize @bullet
  @item
! @cindex COMMON, layout
! @cindex layout of common blocks
  Order your @code{COMMON} and @code{EQUIVALENCE} areas such
  that the variables and arrays with the widest alignment
--- 10906,10911 ----
  @itemize @bullet
  @item
! @cindex @code{COMMON} layout
! @cindex layout of @code{COMMON} blocks
  Order your @code{COMMON} and @code{EQUIVALENCE} areas such
  that the variables and arrays with the widest alignment
*************** compiler, typically @code{gcc}.)
*** 10985,10989 ****
  @subsection Use Submodel Options
  @cindex Pentium optimizations
! @cindex optimizations, Pentium
  @cindex 586/686 CPUs
  @cindex submodels
--- 11048,11052 ----
  @subsection Use Submodel Options
  @cindex Pentium optimizations
! @cindex optimization, for Pentium
  @cindex 586/686 CPUs
  @cindex submodels
*************** a reference to it in future versions of 
*** 11151,11156 ****
  @cindex linking error for user code
  @cindex code, user
! @cindex ld error for user code
! @cindex ld can't find strange names
  On some systems, perhaps just those with out-of-date (shared?)
  libraries, unresolved-reference errors happen when linking @code{g77}-compiled
--- 11214,11219 ----
  @cindex linking error for user code
  @cindex code, user
! @cindex @code{ld}, error linking user code
! @cindex @code{ld}, can't find strange names
  On some systems, perhaps just those with out-of-date (shared?)
  libraries, unresolved-reference errors happen when linking @code{g77}-compiled
*************** by @code{g77}.
*** 11168,11175 ****
  
  @cindex undefined reference (_main)
! @cindex linking error for user code
! @cindex ld error for user code
  @cindex code, user
! @cindex ld can't find _main
  If your program doesn't link due to unresolved references to names
  like @samp{_main}, make sure you're using the @code{g77} command to do the
--- 11231,11238 ----
  
  @cindex undefined reference (_main)
! @cindex linking error, user code
! @cindex @code{ld}, error linking user code
  @cindex code, user
! @cindex @code{ld}, can't find @samp{_main}
  If your program doesn't link due to unresolved references to names
  like @samp{_main}, make sure you're using the @code{g77} command to do the
*************** command line, in case that helps.
*** 11188,11193 ****
  @cindex common blocks, large
  @cindex large common blocks
! @cindex linker errors
! @cindex ld errors
  @cindex errors, linker
  On some older GNU/Linux systems, programs with common blocks larger
--- 11251,11256 ----
  @cindex common blocks, large
  @cindex large common blocks
! @cindex linking, errors
! @cindex @code{ld}, errors
  @cindex errors, linker
  On some older GNU/Linux systems, programs with common blocks larger
*************** more recent versions of @code{binutils},
*** 11200,11204 ****
  @node Debugger Problems
  @subsection Debugger Problems
! @cindex @code{gdb} support
  @cindex support, @code{gdb}
  There are some known problems when using @code{gdb} on code
--- 11263,11267 ----
  @node Debugger Problems
  @subsection Debugger Problems
! @cindex @code{gdb}, support
  @cindex support, @code{gdb}
  There are some known problems when using @code{gdb} on code
*************** not enough.)
*** 11270,11274 ****
  @node Stack Overflow
  @subsection Stack Overflow
! @cindex stack overflow
  @cindex segmentation violation
  @code{g77} code might fail at runtime (probably with a ``segmentation
--- 11333,11337 ----
  @node Stack Overflow
  @subsection Stack Overflow
! @cindex stack, overflow
  @cindex segmentation violation
  @code{g77} code might fail at runtime (probably with a ``segmentation
*************** simply too large for the system, or bugg
*** 11322,11328 ****
  @subsection Nothing Happens
  @cindex nothing happens
! @cindex naming programs @samp{test}
  @cindex @samp{test} programs
! @cindex programs named @samp{test}
  It is occasionally reported that a ``simple'' program,
  such as a ``Hello, World!'' program, does nothing when
--- 11385,11391 ----
  @subsection Nothing Happens
  @cindex nothing happens
! @cindex naming programs
  @cindex @samp{test} programs
! @cindex programs, @samp{test}
  It is occasionally reported that a ``simple'' program,
  such as a ``Hello, World!'' program, does nothing when
*************** responsibility, as difficult as that tas
*** 11412,11416 ****
  
  @cindex ``infinite spaces'' printed
! @cindex spaces, endless printing of
  @cindex libc, non-ANSI or non-default
  @cindex C library
--- 11475,11479 ----
  
  @cindex ``infinite spaces'' printed
! @cindex space, endless printing of
  @cindex libc, non-ANSI or non-default
  @cindex C library
*************** This would tend to result in output that
*** 11541,11545 ****
  with that produced by some other Fortran implementations.
  
! A useful source of information on floating point computation is David
  Goldberg, `What Every Computer Scientist Should Know About
  Floating-Point Arithmetic', Computing Surveys, 23, March 1991, pp.@:
--- 11604,11608 ----
  with that produced by some other Fortran implementations.
  
! A useful source of information on floating-point computation is David
  Goldberg, `What Every Computer Scientist Should Know About
  Floating-Point Arithmetic', Computing Surveys, 23, March 1991, pp.@:
*************** as ``spills''.
*** 11566,11570 ****
  @cindex spills of floating-point results
  @cindex 80-bit spills
! @cindex truncation of floating-point values
  (@code{g77} specifically, and @code{gcc} generally, does
  arbitrarily truncate 80-bit results during spills
--- 11629,11633 ----
  @cindex spills of floating-point results
  @cindex 80-bit spills
! @cindex truncation, of floating-point values
  (@code{g77} specifically, and @code{gcc} generally, does
  arbitrarily truncate 80-bit results during spills
*************** The GNU C library provides routines for 
*** 11578,11582 ****
  documentation about this.
  
! @xref{Floating point precision}, regarding IEEE 754 conformance.
  
  @include bugs.texi
--- 11641,11645 ----
  documentation about this.
  
! @xref{Floating-point precision}, regarding IEEE 754 conformance.
  
  @include bugs.texi
*************** having to specify, say, a @code{-Wno-col
*** 11689,11693 ****
  @node Fortran 90 Support
  @subsection Fortran 90 Support
! @cindex Fortran 90 support
  @cindex support, Fortran 90
  
--- 11752,11756 ----
  @node Fortran 90 Support
  @subsection Fortran 90 Support
! @cindex Fortran 90, support
  @cindex support, Fortran 90
  
*************** alleviate this problem).
*** 11801,11806 ****
  @node Popular Non-standard Types
  @subsection Popular Non-standard Types
! @cindex INTEGER*2 support
! @cindex LOGICAL*1 support
  
  @code{g77} doesn't fully support @code{INTEGER*2}, @code{LOGICAL*1},
--- 11864,11871 ----
  @node Popular Non-standard Types
  @subsection Popular Non-standard Types
! @cindex @code{INTEGER*2} support
! @cindex types, @code{INTEGER*2}
! @cindex @code{LOGICAL*1} support
! @cindex types, @code{LOGICAL*1}
  
  @code{g77} doesn't fully support @code{INTEGER*2}, @code{LOGICAL*1},
*************** for them.
*** 11814,11818 ****
  @subsection Full Support for Compiler Types
  
! @cindex REAL*16 support
  @code{g77} doesn't support @code{INTEGER}, @code{REAL}, and @code{COMPLEX} equivalents
  for @emph{all} applicable back-end-supported types (@code{char}, @code{short int},
--- 11879,11886 ----
  @subsection Full Support for Compiler Types
  
! @cindex @code{REAL*16} support
! @cindex types, @code{REAL*16}
! @cindex @code{INTEGER*8} support
! @cindex types, @code{INTEGER*8}
  @code{g77} doesn't support @code{INTEGER}, @code{REAL}, and @code{COMPLEX} equivalents
  for @emph{all} applicable back-end-supported types (@code{char}, @code{short int},
*************** This is scheduled for version 0.6.
*** 11830,11835 ****
  @cindex function references, in adjustable array bounds
  @cindex array bounds, adjustable
! @cindex DIMENSION statement
! @cindex statements, DIMENSION
  
  @code{g77} doesn't support more general expressions to dimension
--- 11898,11903 ----
  @cindex function references, in adjustable array bounds
  @cindex array bounds, adjustable
! @cindex @code{DIMENSION} statement
! @cindex statements, @code{DIMENSION}
  
  @code{g77} doesn't support more general expressions to dimension
*************** require much more work on @code{libg2c}.
*** 12065,12069 ****
  @cindex FORM='PRINT'
  @cindex ANS carriage control
! @cindex carraige control
  @pindex asa
  @pindex fpr
--- 12133,12137 ----
  @cindex FORM='PRINT'
  @cindex ANS carriage control
! @cindex carriage control
  @pindex asa
  @pindex fpr
*************** files included via the @code{INCLUDE} di
*** 12186,12201 ****
  @node Bit Operations on Floating-point Data
  @subsection Bit Operations on Floating-point Data
! @cindex AND intrinsic
! @cindex intrinsics, AND
! @cindex OR intrinsic
! @cindex intrinsics, OR
! @cindex SHIFT intrinsic
! @cindex intrinsics, SHIFT
  
  @code{g77} does not allow @code{REAL} and other non-integral types for
! arguments to intrinsics like @code{AND}, @code{OR}, and @code{SHIFT}.
  
  For example, this program is rejected by @code{g77}, because
! the intrinsic @code{IAND} does not accept @code{REAL} arguments:
  
  @smallexample
--- 12254,12269 ----
  @node Bit Operations on Floating-point Data
  @subsection Bit Operations on Floating-point Data
! @cindex @code{And} intrinsic
! @cindex intrinsics, @code{And}
! @cindex @code{Or} intrinsic
! @cindex intrinsics, @code{Or}
! @cindex @code{Shift} intrinsic
! @cindex intrinsics, @code{Shift}
  
  @code{g77} does not allow @code{REAL} and other non-integral types for
! arguments to intrinsics like @code{And}, @code{Or}, and @code{Shift}.
  
  For example, this program is rejected by @code{g77}, because
! the intrinsic @code{Iand} does not accept @code{REAL} arguments:
  
  @smallexample
*************** END
*** 12212,12217 ****
  @node Floating-point Exception Handling
  @subsection Floating-point Exception Handling
! @cindex floating point exceptions
! @cindex exceptions, floating point
  @cindex FPE handling
  @cindex NaN values
--- 12280,12285 ----
  @node Floating-point Exception Handling
  @subsection Floating-point Exception Handling
! @cindex floating-point, exceptions
! @cindex exceptions, floating-point
  @cindex FPE handling
  @cindex NaN values
*************** way around them for now.
*** 12561,12565 ****
  @cindex common blocks
  @cindex name space
! @cindex underscores
  
  The current external-interface design, which includes naming of
--- 12629,12633 ----
  @cindex common blocks
  @cindex name space
! @cindex underscore
  
  The current external-interface design, which includes naming of
*************** with popular existing compilers.
*** 12581,12586 ****
  @cindex BLOCK DATA statement
  @cindex statements, BLOCK DATA
! @cindex COMMON statement
! @cindex statements, COMMON
  @cindex naming conflicts
  
--- 12649,12654 ----
  @cindex BLOCK DATA statement
  @cindex statements, BLOCK DATA
! @cindex @code{COMMON} statement
! @cindex statements, @code{COMMON}
  @cindex naming conflicts
  
*************** we do not make because we think GNU Fort
*** 12644,12649 ****
  @subsection Backslash in Constants
  @cindex backslash
! @cindex f77 support
! @cindex support, f77
  
  In the opinion of many experienced Fortran users,
--- 12712,12717 ----
  @subsection Backslash in Constants
  @cindex backslash
! @cindex @code{f77} support
! @cindex support, @code{f77}
  
  In the opinion of many experienced Fortran users,
*************** Free form is a newer form for Fortran co
*** 14793,14796 ****
--- 14861,14866 ----
  The older, classic form is called fixed form.
  
+ @cindex continuation character
+ @cindex characters, continuation
  Fixed-form code is visually fairly distinctive, because
  numerical labels and comments are all that appear in
*************** Spaces generally are not significant, so
*** 14801,14806 ****
--- 14871,14883 ----
  see statements such as @samp{REALX,Y} and @samp{DO10I=1,100},
  you are looking at fixed-form code.
+ @cindex *
+ @cindex asterisk
  Comment lines are indicated by the letter @samp{C} or the symbol
  @samp{*} in column 1.
+ @cindex trailing comment
+ @cindex comment
+ @cindex characters, comment
+ @cindex !
+ @cindex exclamation point
  (Some code uses @samp{!} or @samp{/*} to begin in-line comments,
  which many compilers support.)
*** egcs-19990211/gcc/f/g77install.texi.~1~	Wed Dec 16 16:17:10 1998
--- egcs-19990211/gcc/f/g77install.texi	Sun Feb 14 04:19:24 1999
***************
*** 25,29 ****
  @chapter Installing GNU Fortran
  @end ifclear
! @cindex installing GNU Fortran
  
  The following information describes how to install @code{g77}.
--- 25,29 ----
  @chapter Installing GNU Fortran
  @end ifclear
! @cindex installing, GNU Fortran
  
  The following information describes how to install @code{g77}.
*************** and @code{egcs} version 1.0.
*** 404,408 ****
  @node Building GNU CC Necessary
  @subsubsection Building GNU CC Necessary
! @cindex gcc, building
  @cindex building gcc
  
--- 404,408 ----
  @node Building GNU CC Necessary
  @subsubsection Building GNU CC Necessary
! @cindex @code{gcc}, building
  @cindex building gcc
  
*************** is not yet established.
*** 421,427 ****
  @cindex f771, linking error for
  @cindex linking error for f771
! @cindex ld error for f771
! @cindex ld can't find _bsearch
! @cindex ld can't find _strtoul
  @cindex SunOS4
  
--- 421,427 ----
  @cindex f771, linking error for
  @cindex linking error for f771
! @cindex @code{ld}, error linking f771
! @cindex @code{ld}, can't find _bsearch
! @cindex @code{ld}, can't find _strtoul
  @cindex SunOS4
  
*************** Then build or rebuild @code{g77} as appr
*** 722,726 ****
  @cindex code, stack variables
  @cindex maximum stackable size
! @cindex stack allocation
  @cindex segmentation violation
  @code{g77}, on most machines, puts many variables and arrays on the stack
--- 722,726 ----
  @cindex code, stack variables
  @cindex maximum stackable size
! @cindex stack, allocation
  @cindex segmentation violation
  @code{g77}, on most machines, puts many variables and arrays on the stack
*************** something like @samp{EQUIVALENCE (I,R)} 
*** 759,763 ****
  @subsection Initialization of Large Aggregate Areas
  
! @cindex speed, compiler
  @cindex slow compiler
  @cindex memory utilization
--- 759,763 ----
  @subsection Initialization of Large Aggregate Areas
  
! @cindex speed, of compiler
  @cindex slow compiler
  @cindex memory utilization
*************** tree for the first time.
*** 1210,1214 ****
  @cindex code, modifying
  @cindex Pentium optimizations
! @cindex optimizations, Pentium
  @emph{Note:} Please use @strong{only} @code{gcc} and @code{g77}
  source trees as distributed by the FSF.
--- 1210,1214 ----
  @cindex code, modifying
  @cindex Pentium optimizations
! @cindex optimization, for Pentium
  @emph{Note:} Please use @strong{only} @code{gcc} and @code{g77}
  source trees as distributed by the FSF.
*************** and @code{gcc} can coexist as they do in
*** 1224,1237 ****
  @subsection Merging Distributions
  @cindex merging distributions
! @cindex @code{gcc} versions supported by @code{g77}
! @cindex versions of @code{gcc}
! @cindex support for @code{gcc} versions
  
  After merging the @code{g77} source tree into the @code{gcc} source tree,
  you have put together a complete @code{g77} source tree.
  
! @cindex gcc version numbering
! @cindex version numbering
! @cindex g77 version number
  @cindex GNU version numbering
  As of version 0.5.23, @code{g77} no longer modifies
--- 1224,1237 ----
  @subsection Merging Distributions
  @cindex merging distributions
! @cindex @code{gcc}, versions supported by @code{g77}
! @cindex versions, of @code{gcc}
! @cindex support, @code{gcc} versions
  
  After merging the @code{g77} source tree into the @code{gcc} source tree,
  you have put together a complete @code{g77} source tree.
  
! @cindex @code{gcc}, version number
! @cindex version number
! @cindex @code{g77}, version number
  @cindex GNU version numbering
  As of version 0.5.23, @code{g77} no longer modifies
*************** the @code{g77} front end (FFE).
*** 1326,1330 ****
  @subsection Where in the World Does Fortran (and GNU CC) Go?
  @cindex language f77 not recognized
! @cindex gcc will not compile Fortran programs
  
  Before configuring, you should make sure you know
--- 1326,1330 ----
  @subsection Where in the World Does Fortran (and GNU CC) Go?
  @cindex language f77 not recognized
! @cindex @code{gcc}, will not compile Fortran programs
  
  Before configuring, you should make sure you know
*************** issuing an explanatory diagnostic.
*** 1471,1475 ****
  @cindex building @code{g77}
  
! @vindex LANGUAGES
  Building @code{g77} requires building enough of @code{gcc} that
  these instructions assume you're going to build all of
--- 1471,1475 ----
  @cindex building @code{g77}
  
! @cindex @samp{LANGUAGES} macro
  Building @code{g77} requires building enough of @code{gcc} that
  these instructions assume you're going to build all of


More information about the Gcc-patches mailing list