update derived files

From-SVN: r28019
This commit is contained in:
Craig Burley 1999-07-08 08:54:14 -04:00
parent cdc1e12a34
commit 1f8da62947

View File

@ -66,43 +66,66 @@ about previous `g77' versions up-to-date.
the mainline, development version of `g77' within `egcs') is available
at `http://egcs.cygnus.com/onlinedocs/g77_news.html'.
The following information was last updated on 1999-06-16:
The following information was last updated on 1999-07-08:
In development:
===============
1. The `TtyNam' intrinsics now set NAME to all spaces (at run time)
if the system has no `ttyname' implementation available.
2. Upgrade to `libf2c' as of 1999-06-28.
This fixes a bug whereby input to a `NAMELIST' read involving a
repeat count, such as `K(5)=10*3', was not properly handled by
`libf2c'. The first item was written to `K(5)', but the remaining
nine were written elsewhere (still within the array), not
necessarily starting at `K(6)'.
In 0.5.25, `GCC' 2.95 (`EGCS' 1.2) versus `EGCS' 1.1.2:
=======================================================
1. `g77' no longer generates bad code for assignments, or other
3. `g77' no longer generates bad code for assignments, or other
conversions, of `REAL' or `COMPLEX' constant expressions to type
`INTEGER(KIND=2)' (often referred to as `INTEGER*8').
For example, `INTEGER*8 J; J = 4E10' now works as documented.
2. `g77' no longer truncates `INTEGER(KIND=2)' (usually `INTEGER*8')
4. `g77' no longer truncates `INTEGER(KIND=2)' (usually `INTEGER*8')
subscript expressions when evaluating array references on systems
with pointers widers than `INTEGER(KIND=1)' (such as Alphas).
3. `g77' no longer generates bad code for an assignment to a
5. `g77' no longer generates bad code for an assignment to a
`COMPLEX' variable or array that partially overlaps one or more of
the sources of the same assignment (a very rare construction). It
now assigns through a temporary, in cases where such partial
overlap is deemed possible.
4. `libg2c' (`libf2c') no longer loses track of the file being worked
6. `libg2c' (`libf2c') no longer loses track of the file being worked
on during a `BACKSPACE' operation.
5. Automatic arrays now seem to be working on HP-UX systems.
7. `libg2c' (`libf2c') fixes a bug whereby input to a `NAMELIST' read
involving a repeat count, such as `K(5)=10*3', was not properly
handled by `libf2c'. The first item was written to `K(5)', but
the remaining nine were written elsewhere (still within the array),
not necessarily starting at `K(6)'.
6. Fix `g77' so it no longer crashes when compiling I/O statements
8. Automatic arrays now seem to be working on HP-UX systems.
9. The `Date' intrinsic now returns the correct result on big-endian
systems.
10. Fix `g77' so it no longer crashes when compiling I/O statements
using keywords that define `INTEGER' values, such as `IOSTAT=J',
where J is other than default `INTEGER' (such as `INTEGER*2').
Instead, it issues a diagnostic.
7. Fix `g77' so it properly handles `DATA A/RPT*VAL/', where RPT is
11. 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. Also fix `DATA (A(I),I=1,N)', where `N' is
not default `INTEGER' to work instead of crashing `g77'.
8. The `-ax' option is now obeyed when compiling Fortran programs.
12. The `-ax' option is now obeyed when compiling Fortran programs.
(It is passed to the `f771' driver.)
* The new `-fbounds-check' option causes `g77' to compile run-time
@ -129,7 +152,7 @@ In 0.5.25, `GCC' 2.95 (`EGCS' 1.2) versus `EGCS' 1.1.2:
to the implementations of these intrinsics using the `EXTERNAL'
mechanism (which would avoid the new warnings).
9. `g77' now warns about a reference to a function when the
13. `g77' now warns about a reference to a function when the
corresponding *subsequent* function program unit disagrees with
the reference concerning the type of the function.
@ -140,23 +163,23 @@ In 0.5.25, `GCC' 2.95 (`EGCS' 1.2) versus `EGCS' 1.1.2:
* The `-malign-double' option now reliably aligns *all*
double-precision variables and arrays on Intel x86 targets.
10. Even without the `-malign-double' option, `g77' reliably aligns
14. Even without the `-malign-double' option, `g77' reliably aligns
local double-precision variables that are not in `EQUIVALENCE'
areas and not `SAVE''d.
11. `g77' now open-codes ("inlines") division of `COMPLEX' operands
15. `g77' now open-codes ("inlines") division of `COMPLEX' operands
instead of generating a run-time call to the `libf2c' routines
`c_div' or `z_div', unless the `-Os' option is specified.
* `g77' no longer generates code to maintain `errno', a C-language
concept, when performing operations such as the `SqRt' intrinsic.
12. `g77' developers can temporarily use the `-fflatten-arrays' option
16. `g77' developers can temporarily use the `-fflatten-arrays' option
to compare how the compiler handles code generation using C-like
constructs as compared to the Fortran-like method constructs
normally used.
13. A substantial portion of the `g77' front end's code-generation
17. 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
@ -164,11 +187,11 @@ In 0.5.25, `GCC' 2.95 (`EGCS' 1.2) versus `EGCS' 1.1.2:
* Support for the `-fugly' option has been removed.
14. Improve documentation and indexing, including information on Year
18. Improve documentation and indexing, including information on Year
2000 (Y2K) compliance, and providing more information on internals
of the front end.
15. Upgrade to `libf2c' as of 1999-05-10.
19. Upgrade to `libf2c' as of 1999-05-10.
In 0.5.24 versus 0.5.23:
========================
@ -231,25 +254,25 @@ In `EGCS' 1.1.1 versus `EGCS' 1.1:
In `EGCS' 1.1 versus `EGCS' 1.0.3:
==================================
16. Fix bugs in the `libU77' intrinsic `HostNm' that wrote one byte
20. Fix bugs in the `libU77' intrinsic `HostNm' that wrote one byte
beyond the end of its `CHARACTER' argument, and in the `libU77'
intrinsics `GMTime' and `LTime' that overwrote their arguments.
17. Assumed arrays with negative bounds (such as `REAL A(-1:*)') no
21. Assumed arrays with negative bounds (such as `REAL A(-1:*)') no
longer elicit spurious diagnostics from `g77', even on systems
with pointers having different sizes than integers.
This bug is not known to have existed in any recent version of
`gcc'. It was introduced in an early release of `egcs'.
18. Valid combinations of `EXTERNAL', passing that external as a dummy
22. Valid combinations of `EXTERNAL', passing that external as a dummy
argument without explicitly giving it a type, and, in a subsequent
program unit, referencing that external as an external function
with a different type no longer crash `g77'.
19. `CASE DEFAULT' no longer crashes `g77'.
23. `CASE DEFAULT' no longer crashes `g77'.
20. The `-Wunused' option no longer issues a spurious warning about
24. The `-Wunused' option no longer issues a spurious warning about
the "master" procedure generated by `g77' for procedures
containing `ENTRY' statements.
@ -274,25 +297,25 @@ In `EGCS' 1.1 versus `EGCS' 1.0.3:
`libf2c' environment, even when `libf2c' (now `libg2c') is a
shared library.
21. `g77' no longer installs the `f77' command and `f77.1' man page in
25. `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'
file exists in the source or build directory. See the
installation documentation for more information.
22. `g77' no longer installs the `libf2c.a' library and `f2c.h'
26. `g77' no longer installs the `libf2c.a' library and `f2c.h'
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
build directory. See the installation documentation for more
information.
23. The `libf2c.a' library produced by `g77' has been renamed to
27. The `libf2c.a' library produced by `g77' has been renamed to
`libg2c.a'. It is installed only in the `gcc' "private" directory
heirarchy, `gcc-lib'. This allows system administrators and users
to choose which version of the `libf2c' library from `netlib' they
wish to use on a case-by-case basis. See the installation
documentation for more information.
24. The `f2c.h' include (header) file produced by `g77' has been
28. The `f2c.h' include (header) file produced by `g77' has been
renamed to `g2c.h'. It is installed only in the `gcc' "private"
directory heirarchy, `gcc-lib'. This allows system administrators
and users to choose which version of the include file from
@ -304,11 +327,11 @@ In `EGCS' 1.1 versus `EGCS' 1.0.3:
than the one built and installed as part of the same `g77' version
is picked up.
25. During the configuration and build process, `g77' creates
29. During the configuration and build process, `g77' creates
subdirectories it needs only as it needs them. Other cleaning up
of the configuration and build process has been performed as well.
26. `install-info' now used to update the directory of Info
30. `install-info' now used to update the directory of Info
documentation to contain an entry for `g77' (during installation).
* Some diagnostics have been changed from warnings to errors, to
@ -317,38 +340,38 @@ In `EGCS' 1.1 versus `EGCS' 1.0.3:
in the `OPEN', `INQUIRE', `READ', and `WRITE' statements, and
about truncations of various sorts of constants.
27. Improve compilation of `FORMAT' expressions so that a null byte is
31. 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'.
28. Improve documentation and indexing.
32. Improve documentation and indexing.
29. The upgrade to `libf2c' as of 1998-06-18 should fix a variety of
33. The upgrade to `libf2c' as of 1998-06-18 should fix a variety of
problems, including those involving some uses of the `T' format
specifier, and perhaps some build (porting) problems as well.
In `EGCS' 1.1 versus `g77' 0.5.23:
==================================
30. Fix a code-generation bug that afflicted Intel x86 targets when
34. 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'.
31. `g77' no longer produces incorrect code and initial values for
35. `g77' no longer produces incorrect code and initial values for
`EQUIVALENCE' and `COMMON' aggregates that, due to "unnatural"
ordering of members vis-a-vis their types, require initial padding.
32. Fix `g77' crash compiling code containing the construct
36. Fix `g77' crash compiling code containing the construct
`CMPLX(0.)' or similar.
33. `g77' no longer crashes when compiling code containing
37. `g77' no longer crashes when compiling code containing
specification statements such as `INTEGER(KIND=7) PTR'.
34. `g77' no longer crashes when compiling code such as `J = SIGNAL(1,
38. `g77' no longer crashes when compiling code such as `J = SIGNAL(1,
2)'.
* `g77' now treats `%LOC(EXPR)' and `LOC(EXPR)' as "ordinary"
@ -359,7 +382,7 @@ In `EGCS' 1.1 versus `g77' 0.5.23:
Previously, `g77' treated these expressions as denoting special
"pointer" arguments for the purposes of filewide analysis.
35. Fix `g77' crash (or apparently infinite run-time) when compiling
39. Fix `g77' crash (or apparently infinite run-time) when compiling
certain complicated expressions involving `COMPLEX' arithmetic
(especially multiplication).
@ -389,9 +412,9 @@ In `EGCS' 1.1 versus `g77' 0.5.23:
* The F90 `System_Clock' intrinsic allows the optional arguments
(except for the `Count' argument) to be omitted.
36. Upgrade to `libf2c' as of 1998-06-18.
40. Upgrade to `libf2c' as of 1998-06-18.
37. Improve documentation and indexing.
41. Improve documentation and indexing.
In previous versions:
=====================