Index: mpi-1.8.6/mpi.h =================================================================== --- mpi-1.8.6.orig/mpi.h 2011-12-13 09:35:31.000000000 -0800 +++ mpi-1.8.6/mpi.h 2011-12-13 09:40:01.000000000 -0800 @@ -72,8 +72,13 @@ #define MAX_RADIX 64 typedef struct { - mp_sign sign; /* sign of this quantity */ - mp_size alloc; /* how many digits allocated */ +#if SIZEOF_INT >= SIZEOF_PTR + unsigned int sign : 1; /* sign of this quantity */ + unsigned int alloc : sizeof(int) - 1; /* how many digits allocated */ +#else + mp_sign sign; + mp_size alloc; +#endif mp_size used; /* how many digits used */ mp_digit *dp; /* the digits themselves */ } mp_int;