Various patches against gmp-4.3.0

Torbjorn Granlund tg at
Fri May 1 10:18:51 CEST 2009

Michiel De Wilde <mdewilde.agilent at> writes:

   o always_include_stdarg.difffixes forgotten stdarg.h inclusion in

Not forgotten, but policy of portability.

   o binvert_mpn_neg_n_handling.difffixes invalid redefinition of

Fixed (slightly differently).

   o dont_redefine_restrict_keyword.diffWindows does not like the
   redefinition of "restrict" as it is being used in some win32 headers

This is in an internal gmp file.  Please explain why this can be a

   o forgotten_cstdio.difffixes forgotten cstdio.h inclusion in

I need feedback from the C++ experts about this patch.
What problem is this patch trying to solve?

   o forgotten_extern_C.difffix for where an extra extern
   "C" is needed

Why is this needed?

   o much_more_declspecs.diffin order to make a GMP dll and run the
   testsuite on it, a lot of functions need to be exported in the dll
   that currently aren&#39;t

I don't see how gmp-impl.h needs this patching.  Please explain!

   o mul_bad_want_assert.diffdon&#39;t declare a variable in the middle
   of a block in plain C


   o relax_multiple_symbols.difffix for t-locale where the same symbol
   (don&#39;t remember which) appears twice

This patch looks really strange.  Is this something needed on Windoze?
(Surely, this would break build on any non-Windoze system.)

   o replace_strcasecmp.diffstrcasecmp does not exist on Windows, but
   there is an identical alternative: lstrcmpiA

This sort of patching around individual system brokeness is very
problematic.  I need to thing about this.

   o repl-vsnprintf.c.difffix for an error in repl-vsnprintf.c

What error?  Do you have a test case?

   o visual_c_sun_inline.diffcorrect __GMP_EXTERN_INLINE definitions for
   Visual Studio and Sun

Do these changes require certain versions of these compilers?  I.e., do
we risk to require users to upgrade their non-free compilers if we make
that change?


More information about the gmp-devel mailing list