g77 large array
Toon Moene
toon@moene.indiv.nluug.nl
Wed Oct 15 20:32:00 GMT 2003
Dale Johannesen wrote:
> On Tuesday, October 14, 2003, at 08:00 PM, Robert Dewar wrote:
>
>>> In this case, two arrays do not need memory at the same time.
>>> Cannot SUBROUTINE B use the same memory area as A in Fortran compiler,
>>> even if I do not declare explicitly COMMON I?
> Actually, most modern Fortran compilers have a switch to control this.
> g77 documents
> -fautomatic to do what you want. I haven't tried it; the doc also
> claims it is the default, so
> it may not be working right in your environment, or it may have some
> limit on how much
> stack space it will allocate.
Well, the reason to have a maximum-size-to-put-on-the-stack for arrays
when the first release of g77 was made (early '95) was that a lot of the
target systems had small stack sizes (by default and as a system wide
maximum). If the compiler just allocated arbitrarily sized arrays on
the stack, much more people would have run into segmentation faults than
are now.
However, g77 (like all of GCC) is free software. You can up the limit
yourself (and rebuild the compiler). The limit is in the file
gcc/f/com.c, constant FFECOM_sizeMAXSTACKITEM.
Hope this helps,
--
Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290
Saturnushof 14, 3738 XG Maartensdijk, The Netherlands
Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html
GNU Fortran 95: http://gcc.gnu.org/fortran/ (under construction)
More information about the Gcc
mailing list