>> -#ifndef WORDS_BIGENDIAN >> +#if !WORDS_BIGENDIAN > > Is this change (and similar ones below) really necessary ? Yes, since WORDS_BIGENDIAN is defined as __BIG_ENDIAN__ which is always defined (either 0 or 1), not undef-or-1 like other parameters.