Sujet : Re: Is there a way in Fortran to designate an integer value as integer*8 ?
De : lynnmcguire5 (at) *nospam* gmail.com (Lynn McGuire)
Groupes : comp.lang.fortranDate : 14. Oct 2024, 22:37:26
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <vek2ui$1bip4$5@dont-email.me>
References : 1 2 3 4 5 6 7 8
User-Agent : Mozilla Thunderbird
On 10/13/2024 7:18 AM, Thomas Koenig wrote:
Lynn McGuire <lynnmcguire5@gmail.com> schrieb:
I have 197 common blocks included from dedicated files and a massive
number of equivalences all over the place. Several of the equivalences
are actually in the common block files. The equivalences have made the
eventual C++ conversion of the Fortran code tricky.
What do you use the equivalences for? Saving memory? Then this
should not be a large issue on modern machines.
If you are using them for tricks with type conversion, then you
are on thin ice already, and have been since Fortran 66.
And if you have a few big arrays, then changing those to ALLOCATABLE
and allocating them at runtime might well be straightforward.
"DYNOSOR: a set of subroutines for dynamic memory organization in Fortran programs"
https://dl.acm.org/doi/10.1145/954654.954661One of our guys went to an ACM conference in 1977 and came back with this paper. It was the answer to our memory problems on the Univac 1108, the CDC 7600, and later the IBM 370.
I converted the memory allocation scheme from a common block in 1992 ??? to using the C malloc, realloc, and free library functions. Worked like a champ on Unix, Vax VMS, IBM mainframes, and PC DOS using various F77 compilers.
Before that I was having to ship special special versions to certain customers that were extensively using our builtin Fortran interpreter for custom calculations to design highly specialized chemical reactors.
Lynn