Copyright (C) 2000-2012 |
GNU Info (g77-295.info)Large InitializationInitialization of Large Aggregate Areas --------------------------------------- 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 `egcs/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. automatically generated by info2www version 1.2.2.9 |