diff --git a/inc/inlineC.h b/inc/inlineC.h index c4fd376..41418df 100755 --- a/inc/inlineC.h +++ b/inc/inlineC.h @@ -41,8 +41,15 @@ #define Get_Pointer_PCMAC2 Get_Pointer(PCMAC + 2) /* For getting a signed byte */ +#ifndef BYTESWAP +/* in the unswapped case, the type of the argument carries through to the result */ #define Get_SBYTE_PCMAC0 GETBYTE((s_char *)PCMAC) #define Get_SBYTE_PCMAC1 GETBYTE((s_char *)PCMAC+1) +#else +/* cf. GETBYTE in lsptypes.h */ +#define Get_SBYTE_PCMAC0 (* (s_char *) (3^(UNSIGNED)(PCMAC))) +#define Get_SBYTE_PCMAC1 (* (s_char *) (3^(UNSIGNED)(PCMAC+1))) +#endif /* for getting an atom number, e.g., for FNx or DTEST */ #ifdef BIGATOMS diff --git a/inc/lsptypes.h b/inc/lsptypes.h index 0f6c012..e7c729a 100755 --- a/inc/lsptypes.h +++ b/inc/lsptypes.h @@ -576,7 +576,7 @@ typedef struct /* */ /****************************************************************/ -#define GETBYTE(base) (* (char *) (3^(UNSIGNED)(base))) +#define GETBYTE(base) (* (unsigned char *) (3^(UNSIGNED)(base))) /* GETBASEWORD only works if base points to a 32-bit bounday */ #define GETBASEWORD(base, offset) GETWORDBASEWORD((base),(offset)) #define GETWORDBASEWORD(base, offset) (* (DLword *) (2^(UNSIGNED)((base)+(offset))))