aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDave Love <fx@gcc.gnu.org>1998-05-19 10:29:42 +0000
committerDave Love <fx@gcc.gnu.org>1998-05-19 10:29:42 +0000
commit0063c7779baddb3083802ca41dd56acf746ffa8d (patch)
treebbd7573b5f6396d6d7c8ffdf0ab6fada611ac30f /gcc
parent4a26588bface6fd25e6e15e2896b6dac2ce2153f (diff)
downloadgcc-0063c7779baddb3083802ca41dd56acf746ffa8d.zip
gcc-0063c7779baddb3083802ca41dd56acf746ffa8d.tar.gz
gcc-0063c7779baddb3083802ca41dd56acf746ffa8d.tar.bz2
JCB updates.
From-SVN: r19874
Diffstat (limited to 'gcc')
-rw-r--r--gcc/f/bugs.texi32
-rw-r--r--gcc/f/g77.texi149
-rw-r--r--gcc/f/news.texi124
3 files changed, 250 insertions, 55 deletions
diff --git a/gcc/f/bugs.texi b/gcc/f/bugs.texi
index d6370f9..b606eb0 100644
--- a/gcc/f/bugs.texi
+++ b/gcc/f/bugs.texi
@@ -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
diff --git a/gcc/f/g77.texi b/gcc/f/g77.texi
index bd38ae3..e5cdd67 100644
--- a/gcc/f/g77.texi
+++ b/gcc/f/g77.texi
@@ -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?
diff --git a/gcc/f/news.texi b/gcc/f/news.texi
index 7c3411a..92829b5 100644
--- a/gcc/f/news.texi
+++ b/gcc/f/news.texi
@@ -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