BUG: printf suppress zeros of a decimal number

Stefani Seibold stefani at seibold.net
Wed May 4 06:07:37 UTC 2011


Am Dienstag, den 03.05.2011, 18:29 +0200 schrieb Bernhard
Reutner-Fischer:
> On Tue, May 03, 2011 at 05:19:12PM +0200, Stefani Seibold wrote:
> >
> >Am Dienstag, den 03.05.2011, 17:01 +0200 schrieb Bernhard
> >Reutner-Fischer:
> >> On Mon, May 02, 2011 at 10:07:22PM +0200, Stefani Seibold wrote:
> >> >The following simple test should print 300, but it shows only 3.
> >> >
> >> >#include <stdio.h>
> >> >
> >> >int main(void)
> >> >{
> >> >	printf("%f\n", 300.0);
> >> >	return 0;
> >> >}
> >> >
> >> >printf eats all following zero's after the last non zero digit.
> >> >
> >> >If have tested it with uClibc 0.9.32-rc3 and the current snapshot.
> >> 
> >> 
> >> What arch, toolchain, config are you using?
> >> 
> >> Works For Me (tm):
> >> $ for i in bug{_glibc,};do echo $i: ; ./$i;done
> >> bug_glibc:
> >> 300.000000
> >> bug:
> >> 300.000000
> >
> >I using a ct-ng-1.10.1 build. The error happens with ppc and x86
> 
> This doesn't tell me anything.. Which versions of gcc, binutils?
> 

Sorry...

binutils-2.21
gcc-4.5.2
uClibc-0.9.32-rc3
cloog-ppl-0.15.10
gmp-5.0.1
linux-2.6.35.10
mpc-0.8.2
mpfr-3.0.0
ppl-0.11

I build with cross-tool ng v1.10.1 some cross compilers for
uClib-0.9.32-rc3 and  eglibc-2_12 for x86, powerpc and arm. The eglibc
compiled example works as expected and the uClibc code shows the error
independent of the architecture.




More information about the uClibc mailing list