Subject: default distributions

From: [email-masked] (Mary E Zosel)
Date: Mon, 31 Aug 92 11:18:50 -0700

F90 / storage group:

In answering some questions that John Merlin posted as part of a longer
message to hpff-distribute ...I identified a problem that we should at
least be aware of ... (don't know what fix to propose) ...

the default for common blocks seems to be non-sequential and
unless a sequential declarative appears, we assume that
aggregates all match in size everywhere and that any explicitely mapped
aggregates are identically mapped everywhere.

this leaves the option for an aggressive compiler to consider
creating some interesting mappings for the aggregates (maybe
simple arrays) which do NOT appear in explicit mappings.

However, our requirement is only for the size to be the same everywhere
for these non-explicit items.

It seems to me that a compiler is quite like to make a different
decision about mapping X(2,512) and Y(32,32) even though they are
the same size.

---
Should we try to fix this?  How?

Is it too heavy handed to require that the arrays which are not
explicitely mapped all have the same type and shape, as well as size?
(This also says something about cover variable requirements).

Is it our "default non-sequential" that is getting us in trouble? For
"partially mapped" common blocks, we could require that the
user insert a !HPF NONSEQUENTIAL declaration to assert that
everything else lines up in a nice safe way so that the compiler can
take a crack at default distributions. 

   -mary-