diff options
author | Jeff Law <law@gcc.gnu.org> | 1998-03-22 02:42:52 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1998-03-22 02:42:52 -0700 |
commit | a05afbe3ce425587f38261f523dc94c54bd82174 (patch) | |
tree | 636575da8f6b5f9f238d4fa2e95879c5b7824e36 /gcc | |
parent | 8ca77a11ca111fc3927a24b871e6b1c7cfa31dfa (diff) | |
download | gcc-a05afbe3ce425587f38261f523dc94c54bd82174.zip gcc-a05afbe3ce425587f38261f523dc94c54bd82174.tar.gz gcc-a05afbe3ce425587f38261f523dc94c54bd82174.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/f/BUGS | 50 | ||||
-rw-r--r-- | gcc/f/NEWS | 124 | ||||
-rw-r--r-- | gcc/f/g77.1 | 14 |
3 files changed, 128 insertions, 60 deletions
@@ -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. @@ -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: ========== diff --git a/gcc/f/g77.1 b/gcc/f/g77.1 index fdb83a6..479e300 100644 --- a/gcc/f/g77.1 +++ b/gcc/f/g77.1 @@ -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 |