The principal difficulty in moving `mcfgen` from one machine to
another is that the code was originally written under the assumption
that real numbers and integers occupy the same amount of storage.
This assumption is now made only for the binary file ``library'`.
Accommodation of different storage lengths is made by setting the
parameter `INTS_REALS` in the file ``machdep.h'`. The value of
`INTS_REALS` is to be set equal to

.

Thus, on a Cray
= 1 and on a Sun
= 2.
The only other portability issue for `mcfgen` is that the entire
implementation of the routine `etrnc` depends on the machine
precision of real numbers. This routine is used to test for near
equality of reals.

The code `mcfbin` is still written with the assumption that
integers and real numbers occupy the same amount of storage. This
is so far not a problem, because `mcfbin` is intended only for the
Cray. We mentioned earlier that a Sun version of this code is
available, but it uses a compiler option to enforce the equal-storage
assumption.