The code assumes that integers, pointers to functions and
pointers to data are all the same size, a Word.

Pointers are given two-bit tags - the code also assumes that the bottom
two bits of pointers to words are zero, and fiddles with the bottom
bits by casting pointers to integers and back again.
(This can be turned off using mc's `--tags none' option.)

Various parts of the code are conditionalized to take advantage of
GNU C's special features if they are available, and to use specific
registers for global register variables on certain machines.

Otherwise this should be portable ANSI C :-)
It isn't portable to older non-ansi C compilers, but if you don't
have an ANSI C compiler, then you should get gcc.

