A couple of underscore got lost a long time ago.
/* need the ANSI arg decl, so "short" and "float" args dont get promoted */
#define X2BYTES(type) \
I_ \
-type##2bytes(type in, unsigned char *arr) \
+type##2bytes__(type in, unsigned char *arr) \
{ \
union { \
type i; \
#else /* not STDC */
#define X2BYTES(type) \
I_ \
-type##2bytes(type in, unsigned char *arr) \
+type##2bytes__(type in, unsigned char *arr) \
{ \
union { \
type i; \