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