Eildert Groeneveld said:
> The NAG f90 does not allow the equivalence of character and real
It does if you use the -dusty option.
> Does someone have an idea of how to accomodate the privat memory
> management in f90 in a portable manner?
The "normal" way to manage storage would be to allocate storage for each
datatype (or even each item) separately. Fortran 90 runtime systems have
storage management built in, and so long as you match your ALLOCATEs with
DEALLOCATEs it should all happen automatically (there is no guarantee of
this in the standard, but I am not aware of any implementation that behaves
badly here - so this should satisfy the portability requirement). There are
also several implementations with automatic garbage collectors, but this is
not sufficiently widespread to be considered at all portable.
Alternatively, if all access to allocated storage is via access functions,
you could allocate storage in large blocks and use the TRANSFER intrinsic
to access it. Not likely to be particularly efficient though.
Finally, you could retain your old system and hope that all relevant systems
allow you to equivalence character and numeric. Of course this is not
portable to machines with different character/real storage ratios - there
are still quite a few machines being sold with single-precision real sizes
other than 32 bits, though the only one which I know has F90 on it at the
moment is Cray.
Not knowing your application, I cannot tell whether these suggestions are
feasible.
Cheers,
--
...........................Malcolm Cohen, NAG Ltd., Oxford, U.K.
([log in to unmask])
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|