https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67419

--- Comment #5 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot 
Uni-Bielefeld.DE> ---
>> --- Comment #3 from Francois-Xavier Coudert <fxcoudert at gcc dot gnu.org> 
>> ---
>> (In reply to r...@cebitec.uni-bielefeld.de from comment #2)
>>> The result is identical for both the mainline libgfortran.so.3 and the
>>> bundled gcc 4.8 libgfortran.so.3, so this might well be a libm bug
>>> introduced in Solaris 12.
>>
>> What if you compile the following C source (with "gcc -lm") and run it?
>>
>> int main (void)
>> {
>>   long double x;
>>   x = 789.1356;
>>   __builtin_printf ("%.30Lg\n", x);
>>   __builtin_printf ("%.30Lg\n", __builtin_sqrtl(x));
>> }
>
> I get
>
> 789.13559999999995397956809029
> -NaN

If I drop the __builtin_ and include <stdio.h> and <math.h> instead, I
get the expected

789.13559999999995397956809029
28.0915574505935849505420666378

        Rainer

Reply via email to