OSDN Git Service

JCB updates.
authorfx <fx@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 19 May 1998 10:29:42 +0000 (10:29 +0000)
committerfx <fx@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 19 May 1998 10:29:42 +0000 (10:29 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@19874 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/f/bugs.texi
gcc/f/g77.texi
gcc/f/news.texi

index d6370f9..b606eb0 100644 (file)
@@ -5,7 +5,7 @@
 @c The text of this file appears in the file BUGS
 @c in the G77 distribution, as well as in the G77 manual.
 
-@c 1998-03-17
+@c 1998-05-17
 
 @ifclear BUGSONLY
 @node Actual Bugs
@@ -35,12 +35,6 @@ form instead, and so on.
 (Probably improved, but not wholly fixed, in 0.5.21.)
 
 @item
-The @code{g77} command itself should more faithfully process
-options the way the @code{gcc} command does.
-For example, @code{gcc} accepts abbreviated forms of long options,
-@code{g77} generally doesn't.
-
-@item
 Some confusion in diagnostics concerning failing @code{INCLUDE}
 statements from within @code{INCLUDE}'d or @code{#include}'d files.
 
@@ -171,30 +165,6 @@ is the potential, with the current setup, for interface differences
 in the way such areas are laid out between @code{g77} and other
 compilers.
 
-@cindex Alpha, support
-@cindex support, Alpha
-@item
-@code{g77} doesn't work perfectly on 64-bit configurations such as the Alpha.
-This problem is expected to be largely resolved as of version 0.5.20,
-and further addressed by 0.5.21.
-Version 0.6 should solve most or all related problems (such as
-64-bit machines other than Digital Semiconductor (``DEC'') Alphas).
-
-One known bug that causes a compile-time crash occurs when compiling
-code such as the following with optimization:
-
-@example
-SUBROUTINE CRASH (TEMP)
-INTEGER*2 HALF(2)
-REAL TEMP
-HALF(1) = NINT (TEMP)
-END
-@end example
-
-It is expected that a future version of @code{g77} will have a fix for this
-problem, almost certainly by the time @code{g77} supports
-version 2.8 of @code{gcc}.
-
 @cindex COMPLEX support
 @cindex support, COMPLEX
 @item
index bd38ae3..e5cdd67 100644 (file)
@@ -11,6 +11,9 @@
 }
 @end tex
 
+@set last-up-date 1998-04-20
+@set version-g77 0.5.23
+
 @c %**start of header 
 @setfilename g77.info
 @c @setfilename useg77.info
@@ -102,16 +105,16 @@ was contributed to Craig by David Ronis (@email{ronis@@onsager.chem.mcgill.ca}).
 @sp 2
 @center James Craig Burley
 @sp 3
-@center Last updated 1998-04-18
+@center Last updated @value{last-up-date}
 @sp 1
 @c The version number appears some more times in this file.
 
-@center for version 0.5.21
+@center for version @value{version-g77}
 @page
 @vskip 0pt plus 1filll
 Copyright @copyright{} 1995-1997 Free Software Foundation, Inc.
 @sp 2
-For GNU Fortran Version 0.5.21*
+For GNU Fortran Version @value{version-g77}*
 @sp 1
 Published by the Free Software Foundation @*
 59 Temple Place - Suite 330@*
@@ -156,19 +159,19 @@ original English.
 @ifset USING
 This manual documents how to run, install and port the GNU Fortran
 compiler, as well as its new features and incompatibilities, and how to
-report bugs.  It corresponds to GNU Fortran version 0.5.21.
+report bugs.  It corresponds to GNU Fortran version @value{version-g77}.
 @end ifset
 @end ifset
 
 @ifclear INTERNALS
 This manual documents how to run and install the GNU Fortran compiler,
 as well as its new features and incompatibilities, and how to report
-bugs.  It corresponds to GNU Fortran version 0.5.21.
+bugs.  It corresponds to GNU Fortran version @value{version-g77}.
 @end ifclear
 @ifclear USING
 This manual documents how to port the GNU Fortran compiler,
 as well as its new features and incompatibilities, and how to report
-bugs.  It corresponds to GNU Fortran version 0.5.21.
+bugs.  It corresponds to GNU Fortran version @value{version-g77}.
 @end ifclear
 
 @end ifinfo
@@ -3289,6 +3292,121 @@ or, if you cannot do that, email
 @email{fortran@@gnu.org} asking for a recent copy of the
 GNU Fortran @file{.plan} file.
 
+@heading In 0.5.23:
+@itemize @bullet
+@item
+This release contains several regressions against
+version 0.5.22 of @code{g77}, due to using the
+``vanilla'' @code{gcc} back end instead of patching
+it to fix a few bugs and improve performance in a
+few cases.
+
+@xref{Actual Bugs,,Actual Bugs We Haven't Fixed Yet},
+available in plain-text format in @code{gcc/f/BUGS},
+for information on the known bugs in this version,
+including the regressions.
+
+Features that have been dropped from this version
+of @code{g77} due to their being implemented
+via @code{g77}-specific patches to the @code{gcc}
+back end in previous releases include:
+
+@itemize --
+@item
+Support for @code{__restrict__} keyword,
+the options @samp{-fargument-alias}, @samp{-fargument-noalias},
+and @samp{-fargument-noalias-global},
+and the corresponding alias-analysis code.
+
+(Version 1.0.1 of @code{egcs} has the alias-analysis
+code, but not the @code{__restrict__} keyword.
+@code{g77} users benefit from the alias-analysis
+code despite the lack of the @code{__restrict__} keyword,
+which is a C-language construct.)
+
+@item
+Support for the GNU compiler options
+@samp{-fmove-all-movables},
+@samp{-freduce-all-givs},
+and @samp{-frerun-loop-opt}.
+
+(Version 1.0.1 of @code{egcs} supports these options.
+@code{g77} users of @code{egcs} benefit from them even if
+they are not explicitly specified,
+because the defaults are optimized for @code{g77} users.)
+
+@item
+Support for the @samp{-W} option warning about
+integer division by zero.
+@end itemize
+
+@item
+Support @code{gcc} version 2.8,
+and remove support for prior versions of @code{gcc}.
+
+@cindex -@w{}-driver option
+@cindex g77 options, -@w{}-driver
+@cindex options, -@w{}-driver
+@item
+Remove support for the @samp{--driver} option,
+as @code{g77} now does all the driving,
+just like @code{gcc}.
+
+@item
+The @code{g77} command now expects the run-time library
+to be named @code{libg2c.a} instead of @code{libf2c.a},
+to ensure that a version other than the one built and
+installed as part of the same @code{g77} version is picked up.
+@end itemize
+
+@heading In 0.5.22:
+@itemize @bullet
+@item
+Fix @code{SIGNAL} intrinsic so it offers portable
+support for 64-bit systems (such as Digital Alphas
+running GNU/Linux).
+
+@item
+Support @samp{FORMAT(I<@var{expr}>)} when @var{expr} is a
+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,
+in @code{gdb}.
+
+@item
+Allow any @code{REAL} argument to intrinsics
+@code{Second} and @code{CPU_Time}.
+
+@item
+Allow any numeric argument to intrinsics
+@code{Int2} and @code{Int8}.
+
+@item
+Use @code{tempnam}, if available, to open scratch files
+(as in @samp{OPEN(STATUS='SCRATCH')}
+so that the @code{TMPDIR} environment variable,
+if present, is used.
+
+@item
+Rename the @code{gcc} keyword @code{restrict} to
+@code{__restrict__}, to avoid rejecting valid, existing,
+C programs.
+Support for @code{restrict} is now more like support
+for @code{complex}.
+
+@item
+Fix @samp{-fugly-comma} to affect invocations of
+only external procedures.
+Restore rejection of gratuitous trailing omitted
+arguments to intrinsics, as in @samp{I=MAX(3,4,,)}.
+
+@item
+Fix compiler so it accepts @samp{-fgnu-intrinsics-*} and
+@samp{-fbadu77-intrinsics-*} options.
+@end itemize
+
 @heading In 0.5.21:
 @itemize @bullet
 @item
@@ -9205,6 +9323,9 @@ savings of resources, such as on systems where @file{/dev/null} or
 @file{/dev/zero} represent bottlenecks in the systems' performance,
 because @code{g77} simply asks for fewer zeros from the operating
 system than @code{f2c}.
+(Avoiding spurious use of zero bytes, each byte typically have
+eight zero bits, also reduces the liabilities in case
+Microsoft's rumored patent on the digits 0 and 1 is upheld.)
 
 @node Block Data and Libraries
 @section Block Data and Libraries
@@ -12139,22 +12260,6 @@ Please consider offering useful answers to these questions!
 
 @itemize @bullet
 @item
-How do system administrators and users manage multiple incompatible
-Fortran compilers on their systems?
-How can @code{g77} contribute to this, or at least avoiding
-intefering with it?
-
-Currently, @code{g77} provides rudimentary ways to choose whether to
-overwrite portions of other Fortran compilation systems
-(such as the @code{f77} command and the @code{libf2c} library).
-Is this sufficient?
-What happens when users choose not to overwrite these---does
-@code{g77} work properly in all such installations, picking
-up its own versions, or does it pick up the existing ``alien''
-versions it didn't overwrite with its own, possibly leading
-to subtle bugs?
-
-@item
 @code{LOC()} and other intrinsics are probably somewhat misclassified.
 Is the a need for more precise classification of intrinsics, and if so,
 what are the appropriate groupings?
index 7c3411a..92829b5 100644 (file)
@@ -5,7 +5,7 @@
 @c The text of this file appears in the file BUGS
 @c in the G77 distribution, as well as in the G77 manual.
 
-@c 1998-03-16
+@c 1998-04-20
 
 @ifclear NEWSONLY
 @node News
@@ -21,10 +21,11 @@ The changes are generally listed in order:
 
 @enumerate
 @item
-Code-generation and run-time-library bugs
+Code-generation and run-time-library bug-fixes
 
 @item
 Compiler and run-time-library crashes involving valid code
+that have been fixed
 
 @item
 New features
@@ -53,6 +54,125 @@ Miscellany
 This order is not strict---for example, some items
 involve a combination of these elements.
 
+@heading In 0.5.23:
+@itemize @bullet
+@item
+This release contains several regressions against
+version 0.5.22 of @code{g77}, due to using the
+``vanilla'' @code{gcc} back end instead of patching
+it to fix a few bugs and improve performance in a
+few cases.
+
+@xref{Actual Bugs,,Actual Bugs We Haven't Fixed Yet},
+available in plain-text format in @code{gcc/f/BUGS},
+for information on the known bugs in this version,
+including the regressions.
+
+Features that have been dropped from this version
+of @code{g77} due to their being implemented
+via @code{g77}-specific patches to the @code{gcc}
+back end in previous releases include:
+
+@itemize --
+@item
+Support for @code{__restrict__} keyword,
+the options @samp{-fargument-alias}, @samp{-fargument-noalias},
+and @samp{-fargument-noalias-global},
+and the corresponding alias-analysis code.
+
+(Version 1.0.1 of @code{egcs} has the alias-analysis
+code, but not the @code{__restrict__} keyword.
+@code{g77} users benefit from the alias-analysis
+code despite the lack of the @code{__restrict__} keyword,
+which is a C-language construct.)
+
+@item
+Support for the GNU compiler options
+@samp{-fmove-all-movables},
+@samp{-freduce-all-givs},
+and @samp{-frerun-loop-opt}.
+
+(Version 1.0.1 of @code{egcs} supports these options.
+@code{g77} users of @code{egcs} benefit from them even if
+they are not explicitly specified,
+because the defaults are optimized for @code{g77} users.)
+
+@item
+Support for the @samp{-W} option warning about
+integer division by zero.
+@end itemize
+
+@item
+Support @code{gcc} version 2.8,
+and remove support for prior versions of @code{gcc}.
+
+@cindex -@w{}-driver option
+@cindex g77 options, -@w{}-driver
+@cindex options, -@w{}-driver
+@item
+Remove support for the @samp{--driver} option,
+as @code{g77} now does all the driving,
+just like @code{gcc}.
+
+@item
+@code{CASE DEFAULT} no longer crashes @code{g77}.
+
+@item
+@code{g77} no longer installs the @file{f77} command
+and @file{f77.1} man page
+in the @file{/usr} or @file{/usr/local} heirarchy,
+even if the @file{f77-install-ok} file exists
+in the source or build directory.
+See the installation documentation for more information.
+
+@item
+@code{g77} no longer installs the @file{libf2c.a} library
+and @file{f2c.h} include file
+in the @file{/usr} or @file{/usr/local} heirarchy,
+even if the @file{f2c-install-ok} or @file{f2c-exists-ok} files exist
+in the source or build directory.
+See the installation documentation for more information.
+
+@item
+The @file{libf2c.a} library produced by @code{g77} has been
+renamed to @file{libg2c.a}.
+It is installed only in the @code{gcc} ``private''
+directory heirarchy, @file{gcc-lib}.
+This allows system administrators and users to choose which
+version of the @code{libf2c} library from @code{netlib} they
+wish to use on a case-by-case basis.
+See the installation documentation for more information.
+
+@item
+The @file{f2c.h} include (header) file produced by @code{g77}
+has been renamed to @file{g2c.h}.
+It is installed only in the @code{gcc} ``private''
+directory heirarchy, @file{gcc-lib}.
+This allows system administrators and users to choose which
+version of the include file from @code{netlib} they
+wish to use on a case-by-case basis.
+See the installation documentation for more information.
+
+@item
+The @code{g77} command now expects the run-time library
+to be named @code{libg2c.a} instead of @code{libf2c.a},
+to ensure that a version other than the one built and
+installed as part of the same @code{g77} version is picked up.
+
+@item
+The @samp{-Wunused} option no longer issues a spurious
+warning about the ``master'' procedure generated by
+@code{g77} for procedures containing @code{ENTRY} statements.
+
+@item
+During the configuration and build process,
+@code{g77} creates subdirectories it needs only as it
+needs them, thus avoiding unnecessary creation of, for example,
+@file{stage1/f/runtime} when doing a non-bootstrap build.
+Other cleaning up of the configuration and build process
+has been performed as well.
+@end itemize
+
 @heading In 0.5.22:
 @itemize @bullet
 @item