OSDN Git Service

Daily bump.
[pf3gnuchains/gcc-fork.git] / gcc / f / news.texi
index 8723157..c187a8f 100644 (file)
@@ -1,4 +1,4 @@
-@c Copyright (C) 1995-1999 Free Software Foundation, Inc.
+@c Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
 @c This is part of the G77 manual.
 @c For copying conditions, see the file g77.texi.
 
@@ -7,9 +7,9 @@
 
 @c Keep this the same as the dates above, since it's used
 @c in the standalone derivations of this file (e.g. NEWS).
-@set copyrights-news 1995-1999
+@set copyrights-news 1995,1996,1997,1998,1999,2000,2001
 
-@set last-update-news 1999-04-03
+@set last-update-news 2001-04-21
 
 @include root.texi
 
@@ -96,8 +96,9 @@ involve a combination of these elements.
 Note that two variants of @code{g77} are tracked below.
 The @code{egcs} variant is described vis-a-vis
 previous versions of @code{egcs} and/or
-an official FSF version,
-as appropriate.
+an official FSF version, as appropriate.
+Note that all such variants are obsolete @emph{as of July 1999} -
+the information is retained here only for its historical value.
 
 Therefore, @code{egcs} versions sometimes have multiple listings
 to help clarify how they differ from other versions,
@@ -144,14 +145,83 @@ of news about previous @code{g77} versions up-to-date.
 @ifclear USERVISONLY
 An online, ``live'' version of this document
 (derived directly from the mainline, development version
-of @code{g77} within @code{egcs})
+of @code{g77} within @code{gcc})
 is available at
-@uref{http://egcs.cygnus.com/onlinedocs/g77_news.html}.
+@uref{http://www.gnu.org/software/gcc/onlinedocs/g77_news.html}.
 @end ifclear
 
 The following information was last updated on @value{last-update-news}:
 
-@heading In @code{egcs} 1.2 (versus 1.1.2):
+@heading In development, 0.5.27, @code{GCC} 3.1 versus @code{GCC} 3.0:
+@itemize @bullet
+@ifclear USERVISONLY
+@item
+[ Nothing yet ]
+@end ifclear
+@end itemize
+
+@heading In prerelease, 0.5.26, @code{GCC} 3.0 versus @code{GCC} 2.95:
+@itemize @bullet
+@ifclear USERVISONLY
+@item
+When a REWIND was issued after a WRITE statement on an unformatted
+file, the implicit truncation was performed by copying the truncated
+file to /tmp and copying the result back.  This has been fixed by using
+the @code{ftruncate} OS function.  Thanks go to the GAMESS developers
+for bringing this to our attention.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+It is not necessary anymore to use the option @code{-femulate-complex}
+to compile Fortran code using COMPLEX arithmetic, even on 64-bit machines
+(like the Alpha).  This will improve code generation.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+INTRINSIC arithmetic functions are now treated as routines that do not
+depend on anything but their argument(s).  This enables further instruction
+scheduling, because it is known that they cannot read or modify arbitrary
+locations.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+Upgrade to @code{libf2c} as of 2000-12-05.
+
+This fixes a bug where a namelist containing initialization of LOGICAL
+items and a variable starting with T or F would be read incorrectly.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+Using options @code{-g}, @code{-ggdb} or @code{-gdwarf[-2]} (where
+appropriate for your target) now also enables debugging information
+for COMMON BLOCK and EQUIVALENCE items to be emitted.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+The @code{TtyNam} intrinsics now set @var{Name} to all spaces (at run time)
+if the system has no @code{ttyname} implementation available.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+Upgrade to @code{libf2c} as of 1999-06-28.
+
+This fixes a bug whereby
+input to a @code{NAMELIST} read involving a repeat count,
+such as @samp{K(5)=10*3},
+was not properly handled by @code{libf2c}.
+The first item was written to @samp{K(5)},
+but the remaining nine were written elsewhere (still within the array),
+not necessarily starting at @samp{K(6)}.
+@end ifclear
+@end itemize
+
+@heading In 0.5.25, @code{GCC} 2.95 (@code{EGCS} 1.2) versus @code{EGCS} 1.1.2:
 @itemize @bullet
 @ifclear USERVISONLY
 @item
@@ -166,6 +236,56 @@ For example, @samp{INTEGER*8 J; J = 4E10} now works as documented.
 
 @ifclear USERVISONLY
 @item
+@code{g77} no longer truncates @code{INTEGER(KIND=2)}
+(usually @code{INTEGER*8})
+subscript expressions when evaluating array references
+on systems with pointers widers than @code{INTEGER(KIND=1)}
+(such as Alphas).
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+@code{g77} no longer generates bad code
+for an assignment to a @code{COMPLEX} variable or array
+that partially overlaps one or more of the sources
+of the same assignment
+(a very rare construction).
+It now assigns through a temporary,
+in cases where such partial overlap is deemed possible.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+@code{libg2c} (@code{libf2c}) no longer loses track
+of the file being worked on
+during a @code{BACKSPACE} operation.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+@code{libg2c} (@code{libf2c}) fixes a bug whereby
+input to a @code{NAMELIST} read involving a repeat count,
+such as @samp{K(5)=10*3},
+was not properly handled by @code{libf2c}.
+The first item was written to @samp{K(5)},
+but the remaining nine were written elsewhere (still within the array),
+not necessarily starting at @samp{K(6)}.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+@c Tim Prince reported this, regarding the TEST_FPU benchmark.
+Automatic arrays now seem to be working on HP-UX systems.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+The @code{Date} intrinsic now returns the correct result
+on big-endian systems.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
 Fix @code{g77} so it no longer crashes when compiling
 I/O statements using keywords that define @code{INTEGER} values,
 such as @samp{IOSTAT=@var{j}},
@@ -176,21 +296,52 @@ Instead, it issues a diagnostic.
 
 @ifclear USERVISONLY
 @item
+Fix @code{g77} so it properly handles @samp{DATA A/@var{rpt}*@var{val}/},
+where @var{rpt} is not default @code{INTEGER}, such as @code{INTEGER*2},
+instead of producing a spurious diagnostic.
+Also fix @samp{DATA (A(I),I=1,N)},
+where @samp{N} is not default @code{INTEGER}
+to work instead of crashing @code{g77}.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
 The @samp{-ax} option is now obeyed when compiling Fortran programs.
 (It is passed to the @file{f771} driver.)
 @end ifclear
 
 @item
+The new @samp{-fbounds-check} option
+causes @code{g77} to compile run-time bounds checks
+of array subscripts, as well as of substring start and end points.
+
+@item
+@code{libg2c} now supports building as multilibbed library,
+which provides better support for systems
+that require options such as @samp{-mieee}
+to work properly.
+
+@item
 Source file names with the suffixes @samp{.FOR} and @samp{.FPP}
 now are recognized by @code{g77}
 as if they ended in @samp{.for} and @samp{.fpp}, respectively.
 
 @item
+The order of arguments to the @emph{subroutine} forms of the
+@code{CTime}, @code{DTime}, @code{ETime}, and @code{TtyNam}
+intrinsics has been swapped.
+The argument serving as the returned value
+for the corresponding function forms
+now is the @emph{second} argument,
+making these consistent with the other subroutine forms
+of @code{libU77} intrinsics.
+
+@item
 @code{g77} now warns about a reference to an intrinsic
 that has an interface that is not Year 2000 (Y2K) compliant.
-Also, the @code{libg2c} has been changed to increase the likelihood
+Also, @code{libg2c} has been changed to increase the likelihood
 of catching references to the implementations of these intrinsics
-using the @samp{EXTERNAL} mechanism
+using the @code{EXTERNAL} mechanism
 (which would avoid the new warnings).
 
 @ifset DOC-G77
@@ -205,7 +356,7 @@ disagrees with the reference concerning the type of the function.
 @end ifclear
 
 @item
-@code{-fno-emulate-complex} is now the default option.
+@samp{-fno-emulate-complex} is now the default option.
 This should result in improved performance
 of code that uses the @code{COMPLEX} data type.
 
@@ -213,24 +364,101 @@ of code that uses the @code{COMPLEX} data type.
 @cindex double-precision performance
 @cindex -malign-double
 @item
-The @code{-malign-double} option
+The @samp{-malign-double} option
 now reliably aligns @emph{all} double-precision variables and arrays
 on Intel x86 targets.
 
 @ifclear USERVISONLY
 @item
+Even without the @samp{-malign-double} option,
+@code{g77} reliably aligns local double-precision variables
+that are not in @code{EQUIVALENCE} areas
+and not @code{SAVE}'d.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+@code{g77} now open-codes (``inlines'') division of @code{COMPLEX} operands
+instead of generating a run-time call to
+the @code{libf2c} routines @code{c_div} or @code{z_div},
+unless the @samp{-Os} option is specified.
+@end ifclear
+
+@item
+@code{g77} no longer generates code to maintain @code{errno},
+a C-language concept,
+when performing operations such as the @code{SqRt} intrinsic.
+
+@ifclear USERVISONLY
+@item
+@code{g77} developers can temporarily use
+the @samp{-fflatten-arrays} option
+to compare how the compiler handles code generation
+using C-like constructs as compared to the
+Fortran-like method constructs normally used.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+A substantial portion of the @code{g77} front end's code-generation component
+was rewritten.
+It now generates code using facilities more robustly supported
+by the @code{gcc} back end.
+One effect of this rewrite is that some codes no longer produce
+a spurious ``label @var{lab} used before containing binding contour''
+message.
+@end ifclear
+
+@item
+Support for the @samp{-fugly} option has been removed.
+
+@ifclear USERVISONLY
+@item
 Improve documentation and indexing,
-including information on Year 2000 (Y2K) compliance.
+including information on Year 2000 (Y2K) compliance,
+and providing more information on internals of the front end.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
+Upgrade to @code{libf2c} as of 1999-05-10.
 @end ifclear
 @end itemize
 
-@heading In 0.5.24 and @code{egcs} 1.1.2 (versus 0.5.23 and 1.1.1):
+@heading In 0.5.24 versus 0.5.23:
+
+There is no @code{g77} version 0.5.24 at this time,
+or planned.
+0.5.24 is the version number designated for bug fixes and,
+perhaps, some new features added,
+to 0.5.23.
+Version 0.5.23 requires @code{gcc} 2.8.1,
+as 0.5.24 was planned to require.
+
+Due to @code{EGCS} becoming @code{GCC}
+(which is now an acronym for ``GNU Compiler Collection''),
+and @code{EGCS} 1.2 becoming officially designated @code{GCC} 2.95,
+there seems to be no need for an actual 0.5.24 release.
+
+To reduce the confusion already resulting from use of 0.5.24
+to designate @code{g77} versions within @code{EGCS} versions 1.0 and 1.1,
+as well as in versions of @code{g77} documentation and notices
+during that period,
+``mainline'' @code{g77} version numbering resumes
+at 0.5.25 with @code{GCC} 2.95 (@code{EGCS} 1.2),
+skipping over 0.5.24 as a placeholder version number.
+
+To repeat, there is no @code{g77} 0.5.24, but there is now a 0.5.25.
+Please remain calm and return to your keypunch units.
+
+@c 1999-03-15: EGCS 1.1.2 released.
+@heading In @code{EGCS} 1.1.2 versus @code{EGCS} 1.1.1:
 @ifclear USERVISONLY
 @itemize @bullet
 @item
 Fix the @code{IDate} intrinsic (VXT) (in @code{libg2c})
 so the returned year is in the documented, non-Y2K-compliant range
-of 0--99,
+of 0-99,
 instead of being returned as 100 in the year 2000.
 
 @ifset DOC-G77
@@ -239,12 +467,12 @@ for more information.
 @end ifset
 
 @item
-Fix the @samp{Date_and_Time} intrinsic (in @code{libg2c})
+Fix the @code{Date_and_Time} intrinsic (in @code{libg2c})
 to return the milliseconds value properly
 in @var{Values}(8).
 
 @item
-Fix the @samp{LStat} intrinsic (in @code{libg2c})
+Fix the @code{LStat} intrinsic (in @code{libg2c})
 to return device-ID information properly
 in @var{SArray}(7).
 
@@ -253,7 +481,8 @@ Improve documentation.
 @end itemize
 @end ifclear
 
-@heading In 0.5.24 and @code{egcs} 1.1.1 (versus 0.5.23 and 1.1):
+@c 1998-12-04: EGCS 1.1.1 released.
+@heading In @code{EGCS} 1.1.1 versus @code{EGCS} 1.1:
 @ifclear USERVISONLY
 @itemize @bullet
 @item
@@ -273,73 +502,27 @@ upon doing any I/O following a direct formatted write.
 
 @item
 Fix @code{g77} so it no longer crashes compiling references
-to the @samp{Rand} intrinsic on some systems.
+to the @code{Rand} intrinsic on some systems.
 
 @item
 Fix @code{g77} portion of installation process so it works
 better on some systems
 (those with shells requiring @samp{else true} clauses
-on @samp{if} constructs
+on @code{if} constructs
 for the completion code to be set properly).
 @end itemize
 @end ifclear
 
-@heading In @code{egcs} 1.1 (versus 0.5.24):
+@c 1998-09-03: EGCS 1.1 released.
+@heading In @code{EGCS} 1.1 versus @code{EGCS} 1.0.3:
 @itemize @bullet
 @ifclear USERVISONLY
 @item
-Fix @code{g77} crash compiling code
-containing the construct @samp{CMPLX(0.)} or similar.
-@end ifclear
-
-@ifclear USERVISONLY
-@item
-Fix @code{g77} crash
-(or apparently infinite run-time)
-when compiling certain complicated expressions
-involving @code{COMPLEX} arithmetic
-(especially multiplication).
-@end ifclear
-
-@ifclear USERVISONLY
-@cindex DNRM2
-@cindex stack, 387 coprocessor
-@cindex Intel x86
-@cindex -O2
-@item
-Fix a code-generation bug that afflicted
-Intel x86 targets when @samp{-O2} was specified
-compiling, for example, an old version of
-the @samp{DNRM2} routine.
-
-The x87 coprocessor stack was being
-mismanaged in cases involving assigned @code{GOTO}
-and @code{ASSIGN}.
-@end ifclear
-
-@cindex alignment
-@cindex double-precision performance
-@cindex -malign-double
-@item
-Align static double-precision variables and arrays
-on Intel x86 targets
-regardless of whether @samp{-malign-double} is specified.
-
-Generally, this affects only local variables and arrays
-having the @code{SAVE} attribute
-or given initial values via @code{DATA}.
-@end itemize
-
-@c 1998-09-01: egcs-1.1 released.
-@heading In @code{egcs} 1.1 (versus @code{egcs} 1.0.3):
-@itemize @bullet
-@ifclear USERVISONLY
-@item
-Fix bugs in the @code{libU77} intrinsic @samp{HostNm}
-that wrote one byte beyond the end of its @samp{CHARACTER}
+Fix bugs in the @code{libU77} intrinsic @code{HostNm}
+that wrote one byte beyond the end of its @code{CHARACTER}
 argument,
 and in the @code{libU77} intrinsics
-@samp{GMTime} and @samp{LTime}
+@code{GMTime} and @code{LTime}
 that overwrote their arguments.
 @end ifclear
 
@@ -385,7 +568,7 @@ compile-time constant @code{INTEGER} expression.
 
 @item
 Fix @code{g77} @samp{-g} option so procedures that
-use @samp{ENTRY} can be stepped through, line by line,
+use @code{ENTRY} can be stepped through, line by line,
 in @code{gdb}.
 
 @item
@@ -503,25 +686,48 @@ Improve documentation and indexing.
 @item
 The upgrade to @code{libf2c} as of 1998-06-18
 should fix a variety of problems, including
-those involving some uses of the @samp{T} format
+those involving some uses of the @code{T} format
 specifier, and perhaps some build (porting) problems
 as well.
 @end ifclear
 @end itemize
 
-@heading In 0.5.24 and @code{egcs} 1.1 (versus 0.5.23):
+@c 1998-09-03: EGCS 1.1 released.
+@heading In @code{EGCS} 1.1 versus @code{g77} 0.5.23:
 @itemize @bullet
 @ifclear USERVISONLY
+@cindex DNRM2
+@cindex stack, 387 coprocessor
+@cindex Intel x86
+@cindex -O2
+@item
+Fix a code-generation bug that afflicted
+Intel x86 targets when @samp{-O2} was specified
+compiling, for example, an old version of
+the @code{DNRM2} routine.
+
+The x87 coprocessor stack was being
+mismanaged in cases involving assigned @code{GOTO}
+and @code{ASSIGN}.
+@end ifclear
+
+@ifclear USERVISONLY
 @item
 @code{g77} no longer produces incorrect code
 and initial values
-for @samp{EQUIVALENCE} and @samp{COMMON}
+for @code{EQUIVALENCE} and @code{COMMON}
 aggregates that, due to ``unnatural'' ordering of members
 vis-a-vis their types, require initial padding.
 @end ifclear
 
 @ifclear USERVISONLY
 @item
+Fix @code{g77} crash compiling code
+containing the construct @samp{CMPLX(0.)} or similar.
+@end ifclear
+
+@ifclear USERVISONLY
+@item
 @code{g77} no longer crashes when compiling code
 containing specification statements such as
 @samp{INTEGER(KIND=7) PTR}.
@@ -546,6 +752,27 @@ Previously, @code{g77} treated these expressions
 as denoting special ``pointer'' arguments
 for the purposes of filewide analysis.
 
+@ifclear USERVISONLY
+@item
+Fix @code{g77} crash
+(or apparently infinite run-time)
+when compiling certain complicated expressions
+involving @code{COMPLEX} arithmetic
+(especially multiplication).
+@end ifclear
+
+@cindex alignment
+@cindex double-precision performance
+@cindex -malign-double
+@item
+Align static double-precision variables and arrays
+on Intel x86 targets
+regardless of whether @samp{-malign-double} is specified.
+
+Generally, this affects only local variables and arrays
+having the @code{SAVE} attribute
+or given initial values via @code{DATA}.
+
 @item
 The @code{g77} driver now ensures that @samp{-lg2c}
 is specified in the link phase prior to any
@@ -562,20 +789,20 @@ in @code{libf2c} (@code{libg2c}).
 This new information allows, for example,
 @kbd{which __g77_length_a} to be used in @code{gdb}
 to determine the type of the phantom length argument
-supplied with @samp{CHARACTER} variables.
+supplied with @code{CHARACTER} variables.
 
 This information pertains to internally-generated
 type, variable, and other information,
 not to the longstanding deficiencies vis-a-vis
-@samp{COMMON} and @samp{EQUIVALENCE}.
+@code{COMMON} and @code{EQUIVALENCE}.
 
 @item
-The F90 @samp{Date_and_Time} intrinsic now is
+The F90 @code{Date_and_Time} intrinsic now is
 supported.
 
 @item
-The F90 @samp{System_Clock} intrinsic allows
-the optional arguments (except for the @samp{Count}
+The F90 @code{System_Clock} intrinsic allows
+the optional arguments (except for the @code{Count}
 argument) to be omitted.
 
 @ifclear USERVISONLY
@@ -603,7 +830,7 @@ for such information.
 
 @ifclear DOC-NEWS
 @c 1998-05-20: 0.5.23 released.
-@heading In 0.5.23 (versus 0.5.22):
+@heading In 0.5.23 versus 0.5.22:
 @itemize @bullet
 @item
 This release contains several regressions against
@@ -617,7 +844,7 @@ of @code{g77} due to their being implemented
 via @code{g77}-specific patches to the @code{gcc}
 back end in previous releases include:
 
-@itemize --
+@itemize @minus
 @item
 Support for @code{__restrict__} keyword,
 the options @samp{-fargument-alias}, @samp{-fargument-noalias},
@@ -659,11 +886,11 @@ including patches for the @code{gcc} back end.
 
 @ifclear USERVISONLY
 @item
-Fix bugs in the @code{libU77} intrinsic @samp{HostNm}
-that wrote one byte beyond the end of its @samp{CHARACTER}
+Fix bugs in the @code{libU77} intrinsic @code{HostNm}
+that wrote one byte beyond the end of its @code{CHARACTER}
 argument,
 and in the @code{libU77} intrinsics
-@samp{GMTime} and @samp{LTime}
+@code{GMTime} and @code{LTime}
 that overwrote their arguments.
 @end ifclear
 
@@ -800,14 +1027,14 @@ Improve documentation and indexing.
 Upgrade to @code{libf2c} as of 1998-04-20.
 
 This should fix a variety of problems, including
-those involving some uses of the @samp{T} format
+those involving some uses of the @code{T} format
 specifier, and perhaps some build (porting) problems
 as well.
 @end ifclear
 @end itemize
 
 @c 1998-03-16: 0.5.22 released.
-@heading In 0.5.22 (versus 0.5.21):
+@heading In 0.5.22 versus 0.5.21:
 @itemize @bullet
 @ifclear USERVISONLY
 @item
@@ -826,7 +1053,7 @@ For example, @samp{DO 10 J=2,J} now is compiled correctly.
 Fix a code-generation bug that afflicted
 Intel x86 targets when @samp{-O2} was specified
 compiling, for example, an old version of
-the @samp{DNRM2} routine.
+the @code{DNRM2} routine.
 
 The x87 coprocessor stack was being
 mismanaged in cases involving assigned @code{GOTO}
@@ -856,7 +1083,7 @@ Fix @code{g77} version of @code{libf2c} so it no longer
 produces a spurious @samp{I/O recursion} diagnostic at run time
 when an I/O operation (such as @samp{READ *,I}) is interrupted
 in a manner that causes the program to be terminated
-via the @samp{f_exit} routine (such as via @kbd{C-c}).
+via the @code{f_exit} routine (such as via @kbd{C-c}).
 @end ifclear
 
 @ifclear USERVISONLY
@@ -898,7 +1125,7 @@ compile-time constant @code{INTEGER} expression.
 
 @item
 Fix @code{g77} @samp{-g} option so procedures that
-use @samp{ENTRY} can be stepped through, line by line,
+use @code{ENTRY} can be stepped through, line by line,
 in @code{gdb}.
 
 @ifclear USERVISONLY
@@ -997,8 +1224,8 @@ This fixes a formatted-I/O bug that afflicted
 @end ifclear
 @end itemize
 
-@c 1998-03-15: egcs-1.0.2 released.
-@heading In @code{egcs} 1.0.2 (versus @code{egcs} 1.0.1):
+@c 1998-03-18: EGCS 1.0.2 released.
+@heading In @code{EGCS} 1.0.2 versus @code{EGCS} 1.0.1:
 @itemize @bullet
 @ifclear USERVISONLY
 @item
@@ -1043,8 +1270,8 @@ Fix compiler so it accepts @samp{-fgnu-intrinsics-*} and
 @samp{-fbadu77-intrinsics-*} options.
 @end itemize
 
-@c 1998-01-02: egcs-1.0.1 released.
-@heading In @code{egcs} 1.0.1 (versus @code{egcs} 1.0):
+@c 1998-01-06: EGCS 1.0.1 released.
+@heading In @code{EGCS} 1.0.1 versus @code{EGCS} 1.0:
 @ifclear USERVISONLY
 @itemize @bullet
 @item
@@ -1053,8 +1280,8 @@ machines such as Alphas.
 @end itemize
 @end ifclear
 
-@c 1997-12-03: egcs-1.0 released.
-@heading In @code{egcs} 1.0 (versus 0.5.21):
+@c 1997-12-03: EGCS 1.0 released.
+@heading In @code{EGCS} 1.0 versus @code{g77} 0.5.21:
 @itemize @bullet
 @item
 Version 1.0 of @code{egcs}
@@ -1070,7 +1297,7 @@ of @code{g77} due to their being implemented
 via @code{g77}-specific patches to the @code{gcc}
 back end in previous releases include:
 
-@itemize --
+@itemize @minus
 @item
 Support for the C-language @code{restrict} keyword.
 
@@ -1233,8 +1460,8 @@ or assigned-@code{GOTO} statement.
 @ifclear USERVISONLY
 @item
 Fix compiler crashes due to using the name of a some
-non-standard intrinsics (such as @samp{FTELL} or
-@samp{FPUTC}) as such and as the name of a procedure
+non-standard intrinsics (such as @code{FTell} or
+@code{FPutC}) as such and as the name of a procedure
 or common block.
 Such dual use of a name in a program is allowed by
 the standard.
@@ -1251,19 +1478,19 @@ the standard.
 @c 
 @c For example, the intrinsic @code{FPUTC} previously was
 @c implemented by @code{g77} as a call to the @code{libf2c}
-@c routine @samp{fputc_}.
+@c routine @code{fputc_}.
 @c This would conflict with a Fortran procedure named @code{FPUTC}
 @c (using default compiler options), and this conflict
 @c would cause a crash under certain circumstances.
 @c 
-@c Now, the intrinsic @code{FPUTC} calls @samp{G77_fputc_0},
-@c which does not conflict with the @samp{fputc_} external
+@c Now, the intrinsic @code{FPUTC} calls @code{G77_fputc_0},
+@c which does not conflict with the @code{fputc_} external
 @c that implements a Fortran procedure named @code{FPUTC}.
 @c 
 @c Programs that refer to @code{FPUTC} as an external procedure
 @c without supplying their own implementation will link to
-@c the new @code{libf2c} routine @samp{fputc_}, which is
-@c simply a jacket routine that calls @samp{G77_fputc_0}.
+@c the new @code{libf2c} routine @code{fputc_}, which is
+@c simply a jacket routine that calls @code{G77_fputc_0}.
 
 @ifclear USERVISONLY
 @item
@@ -1370,7 +1597,7 @@ that have embedded blanks, commas, and so on.
 
 @item
 Fix @code{SIGNAL} intrinsic so it accepts an
-optional third @samp{Status} argument.
+optional third @code{Status} argument.
 
 @ifclear USERVISONLY
 @item
@@ -1478,7 +1705,7 @@ Support @samp{*f771} entry in @code{gcc} @file{specs} file.
 
 @ifclear USERVISONLY
 @item
-Fix typo in @code{make} rule @samp{g77-cross}, used only for
+Fix typo in @code{make} rule @code{g77-cross}, used only for
 cross-compiling.
 @end ifclear
 
@@ -1600,12 +1827,12 @@ statements specifying that these names are not intended
 to be names of intrinsics.
 
 @item
-The @samp{ALWAYS_FLUSH} macro is no longer defined when
+The @code{ALWAYS_FLUSH} macro is no longer defined when
 building @code{libf2c}, which should result in improved
 I/O performance, especially over NFS.
 
 @emph{Note:} If you have code that depends on the behavior
-of @code{libf2c} when built with @samp{ALWAYS_FLUSH} defined,
+of @code{libf2c} when built with @code{ALWAYS_FLUSH} defined,
 you will have to modify @code{libf2c} accordingly before
 building it from this and future versions of @code{g77}.
 
@@ -1860,10 +2087,10 @@ These are @code{REALPART}, @code{IMAGPART},
 @code{LONG}, and @code{SHORT}.
 
 @item
-A new group of intrinsics, @samp{gnu}, has been added
+A new group of intrinsics, @code{gnu}, has been added
 to contain the new @code{REALPART}, @code{IMAGPART},
 and @code{COMPLEX} intrinsics.
-An old group, @samp{dcp}, has been removed.
+An old group, @code{dcp}, has been removed.
 
 @item
 Complain about industry-wide ambiguous references
@@ -1891,8 +2118,8 @@ a new chapter containing information on one, later
 more, diagnostics that users are directed to pull
 up automatically via a message in the diagnostic itself.
 
-(Hence the menu item @samp{M} for the node
-@samp{Diagnostics} in the top-level menu of
+(Hence the menu item @code{M} for the node
+@code{Diagnostics} in the top-level menu of
 the Info documentation.)
 @end ifclear
 @end itemize
@@ -1902,7 +2129,7 @@ the Info documentation.)
 
 Information on previous versions is archived
 in @file{@value{path-g77}/news.texi}
-following the test of the @samp{DOC-OLDNEWS} macro.
+following the test of the @code{DOC-OLDNEWS} macro.
 @end ifclear
 
 @ifset DOC-OLDNEWS
@@ -1917,14 +2144,14 @@ These bugs occurred when assigning the result of an
 operation to a complex variable (or array element)
 that also served as an input to that operation.
 
-The operations affected by this bug were: @samp{CONJG()},
-@samp{DCONJG()}, @samp{CCOS()}, @samp{CDCOS()},
-@samp{CLOG()}, @samp{CDLOG()}, @samp{CSIN()}, @samp{CDSIN()},
-@samp{CSQRT()}, @samp{CDSQRT()}, complex division, and
+The operations affected by this bug were: @code{CONJG()},
+@code{DCONJG()}, @code{CCOS()}, @code{CDCOS()},
+@code{CLOG()}, @code{CDLOG()}, @code{CSIN()}, @code{CDSIN()},
+@code{CSQRT()}, @code{CDSQRT()}, complex division, and
 raising a @code{DOUBLE COMPLEX} operand to an @code{INTEGER}
 power.
 (The related generic and @samp{Z}-prefixed intrinsics,
-such as @samp{ZSIN()}, also were affected.)
+such as @code{ZSIN()}, also were affected.)
 
 For example, @samp{C = CSQRT(C)}, @samp{Z = Z/C}, and @samp{Z = Z**I}
 (where @samp{C} is @code{COMPLEX} and @samp{Z} is
@@ -1936,7 +2163,7 @@ For example, @samp{C = CSQRT(C)}, @samp{Z = Z/C}, and @samp{Z = Z**I}
 @itemize @bullet
 @item
 Fix @code{FORMAT} statement parsing so negative values for
-specifiers such as @samp{P} (e.g. @samp{FORMAT(-1PF8.1)})
+specifiers such as @code{P} (e.g. @samp{FORMAT(-1PF8.1)})
 are correctly processed as negative.
 
 @item
@@ -2020,7 +2247,7 @@ procedures in @code{libf2c}.
 @item
 Modify @code{fseek_()} in @code{libf2c} to be more portable
 (though, in practice, there might be no systems where this
-matters) and to catch invalid @samp{whence} arguments.
+matters) and to catch invalid @code{whence} arguments.
 
 @item
 Some useless warnings from the @samp{-Wunused} option have
@@ -2032,7 +2259,7 @@ on AIX systems by linking with the @samp{-bbigtoc} option.
 
 @item
 Abort configuration if @code{gcc} has not been patched
-using the patch file provided in the @samp{gcc/f/gbe/}
+using the patch file provided in the @file{gcc/f/gbe/}
 subdirectory.
 
 @item
@@ -2244,7 +2471,7 @@ maintainer's new address is @email{dmg@@bell-labs.com}.
 @itemize @bullet
 @item
 @strong{Fix serious bug} in @samp{g77 -v} command that can cause removal of a
-system's @file{/dev/null} special file if run by user @samp{root}.
+system's @file{/dev/null} special file if run by user @code{root}.
 
 @strong{All users} of version 0.5.16 should ensure that
 they have not removed @file{/dev/null} or replaced it with an ordinary
@@ -2283,7 +2510,7 @@ never happen).
 
 @item
 Make @code{libf2c} build procedures work on more systems again by
-eliminating unnecessary invocations of @samp{ld -r -x} and @samp{mv}.
+eliminating unnecessary invocations of @samp{ld -r -x} and @code{mv}.
 
 @item
 Fix omission of @samp{-funix-intrinsics-@dots{}} options in list of permitted
@@ -2362,7 +2589,7 @@ This is known to fix code invoking @code{ERF()}, @code{ERFC()},
 
 @item
 Update @code{libf2c} to include netlib patches through 1995-08-16, and
-@code{#define} @samp{WANT_LEAD_0} to 1 to make @code{g77}-compiled code more
+@code{#define} @code{WANT_LEAD_0} to 1 to make @code{g77}-compiled code more
 consistent with other Fortran implementations by outputting
 leading zeros in formatted and list-directed output.
 
@@ -2444,12 +2671,12 @@ and @code{SYSTEM}, append a final argument specifying an @code{INTEGER}
 variable or array element (e.g. @samp{CALL SYSTEM('rm foo',ISTAT)}).
 
 @item
-Add new intrinsic group named @samp{unix} to contain the new intrinsics,
+Add new intrinsic group named @code{unix} to contain the new intrinsics,
 and by default enable this new group.
 
 @item
-Move @code{LOC()} intrinsic out of the @samp{vxt} group to the new
-@samp{unix} group.
+Move @code{LOC()} intrinsic out of the @code{vxt} group to the new
+@code{unix} group.
 
 @item
 Improve @code{g77} so that @samp{g77 -v} by itself (or with
@@ -2706,7 +2933,7 @@ Allow @code{RETURN} in main program unit.
 Changes to Hollerith-constant support to obey Appendix C of the
 standard:
 
-@itemize --
+@itemize @minus
 @item
 Now padded on the right with zeros, not spaces.
 
@@ -2734,7 +2961,7 @@ to widen to @code{INTEGER}), essentially.
 @item
 Changes and fixes to typeless-constant support:
 
-@itemize --
+@itemize @minus
 @item
 Now treated as a typeless double-length @code{INTEGER} value.