[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#209136: libc6: printf %#.0g incorrect output



The bitwise construction of the floating-point numbers is a red herring.
This much simpler test yields the same result:

printf("%#.0g\n", 0.000956);
printf("%#.0g\n", 0.000098);

According to my understanding of the man page and the C99 spec, the
output should be:

0.001
0.0001

The Solaris printf() agrees with that, but the glibc 2.3.1 printf()
outputs:

0.0010
1.e-04

AMC



Reply to: