1! For routines which are
generic..
26#define ARRAY_STR :,:,:
28! array dimension = (ARRAY_DIM)
38#define MPIT_NAME MPI_DOUBLE_PRECISION
43#define TYPE_NAME INTEGER
44#define MPIT_NAME MPI_INTEGER
49#define TYPE_NAME COMPLEX
50#define MPIT_NAME MPI_DOUBLE_COMPLEX
52! Subroutine names produced by concatenation
56#define CONCATENATE(_A,_B) NOEXP_CONCATENATE(_A,_B)
57#define NOEXP_CONCAT3(_A,_B,_C) _A##_B##_C
58#define CONCAT3(_A,_B,_C) NOEXP_CONCAT3(_A,_B,_C)
#define NOEXP_CONCATENATE(_A, _B)