[PATCH committed] Fix build failure with MPFR 2.4.x (gimple-ssa-sprintf.c)

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Fri Jan 27 07:45:00 GMT 2017


Hi Martin,

> On 01/24/2017 02:37 AM, Markus Trippelsdorf wrote:
>> MPFR_RNDx was introduced in MPFR 3.0.0. Since the minimal version that
>> gcc checks for is 2.4.0, this leads to a build failure.
>>
>> The fix is straightforward.
>>
>> Tested on x86_64-pc-linux-gnu. Committed to trunk as obvious.
>>
>> 	* gimple-ssa-sprintf.c (format_floating): Change MPFR_RNDx to
>> 	GMP_RNDx for compatibility.
>
> This was changed once before for this reason (in r240350).  I forgot
> all about it and put it back in my latest patch for some reason.  I
> don't remember why exactly but I suspect I might have been trying to
> overcome some MPFR oddity.  It might help to #undef the MPFR_RNDx
> macros after including <mpfr.h> to avoid this in the future.  In any
> event, thanks for the fix.

we certainly should do something like this: your latest patch introduced
the same failure again:

/vol/gcc/src/hg/trunk/local/gcc/gimple-ssa-sprintf.c: In function 'long long unsigned int {anonymous}::format_floating_max(tree, char, long long int)':
/vol/gcc/src/hg/trunk/local/gcc/gimple-ssa-sprintf.c:1501:27: error: 'MPFR_RNDN' was not declared in this scope
   mpfr_from_real (x, &rv, MPFR_RNDN);
                           ^
Makefile:1098: recipe for target 'gimple-ssa-sprintf.o' failed
make[3]: *** [gimple-ssa-sprintf.o] Error 1

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University



More information about the Gcc-patches mailing list