OSDN Git Service

* bugs.texi, news.texi: Update URLs for online news and bugs
[pf3gnuchains/gcc-fork.git] / gcc / f / bugs.texi
index c9a486c..bdd8765 100644 (file)
@@ -1,4 +1,4 @@
-@c Copyright (C) 1995-1999 Free Software Foundation, Inc.
+@c Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
 @c This is part of the G77 manual.
 @c For copying conditions, see the file g77.texi.
 
@@ -7,9 +7,9 @@
 
 @c Keep this the same as the dates above, since it's used
 @c in the standalone derivations of this file (e.g. BUGS).
-@set copyrights-bugs 1995-1999
+@set copyrights-bugs 1995,1996,1997,1998,1999,2000,2001,2002
 
-@set last-update-bugs 1999-04-20
+@set last-update-bugs 2002-02-01
 
 @include root.texi
 
@@ -77,37 +77,15 @@ most consistent with the @code{g77} product in that version.
 
 An online, ``live'' version of this document
 (derived directly from the mainline, development version
-of @code{g77} within @code{egcs})
+of @code{g77} within @code{gcc})
 is available via
-@uref{http://egcs.cygnus.com/onlinedocs/g77_bugs.html}.
+@uref{http://www.gnu.org/software/gcc/onlinedocs/g77/Trouble.html}.
 Follow the ``Known Bugs'' link.
 
-@ifset DOC-G77
-For information on bugs that might afflict people who
-configure, port, build, and install @code{g77},
-see @ref{Problems Installing}.
-@end ifset
-
-@ifset DOC-BUGS
-For information on bugs that might afflict people who
-configure, port, build, and install @code{g77},
-see "Problems Installing" in @file{@value{path-g77}/INSTALL}.
-@end ifset
-
 The following information was last updated on @value{last-update-bugs}:
 
 @itemize @bullet
 @item
-@c Tim Prince discovered this.
-Automatic arrays possibly aren't working on HP-UX systems,
-at least in HP-UX version 10.20.
-Writing into them apparently causes over-writing
-of statically declared data in the main program.
-This probably means the arrays themselves are being under-allocated,
-or pointers to them being improperly handled,
-e.g. not passed to other procedures as they should be.
-
-@item
 @code{g77} fails to warn about
 use of a ``live'' iterative-DO variable
 as an implied-DO variable
@@ -142,8 +120,6 @@ configuration that it no longer makes regarding variables (types).
 Included with this item is the fact that @code{g77} doesn't recognize
 that, on IEEE-754/854-compliant systems, @samp{0./0.} should produce a NaN
 and no warning instead of the value @samp{0.} and a warning.
-This is to be fixed in version 0.6, when @code{g77} will use the
-@code{gcc} back end's constant-handling mechanisms to replace its own.
 
 @cindex compiler speed
 @cindex speed, of compiler
@@ -160,7 +136,6 @@ areas having any initialized elements.
 For example, @samp{REAL A(1000000)} followed by @samp{DATA A(1)/1/}
 takes up way too much time and space, including
 the size of the generated assembler file.
-This is to be mitigated somewhat in version 0.6.
 
 Version 0.5.18 improves cases like this---specifically,
 cases of @emph{sparse} initialization that leave large, contiguous
@@ -177,30 +152,40 @@ improvements to the compiler.)
 Note that @code{g77} does display a warning message to
 notify the user before the compiler appears to hang.
 @ifset DOC-G77
-@xref{Large Initialization,,Initialization of Large Aggregate Areas},
-for information on how to change the point at which
-@code{g77} decides to issue this warning.
-@end ifset
-
-@cindex debugging
-@cindex common blocks
-@cindex equivalence areas
-@cindex local equivalence areas
-@item
-@code{g77} doesn't emit variable and array members of common blocks for use
-with a debugger (the @samp{-g} command-line option).
-The code is present to do this, but doesn't work with at least
-one debug format---perhaps it works with others.
-And it turns out there's a similar bug for
-local equivalence areas, so that has been disabled as well.
-
-As of Version 0.5.19, a temporary kludge solution is provided whereby
-some rudimentary information on a member is written as a string that
-is the member's value as a character string.
-
-@ifset DOC-G77
-@xref{Code Gen Options,,Options for Code Generation Conventions},
-for information on the @samp{-fdebug-kludge} option.
+A warning message is issued when @code{g77} sees code that provides
+initial values (e.g. via @code{DATA}) to an aggregate area (@code{COMMON}
+or @code{EQUIVALENCE}, or even a large enough array or @code{CHARACTER}
+variable)
+that is large enough to increase @code{g77}'s compile time by roughly
+a factor of 10.
+
+This size currently is quite small, since @code{g77}
+currently has a known bug requiring too much memory
+and time to handle such cases.
+In @file{@value{path-g77}/data.c}, the macro
+@code{FFEDATA_sizeTOO_BIG_INIT_} is defined
+to the minimum size for the warning to appear.
+The size is specified in storage units,
+which can be bytes, words, or whatever, on a case-by-case basis.
+
+After changing this macro definition, you must
+(of course) rebuild and reinstall @code{g77} for
+the change to take effect.
+
+Note that, as of version 0.5.18, improvements have
+reduced the scope of the problem for @emph{sparse}
+initialization of large arrays, especially those
+with large, contiguous uninitialized areas.
+However, the warning is issued at a point prior to
+when @code{g77} knows whether the initialization is sparse,
+and delaying the warning could mean it is produced
+too late to be helpful.
+
+Therefore, the macro definition should not be adjusted to
+reflect sparse cases.
+Instead, adjust it to generate the warning when densely
+initialized arrays begin to cause responses noticeably slower
+than linear performance would suggest.
 @end ifset
 
 @cindex code, displaying main source
@@ -244,8 +229,6 @@ working together properly sooner.
 such as the Digital Semiconductor (``DEC'') Alpha.
 
 This problem is largely resolved as of version 0.5.23.
-Version 0.6 should solve most or all remaining problems
-(such as cross-compiling involving 64-bit machines).
 
 @cindex padding
 @cindex structures