parent
ff852b4454
commit
9f01126349
78
gcc/f/NEWS
78
gcc/f/NEWS
|
@ -66,7 +66,7 @@ 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-05-10:
|
||||
The following information was last updated on 1999-05-13:
|
||||
|
||||
In `egcs' 1.2 (versus 1.1.2):
|
||||
=============================
|
||||
|
@ -77,25 +77,29 @@ In `egcs' 1.2 (versus 1.1.2):
|
|||
|
||||
For example, `INTEGER*8 J; J = 4E10' now works as documented.
|
||||
|
||||
2. `g77' no longer generates bad code for an assignment to a
|
||||
2. `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
|
||||
`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.
|
||||
|
||||
3. Automatic arrays now seem to be working on HP-UX systems.
|
||||
4. Automatic arrays now seem to be working on HP-UX systems.
|
||||
|
||||
4. Fix `g77' so it no longer crashes when compiling I/O statements
|
||||
5. 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.
|
||||
|
||||
5. Fix `g77' so it properly handles `DATA A/RPT*VAL/', where RPT is
|
||||
6. 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'.
|
||||
|
||||
6. The `-ax' option is now obeyed when compiling Fortran programs.
|
||||
7. The `-ax' option is now obeyed when compiling Fortran programs.
|
||||
(It is passed to the `f771' driver.)
|
||||
|
||||
* The new `-fsubscript-check' option causes `g77' to compile
|
||||
|
@ -124,7 +128,7 @@ In `egcs' 1.2 (versus 1.1.2):
|
|||
references to the implementations of these intrinsics using the
|
||||
`EXTERNAL' mechanism (which would avoid the new warnings).
|
||||
|
||||
7. `g77' now warns about a reference to a function when the
|
||||
8. `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.
|
||||
|
||||
|
@ -135,11 +139,19 @@ In `egcs' 1.2 (versus 1.1.2):
|
|||
* The `-malign-double' option now reliably aligns *all*
|
||||
double-precision variables and arrays on Intel x86 targets.
|
||||
|
||||
8. Even without the `-malign-double' option, `g77' reliably aligns
|
||||
9. Even without the `-malign-double' option, `g77' reliably aligns
|
||||
local double-precision variables that are not in `EQUIVALENCE'
|
||||
areas and not `SAVE''d.
|
||||
|
||||
9. A substantial portion of the `g77' front end's code-generation
|
||||
* `g77' no longer generates code to maintain `errno', a C-language
|
||||
concept, when performing operations such as the `SqRt' intrinsic.
|
||||
|
||||
10. `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.
|
||||
|
||||
11. 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
|
||||
|
@ -147,11 +159,11 @@ In `egcs' 1.2 (versus 1.1.2):
|
|||
|
||||
* Support for the `-fugly' option has been removed.
|
||||
|
||||
10. Improve documentation and indexing, including information on Year
|
||||
12. Improve documentation and indexing, including information on Year
|
||||
2000 (Y2K) compliance, and providing more information on internals
|
||||
of the front end.
|
||||
|
||||
11. Upgrade to `libf2c' as of 1999-05-10.
|
||||
13. Upgrade to `libf2c' as of 1999-05-10.
|
||||
|
||||
In 0.5.24 and `egcs' 1.1.2 (versus 0.5.23 and 1.1.1):
|
||||
=====================================================
|
||||
|
@ -193,14 +205,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):
|
||||
==============================
|
||||
|
||||
12. Fix `g77' crash compiling code containing the construct
|
||||
14. Fix `g77' crash compiling code containing the construct
|
||||
`CMPLX(0.)' or similar.
|
||||
|
||||
13. Fix `g77' crash (or apparently infinite run-time) when compiling
|
||||
15. Fix `g77' crash (or apparently infinite run-time) when compiling
|
||||
certain complicated expressions involving `COMPLEX' arithmetic
|
||||
(especially multiplication).
|
||||
|
||||
14. Fix a code-generation bug that afflicted Intel x86 targets when
|
||||
16. Fix a code-generation bug that afflicted Intel x86 targets when
|
||||
`-O2' was specified compiling, for example, an old version of the
|
||||
`DNRM2' routine.
|
||||
|
||||
|
@ -216,25 +228,25 @@ In `egcs' 1.1 (versus 0.5.24):
|
|||
In `egcs' 1.1 (versus `egcs' 1.0.3):
|
||||
====================================
|
||||
|
||||
15. Fix bugs in the `libU77' intrinsic `HostNm' that wrote one byte
|
||||
17. 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.
|
||||
|
||||
16. Assumed arrays with negative bounds (such as `REAL A(-1:*)') no
|
||||
18. 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'.
|
||||
|
||||
17. Valid combinations of `EXTERNAL', passing that external as a dummy
|
||||
19. 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'.
|
||||
|
||||
18. `CASE DEFAULT' no longer crashes `g77'.
|
||||
20. `CASE DEFAULT' no longer crashes `g77'.
|
||||
|
||||
19. The `-Wunused' option no longer issues a spurious warning about
|
||||
21. The `-Wunused' option no longer issues a spurious warning about
|
||||
the "master" procedure generated by `g77' for procedures
|
||||
containing `ENTRY' statements.
|
||||
|
||||
|
@ -259,25 +271,25 @@ In `egcs' 1.1 (versus `egcs' 1.0.3):
|
|||
`libf2c' environment, even when `libf2c' (now `libg2c') is a
|
||||
shared library.
|
||||
|
||||
20. `g77' no longer installs the `f77' command and `f77.1' man page in
|
||||
22. `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.
|
||||
|
||||
21. `g77' no longer installs the `libf2c.a' library and `f2c.h'
|
||||
23. `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.
|
||||
|
||||
22. The `libf2c.a' library produced by `g77' has been renamed to
|
||||
24. 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.
|
||||
|
||||
23. The `f2c.h' include (header) file produced by `g77' has been
|
||||
25. 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
|
||||
|
@ -289,11 +301,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.
|
||||
|
||||
24. During the configuration and build process, `g77' creates
|
||||
26. 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.
|
||||
|
||||
25. `install-info' now used to update the directory of Info
|
||||
27. `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
|
||||
|
@ -302,28 +314,28 @@ 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.
|
||||
|
||||
26. Improve compilation of `FORMAT' expressions so that a null byte is
|
||||
28. 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'.
|
||||
|
||||
27. Improve documentation and indexing.
|
||||
29. Improve documentation and indexing.
|
||||
|
||||
28. The upgrade to `libf2c' as of 1998-06-18 should fix a variety of
|
||||
30. 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 0.5.24 and `egcs' 1.1 (versus 0.5.23):
|
||||
=========================================
|
||||
|
||||
29. `g77' no longer produces incorrect code and initial values for
|
||||
31. `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.
|
||||
|
||||
30. `g77' no longer crashes when compiling code containing
|
||||
32. `g77' no longer crashes when compiling code containing
|
||||
specification statements such as `INTEGER(KIND=7) PTR'.
|
||||
|
||||
31. `g77' no longer crashes when compiling code such as `J = SIGNAL(1,
|
||||
33. `g77' no longer crashes when compiling code such as `J = SIGNAL(1,
|
||||
2)'.
|
||||
|
||||
* `g77' now treats `%LOC(EXPR)' and `LOC(EXPR)' as "ordinary"
|
||||
|
@ -354,9 +366,9 @@ In 0.5.24 and `egcs' 1.1 (versus 0.5.23):
|
|||
* The F90 `System_Clock' intrinsic allows the optional arguments
|
||||
(except for the `Count' argument) to be omitted.
|
||||
|
||||
32. Upgrade to `libf2c' as of 1998-06-18.
|
||||
34. Upgrade to `libf2c' as of 1998-06-18.
|
||||
|
||||
33. Improve documentation and indexing.
|
||||
35. Improve documentation and indexing.
|
||||
|
||||
In previous versions:
|
||||
=====================
|
||||
|
|
Loading…
Reference in New Issue