INT_MAX definition in gmp-impl.h conflicts with limits.h

Marc Glisse marc.glisse at inria.fr
Tue Nov 22 01:29:42 CET 2011


On Tue, 22 Nov 2011, Vincent Lefevre wrote:

> On 2011-11-21 20:26:06 +0100, Marc Glisse wrote:
>> Hello,
>>
>> I was compiling gmp with clang (no issue except for the use of jb,pt in
>> mpn/x86_64/mod_34lsub1.asm), and then I ran the testsuite and hit this
>> issue: on linux, limits.h includes bits/xopen_lim.h which contains this
>> code:
>>
>> #ifdef INT_MAX
>> # if INT_MAX == 32767
>> #  define WORD_BIT      16
>> ...
>>
>> On the other hand, gmp-impl.h defines INT_MAX as something not
>> preprocessor-friendly (with casts). The combination doesn't work.
>
> We had similar problems too between MPFR and gmp-impl.h in the past.
> The answer by Torbjorn was that gmp-impl.h is a GMP internal and
> mustn't be included by users.

Er, ok, but that doesn't tell me how to make the GMP testsuite pass (I am 
not talking about external use).

-- 
Marc Glisse


More information about the gmp-bugs mailing list