It would not use the displacements in a description, but the declared
types themselves. So if the char dataType specifies a struct with
32 char, a vector of 1024 double, and an integer; I allocate for
32*sizeof(char) + 1024*sizeof(double) + sizeof(integer)
This is equivalent to the requirement that MPI_GET_CHAR_DATA_TYPE only
work on user types which are defined (ultimately) in terms of
base MPI types. I would allow for heirarchies; i.e., a type defined
in terms of other user types which (ultimately) are defined in terms
of base types.
Richard Frost
SDSC