Go to the first, previous, next, last section, table of contents.
A warning message is issued when g77
sees code that provides
initial values (e.g. via DATA
) to an aggregate area (COMMON
or EQUIVALENCE
, or even a large enough array or CHARACTER
variable)
that is large enough to increase g77
's compile time by roughly
a factor of 10.
This size currently is quite small, since g77
currently has a known bug requiring too much memory
and time to handle such cases.
In `gcc/f/data.c', the macro
`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 g77
for
the change to take effect.
Note that, as of version 0.5.18, improvements have
reduced the scope of the problem for sparse
initialization of large arrays, especially those
with large, contiguous uninitialized areas.
However, the warning is issued at a point prior to
when 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.
Go to the first, previous, next, last section, table of contents.