This commit was generated by cvs2svn to compensate for changes in r18750,

which included commits to RCS files with non-trunk default branches.

From-SVN: r18751
This commit is contained in:
Jeff Law 1998-03-22 02:42:52 -07:00
parent 8ca77a11ca
commit a05afbe3ce
3 changed files with 128 additions and 60 deletions

View File

@ -25,27 +25,6 @@ port, build, and install `g77', *Note Problems Installing::.
Until this bug is fixed, use only `-O1' or no optimization.
* A code-generation bug afflicts Intel x86 targets when `-O2' is
specified compiling, for example, an old version of the `DNRM2'
routine. The x87 coprocessor stack is being somewhat mismanaged
in cases where assigned `GOTO' and `ASSIGN' are involved.
Version 0.5.21 of `g77' contains an initial effort to fix the
problem, but this effort is incomplete, and a more complete fix is
planned for the next release.
* Work is needed on the `SIGNAL()' intrinsic to ensure that pointers
and integers are properly handled on all targets, including 64-bit
machines.
* When using `-fugly-comma', `g77' assumes an extra `%VAL(0)'
argument is to be passed to intrinsics taking no arguments, such
as `IARGC()', which in turn reject such a call. Although this has
been worked around for 0.5.18 due to changes in the handling of
intrinsics, `g77' needs to do the ugly-argument-appending trick
only for external-function invocation, as this would probably be
more consistent with compilers that default to using that trick.
* Something about `g77''s straightforward handling of label
references and definitions sometimes prevents the GBE from
unrolling loops. Until this is solved, try inserting or removing
@ -151,30 +130,6 @@ port, build, and install `g77', *Note Problems Installing::.
potential, with the current setup, for interface differences in
the way such areas are laid out between `g77' and other compilers.
* Some crashes occur when compiling under Solaris on x86 machines.
Nothing has been heard about any such problems for some time, so
this is considering a closed item as of 0.5.20. Please submit any
bug reports pertinent to `g77''s support for Solaris/x86 systems.
* RS/6000 support is not complete as of the gcc 2.6.3 back end. The
2.7.0 back end appears to fix this problem, or at least mitigate
it significantly, but there is at least one known problem that is
likely to be a code-generation bug in `gcc-2.7.0' plus
`g77-0.5.16'. This problem shows up only when compiling the
Fortran program with `-O'.
Nothing has been heard about any RS/6000 problems for some time,
so this is considering a closed item as of 0.5.20. Please submit
any bug reports pertinent to `g77''s support for RS/6000 systems.
* SGI support is known to be a bit buggy. The known problem shows
up only when compiling the Fortran program with `-O'.
It is possible these problems have all been fixed in 0.5.20 by
emulating complex arithmetic in the front end. Please submit any
bug reports pertinent to `g77''s support for SGI systems.
* `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
@ -210,8 +165,7 @@ port, build, and install `g77', *Note Problems Installing::.
general expressions (other than simple variables/arrays), to
procedures when compiling on some systems (such as i386) with
`-fPIC', as in when compiling for ELF targets. The symptom is
that the assembler complains about invalid opcodes. More
investigation is needed, but the problem is almost certainly in
the gcc back end, and it apparently occurs only when compiling
that the assembler complains about invalid opcodes. This bug is
in the gcc back end, and it apparently occurs only when compiling
sufficiently complicated functions *without* the `-O' option.

View File

@ -9,11 +9,125 @@ News About GNU Fortran
Changes made to recent versions of GNU Fortran are listed below,
with the most recent version first.
The changes are generally listed with code-generation bugs first,
followed by compiler crashes involving valid code, new features, fixes
to existing features, new diagnostics, internal improvements, and
miscellany. This order is not strict--for example, some items involve
a combination of these elements.
The changes are generally listed in order:
1. Code-generation and run-time-library bugs
2. Compiler and run-time-library crashes involving valid code
3. New features
4. Fixes and enhancements to existing features
5. New diagnostics
6. Internal improvements
7. Miscellany
This order is not strict--for example, some items involve a
combination of these elements.
In 0.5.22:
==========
* Fix code generation for iterative `DO' loops that have one or more
references to the iteration variable, or to aliases of it, in
their control expressions. For example, `DO 10 J=2,J' now is
compiled correctly.
* Fix a code-generation bug that afflicted Intel x86 targets when
`-O2' was specified compiling, for example, an old version of the
`DNRM2' routine.
The x87 coprocessor stack was being mismanaged in cases involving
assigned `GOTO' and `ASSIGN'.
* Fix `DTime' intrinsic so as not to truncate results to integer
values (on some systems).
* Fix `SIGNAL' intrinsic so it offers portable support for 64-bit
systems (such as Digital Alphas running GNU/Linux).
* Fix run-time crash involving `NAMELIST' on 64-bit machines such as
Alphas.
* Fix `g77' version of `libf2c' so it no longer produces a spurious
`I/O recursion' diagnostic at run time when an I/O operation (such
as `READ *,I') is interrupted in a manner that causes the program
to be terminated via the `f_exit' routine (such as via `C-c').
* Fix `g77' crash triggered by `CASE' statement with an omitted
lower or upper bound.
* Fix `g77' crash compiling references to `CPU_Time' intrinsic.
* Fix `g77' crash (or apparently infinite run-time) when compiling
certain complicated expressions involving `COMPLEX' arithmetic
(especially multiplication).
* Fix `g77' crash on statements such as `PRINT *,
(REAL(Z(I)),I=1,2)', where `Z' is `DOUBLE COMPLEX'.
* Fix a `g++' crash.
* Support `FORMAT(I<EXPR>)' when EXPR is a compile-time constant
`INTEGER' expression.
* Fix `g77' `-g' option so procedures that use `ENTRY' can be
stepped through, line by line, in `gdb'.
* Fix a profiling-related bug in `gcc' back end for Intel x86
architecture.
* Allow any `REAL' argument to intrinsics `Second' and `CPU_Time'.
* Allow any numeric argument to intrinsics `Int2' and `Int8'.
* Use `tempnam', if available, to open scratch files (as in
`OPEN(STATUS='SCRATCH')' so that the `TMPDIR' environment variable,
if present, is used.
* Rename the `gcc' keyword `restrict' to `__restrict__', to avoid
rejecting valid, existing, C programs. Support for `restrict' is
now more like support for `complex'.
* Fix `-fpedantic' to not reject procedure invocations such as
`I=J()' and `CALL FOO()'.
* Fix `-fugly-comma' to affect invocations of only external
procedures. Restore rejection of gratuitous trailing omitted
arguments to intrinsics, as in `I=MAX(3,4,,)'.
* Fix compiler so it accepts `-fgnu-intrinsics-*' and
`-fbadu77-intrinsics-*' options.
* Improve diagnostic messages from `libf2c' so it is more likely
that the printing of the active format string is limited to the
string, with no trailing garbage being printed.
(Unlike `f2c', `g77' did not append a null byte to its compiled
form of every format string specified via a `FORMAT' statement.
However, `f2c' would exhibit the problem anyway for a statement
like `PRINT '(I)garbage', 1' by printing `(I)garbage' as the
format string.)
* Improve compilation of FORMAT expressions so that a null byte is
appended to the last operand if it is a constant. This provides a
cleaner run-time diagnostic as provided by `libf2c' for statements
like `PRINT '(I1', 42'.
* Fix various crashes involving code with diagnosed errors.
* Fix cross-compilation bug when configuring `libf2c'.
* Improve diagnostics.
* Improve documentation and indexing.
* Upgrade to `libf2c' as of 1997-09-23. This fixes a formatted-I/O
bug that afflicted 64-bit systems with 32-bit integers (such as
Digital Alpha running GNU/Linux).
In 0.5.21:
==========

View File

@ -1,20 +1,20 @@
.\" Copyright (c) 1995-1997 Free Software Foundation -*-Text-*-
.\" See section COPYING for conditions for redistribution
.\" FIXME: no info here on predefines. Should there be? extra for F77...
.TH G77 1 "1997-09-09" "GNU Tools" "GNU Tools"
.TH G77 1 "1998-03-08" "GNU Tools" "GNU Tools"
.de BP
.sp
.ti \-.2i
\(**
..
.SH NAME
g77 \- GNU project Fortran Compiler (v0.5.21)
g77 \- GNU project Fortran Compiler (v0.5.22)
.SH SYNOPSIS
.RB g77 " [" \c
.IR option " | " "filename " ].\|.\|.
.SH WARNING
The information in this man page is an extract from the full
documentation of the GNU Fortran compiler (version 0.5.21),
documentation of the GNU Fortran compiler (version 0.5.22),
and is limited to the meaning of some of the options.
.PP
This man page is not up to date, since no volunteers want to
@ -22,8 +22,8 @@ maintain it. If you find a discrepancy between the man page and the
software, please check the Info file, which is the authoritative
documentation.
.\" .PP
.\" The version of GNU Fortran documented by the Info file is 0.5.21,
.\" which includes substantial improvements and changes since 0.5.21,
.\" The version of GNU Fortran documented by the Info file is 0.5.22,
.\" which includes substantial improvements and changes since 0.5.22,
.\" the version documented in this man page.
.PP
If we find that the things in this man page that are out of date cause
@ -37,7 +37,7 @@ For complete and current documentation, refer to the Info file `\|\c
.B g77\c
\&\|' or the manual
.I
Using and Porting GNU Fortran (for version 0.5.21)\c
Using and Porting GNU Fortran (for version 0.5.22)\c
\&. Both are made from the Texinfo source file
.BR g77.texi .
.PP
@ -333,7 +333,7 @@ entries in
\&.
.br
.I
Using and Porting GNU Fortran (for version 0.5.21)\c
Using and Porting GNU Fortran (for version 0.5.22)\c
, James Craig Burley;
.I
Using and Porting GNU CC (for version 2.0)\c