update BUGS, INSTALL, NEWS derived files
From-SVN: r26556
This commit is contained in:
parent
1a5cfb80ec
commit
10868c423d
29
gcc/f/BUGS
29
gcc/f/BUGS
|
@ -40,7 +40,7 @@ via `http://egcs.cygnus.com/onlinedocs/g77_bugs.html'. Follow the
|
||||||
port, build, and install `g77', see "Problems Installing" in
|
port, build, and install `g77', see "Problems Installing" in
|
||||||
`egcs/gcc/f/INSTALL'.
|
`egcs/gcc/f/INSTALL'.
|
||||||
|
|
||||||
The following information was last updated on 1999-04-03:
|
The following information was last updated on 1999-04-20:
|
||||||
|
|
||||||
* Automatic arrays possibly aren't working on HP-UX systems, at
|
* Automatic arrays possibly aren't working on HP-UX systems, at
|
||||||
least in HP-UX version 10.20. Writing into them apparently causes
|
least in HP-UX version 10.20. Writing into them apparently causes
|
||||||
|
@ -152,33 +152,6 @@ port, build, and install `g77', see "Problems Installing" in
|
||||||
targets, and front ends like `g77' should take advantage of this
|
targets, and front ends like `g77' should take advantage of this
|
||||||
when it becomes available.
|
when it becomes available.
|
||||||
|
|
||||||
* The x86 target's `-malign-double' option no longer reliably aligns
|
|
||||||
double-precision variables and arrays when they are placed in the
|
|
||||||
stack frame.
|
|
||||||
|
|
||||||
This can significantly reduce the performance of some applications,
|
|
||||||
even on a run-to-run basis (that is, performance measurements can
|
|
||||||
vary fairly widely depending on whether frequently used variables
|
|
||||||
are properly aligned, and that can change from one program run to
|
|
||||||
the next, even from one procedure call to the next).
|
|
||||||
|
|
||||||
Versions 0.5.22 and earlier of `g77' included a patch to `gcc'
|
|
||||||
that enabled this, but that patch has been deemed an improper
|
|
||||||
(probably buggy) one for version 2.8 of `gcc' and for `egcs'.
|
|
||||||
|
|
||||||
Note that version 1.1 of `egcs' aligns double-precision variables
|
|
||||||
and arrays when they are in static storage even if
|
|
||||||
`-malign-double' is not specified.
|
|
||||||
|
|
||||||
There is ongoing investigation into how to make `-malign-double'
|
|
||||||
work properly, also into how to make it unnecessary to get all
|
|
||||||
double-precision variables and arrays aligned when such alignment
|
|
||||||
would not violate the relevant specifications for processor and
|
|
||||||
inter-procedural interfaces.
|
|
||||||
|
|
||||||
For a suite of programs to test double-precision alignment, see
|
|
||||||
`ftp://alpha.gnu.org/gnu/g77/align/'.
|
|
||||||
|
|
||||||
* The `libf2c' routines that perform some run-time arithmetic on
|
* The `libf2c' routines that perform some run-time arithmetic on
|
||||||
`COMPLEX' operands were modified circa version 0.5.20 of `g77' to
|
`COMPLEX' operands were modified circa version 0.5.20 of `g77' to
|
||||||
work properly even in the presence of aliased operands.
|
work properly even in the presence of aliased operands.
|
||||||
|
|
73
gcc/f/NEWS
73
gcc/f/NEWS
|
@ -66,7 +66,7 @@ about previous `g77' versions up-to-date.
|
||||||
the mainline, development version of `g77' within `egcs') is available
|
the mainline, development version of `g77' within `egcs') is available
|
||||||
at `http://egcs.cygnus.com/onlinedocs/g77_news.html'.
|
at `http://egcs.cygnus.com/onlinedocs/g77_news.html'.
|
||||||
|
|
||||||
The following information was last updated on 1999-04-03:
|
The following information was last updated on 1999-04-20:
|
||||||
|
|
||||||
In `egcs' 1.2 (versus 1.1.2):
|
In `egcs' 1.2 (versus 1.1.2):
|
||||||
=============================
|
=============================
|
||||||
|
@ -82,7 +82,11 @@ In `egcs' 1.2 (versus 1.1.2):
|
||||||
where J is other than default `INTEGER' (such as `INTEGER*2').
|
where J is other than default `INTEGER' (such as `INTEGER*2').
|
||||||
Instead, it issues a diagnostic.
|
Instead, it issues a diagnostic.
|
||||||
|
|
||||||
3. The `-ax' option is now obeyed when compiling Fortran programs.
|
3. Fix `g77' so it properly handles `DATA A/RPT*VAL/', where RPT is
|
||||||
|
not default `INTEGER', such as `INTEGER*2', instead of producing a
|
||||||
|
spurious diagnostic.
|
||||||
|
|
||||||
|
4. The `-ax' option is now obeyed when compiling Fortran programs.
|
||||||
(It is passed to the `f771' driver.)
|
(It is passed to the `f771' driver.)
|
||||||
|
|
||||||
* Source file names with the suffixes `.FOR' and `.FPP' now are
|
* Source file names with the suffixes `.FOR' and `.FPP' now are
|
||||||
|
@ -95,7 +99,7 @@ In `egcs' 1.2 (versus 1.1.2):
|
||||||
references to the implementations of these intrinsics using the
|
references to the implementations of these intrinsics using the
|
||||||
`EXTERNAL' mechanism (which would avoid the new warnings).
|
`EXTERNAL' mechanism (which would avoid the new warnings).
|
||||||
|
|
||||||
4. `g77' now warns about a reference to a function when the
|
5. `g77' now warns about a reference to a function when the
|
||||||
corresponding *subsequent* function program unit disagrees with
|
corresponding *subsequent* function program unit disagrees with
|
||||||
the reference concerning the type of the function.
|
the reference concerning the type of the function.
|
||||||
|
|
||||||
|
@ -106,8 +110,23 @@ In `egcs' 1.2 (versus 1.1.2):
|
||||||
* The `-malign-double' option now reliably aligns *all*
|
* The `-malign-double' option now reliably aligns *all*
|
||||||
double-precision variables and arrays on Intel x86 targets.
|
double-precision variables and arrays on Intel x86 targets.
|
||||||
|
|
||||||
5. Improve documentation and indexing, including information on Year
|
* Even without the `-malign-double' option, `g77' reliably aligns
|
||||||
2000 (Y2K) compliance.
|
local double-precision variables that are not in `EQUIVALENCE'
|
||||||
|
areas and not `SAVE''d.
|
||||||
|
|
||||||
|
* A substantial portion of the `g77' front end's code-generation
|
||||||
|
component was rewritten. It now generates code using facilities
|
||||||
|
more robustly supported by the `gcc' back end. One effect of this
|
||||||
|
rewrite is that some codes no longer produce a spurious "label LAB
|
||||||
|
used before containing binding contour" message.
|
||||||
|
|
||||||
|
* Support for the `-fugly' option has been removed.
|
||||||
|
|
||||||
|
6. Improve documentation and indexing, including information on Year
|
||||||
|
2000 (Y2K) compliance, and providing more information on internals
|
||||||
|
of the front end.
|
||||||
|
|
||||||
|
7. Upgrade to `libf2c' as of 1999-03-17.
|
||||||
|
|
||||||
In 0.5.24 and `egcs' 1.1.2 (versus 0.5.23 and 1.1.1):
|
In 0.5.24 and `egcs' 1.1.2 (versus 0.5.23 and 1.1.1):
|
||||||
=====================================================
|
=====================================================
|
||||||
|
@ -149,14 +168,14 @@ In 0.5.24 and `egcs' 1.1.1 (versus 0.5.23 and 1.1):
|
||||||
In `egcs' 1.1 (versus 0.5.24):
|
In `egcs' 1.1 (versus 0.5.24):
|
||||||
==============================
|
==============================
|
||||||
|
|
||||||
6. Fix `g77' crash compiling code containing the construct
|
8. Fix `g77' crash compiling code containing the construct
|
||||||
`CMPLX(0.)' or similar.
|
`CMPLX(0.)' or similar.
|
||||||
|
|
||||||
7. Fix `g77' crash (or apparently infinite run-time) when compiling
|
9. Fix `g77' crash (or apparently infinite run-time) when compiling
|
||||||
certain complicated expressions involving `COMPLEX' arithmetic
|
certain complicated expressions involving `COMPLEX' arithmetic
|
||||||
(especially multiplication).
|
(especially multiplication).
|
||||||
|
|
||||||
8. Fix a code-generation bug that afflicted Intel x86 targets when
|
10. Fix a code-generation bug that afflicted Intel x86 targets when
|
||||||
`-O2' was specified compiling, for example, an old version of the
|
`-O2' was specified compiling, for example, an old version of the
|
||||||
`DNRM2' routine.
|
`DNRM2' routine.
|
||||||
|
|
||||||
|
@ -172,25 +191,25 @@ In `egcs' 1.1 (versus 0.5.24):
|
||||||
In `egcs' 1.1 (versus `egcs' 1.0.3):
|
In `egcs' 1.1 (versus `egcs' 1.0.3):
|
||||||
====================================
|
====================================
|
||||||
|
|
||||||
9. Fix bugs in the `libU77' intrinsic `HostNm' that wrote one byte
|
11. Fix bugs in the `libU77' intrinsic `HostNm' that wrote one byte
|
||||||
beyond the end of its `CHARACTER' argument, and in the `libU77'
|
beyond the end of its `CHARACTER' argument, and in the `libU77'
|
||||||
intrinsics `GMTime' and `LTime' that overwrote their arguments.
|
intrinsics `GMTime' and `LTime' that overwrote their arguments.
|
||||||
|
|
||||||
10. Assumed arrays with negative bounds (such as `REAL A(-1:*)') no
|
12. Assumed arrays with negative bounds (such as `REAL A(-1:*)') no
|
||||||
longer elicit spurious diagnostics from `g77', even on systems
|
longer elicit spurious diagnostics from `g77', even on systems
|
||||||
with pointers having different sizes than integers.
|
with pointers having different sizes than integers.
|
||||||
|
|
||||||
This bug is not known to have existed in any recent version of
|
This bug is not known to have existed in any recent version of
|
||||||
`gcc'. It was introduced in an early release of `egcs'.
|
`gcc'. It was introduced in an early release of `egcs'.
|
||||||
|
|
||||||
11. Valid combinations of `EXTERNAL', passing that external as a dummy
|
13. Valid combinations of `EXTERNAL', passing that external as a dummy
|
||||||
argument without explicitly giving it a type, and, in a subsequent
|
argument without explicitly giving it a type, and, in a subsequent
|
||||||
program unit, referencing that external as an external function
|
program unit, referencing that external as an external function
|
||||||
with a different type no longer crash `g77'.
|
with a different type no longer crash `g77'.
|
||||||
|
|
||||||
12. `CASE DEFAULT' no longer crashes `g77'.
|
14. `CASE DEFAULT' no longer crashes `g77'.
|
||||||
|
|
||||||
13. The `-Wunused' option no longer issues a spurious warning about
|
15. The `-Wunused' option no longer issues a spurious warning about
|
||||||
the "master" procedure generated by `g77' for procedures
|
the "master" procedure generated by `g77' for procedures
|
||||||
containing `ENTRY' statements.
|
containing `ENTRY' statements.
|
||||||
|
|
||||||
|
@ -215,25 +234,25 @@ In `egcs' 1.1 (versus `egcs' 1.0.3):
|
||||||
`libf2c' environment, even when `libf2c' (now `libg2c') is a
|
`libf2c' environment, even when `libf2c' (now `libg2c') is a
|
||||||
shared library.
|
shared library.
|
||||||
|
|
||||||
14. `g77' no longer installs the `f77' command and `f77.1' man page in
|
16. `g77' no longer installs the `f77' command and `f77.1' man page in
|
||||||
the `/usr' or `/usr/local' heirarchy, even if the `f77-install-ok'
|
the `/usr' or `/usr/local' heirarchy, even if the `f77-install-ok'
|
||||||
file exists in the source or build directory. See the
|
file exists in the source or build directory. See the
|
||||||
installation documentation for more information.
|
installation documentation for more information.
|
||||||
|
|
||||||
15. `g77' no longer installs the `libf2c.a' library and `f2c.h'
|
17. `g77' no longer installs the `libf2c.a' library and `f2c.h'
|
||||||
include file in the `/usr' or `/usr/local' heirarchy, even if the
|
include file in the `/usr' or `/usr/local' heirarchy, even if the
|
||||||
`f2c-install-ok' or `f2c-exists-ok' files exist in the source or
|
`f2c-install-ok' or `f2c-exists-ok' files exist in the source or
|
||||||
build directory. See the installation documentation for more
|
build directory. See the installation documentation for more
|
||||||
information.
|
information.
|
||||||
|
|
||||||
16. The `libf2c.a' library produced by `g77' has been renamed to
|
18. The `libf2c.a' library produced by `g77' has been renamed to
|
||||||
`libg2c.a'. It is installed only in the `gcc' "private" directory
|
`libg2c.a'. It is installed only in the `gcc' "private" directory
|
||||||
heirarchy, `gcc-lib'. This allows system administrators and users
|
heirarchy, `gcc-lib'. This allows system administrators and users
|
||||||
to choose which version of the `libf2c' library from `netlib' they
|
to choose which version of the `libf2c' library from `netlib' they
|
||||||
wish to use on a case-by-case basis. See the installation
|
wish to use on a case-by-case basis. See the installation
|
||||||
documentation for more information.
|
documentation for more information.
|
||||||
|
|
||||||
17. The `f2c.h' include (header) file produced by `g77' has been
|
19. The `f2c.h' include (header) file produced by `g77' has been
|
||||||
renamed to `g2c.h'. It is installed only in the `gcc' "private"
|
renamed to `g2c.h'. It is installed only in the `gcc' "private"
|
||||||
directory heirarchy, `gcc-lib'. This allows system administrators
|
directory heirarchy, `gcc-lib'. This allows system administrators
|
||||||
and users to choose which version of the include file from
|
and users to choose which version of the include file from
|
||||||
|
@ -245,11 +264,11 @@ In `egcs' 1.1 (versus `egcs' 1.0.3):
|
||||||
than the one built and installed as part of the same `g77' version
|
than the one built and installed as part of the same `g77' version
|
||||||
is picked up.
|
is picked up.
|
||||||
|
|
||||||
18. During the configuration and build process, `g77' creates
|
20. During the configuration and build process, `g77' creates
|
||||||
subdirectories it needs only as it needs them. Other cleaning up
|
subdirectories it needs only as it needs them. Other cleaning up
|
||||||
of the configuration and build process has been performed as well.
|
of the configuration and build process has been performed as well.
|
||||||
|
|
||||||
19. `install-info' now used to update the directory of Info
|
21. `install-info' now used to update the directory of Info
|
||||||
documentation to contain an entry for `g77' (during installation).
|
documentation to contain an entry for `g77' (during installation).
|
||||||
|
|
||||||
* Some diagnostics have been changed from warnings to errors, to
|
* Some diagnostics have been changed from warnings to errors, to
|
||||||
|
@ -258,28 +277,28 @@ In `egcs' 1.1 (versus `egcs' 1.0.3):
|
||||||
in the `OPEN', `INQUIRE', `READ', and `WRITE' statements, and
|
in the `OPEN', `INQUIRE', `READ', and `WRITE' statements, and
|
||||||
about truncations of various sorts of constants.
|
about truncations of various sorts of constants.
|
||||||
|
|
||||||
20. Improve compilation of `FORMAT' expressions so that a null byte is
|
22. Improve compilation of `FORMAT' expressions so that a null byte is
|
||||||
appended to the last operand if it is a constant. This provides a
|
appended to the last operand if it is a constant. This provides a
|
||||||
cleaner run-time diagnostic as provided by `libf2c' for statements
|
cleaner run-time diagnostic as provided by `libf2c' for statements
|
||||||
like `PRINT '(I1', 42'.
|
like `PRINT '(I1', 42'.
|
||||||
|
|
||||||
21. Improve documentation and indexing.
|
23. Improve documentation and indexing.
|
||||||
|
|
||||||
22. The upgrade to `libf2c' as of 1998-06-18 should fix a variety of
|
24. The upgrade to `libf2c' as of 1998-06-18 should fix a variety of
|
||||||
problems, including those involving some uses of the `T' format
|
problems, including those involving some uses of the `T' format
|
||||||
specifier, and perhaps some build (porting) problems as well.
|
specifier, and perhaps some build (porting) problems as well.
|
||||||
|
|
||||||
In 0.5.24 and `egcs' 1.1 (versus 0.5.23):
|
In 0.5.24 and `egcs' 1.1 (versus 0.5.23):
|
||||||
=========================================
|
=========================================
|
||||||
|
|
||||||
23. `g77' no longer produces incorrect code and initial values for
|
25. `g77' no longer produces incorrect code and initial values for
|
||||||
`EQUIVALENCE' and `COMMON' aggregates that, due to "unnatural"
|
`EQUIVALENCE' and `COMMON' aggregates that, due to "unnatural"
|
||||||
ordering of members vis-a-vis their types, require initial padding.
|
ordering of members vis-a-vis their types, require initial padding.
|
||||||
|
|
||||||
24. `g77' no longer crashes when compiling code containing
|
26. `g77' no longer crashes when compiling code containing
|
||||||
specification statements such as `INTEGER(KIND=7) PTR'.
|
specification statements such as `INTEGER(KIND=7) PTR'.
|
||||||
|
|
||||||
25. `g77' no longer crashes when compiling code such as `J = SIGNAL(1,
|
27. `g77' no longer crashes when compiling code such as `J = SIGNAL(1,
|
||||||
2)'.
|
2)'.
|
||||||
|
|
||||||
* `g77' now treats `%LOC(EXPR)' and `LOC(EXPR)' as "ordinary"
|
* `g77' now treats `%LOC(EXPR)' and `LOC(EXPR)' as "ordinary"
|
||||||
|
@ -310,9 +329,9 @@ In 0.5.24 and `egcs' 1.1 (versus 0.5.23):
|
||||||
* The F90 `System_Clock' intrinsic allows the optional arguments
|
* The F90 `System_Clock' intrinsic allows the optional arguments
|
||||||
(except for the `Count' argument) to be omitted.
|
(except for the `Count' argument) to be omitted.
|
||||||
|
|
||||||
26. Upgrade to `libf2c' as of 1998-06-18.
|
28. Upgrade to `libf2c' as of 1998-06-18.
|
||||||
|
|
||||||
27. Improve documentation and indexing.
|
29. Improve documentation and indexing.
|
||||||
|
|
||||||
In previous versions:
|
In previous versions:
|
||||||
=====================
|
=====================
|
||||||
|
|
Loading…
Reference in New Issue