Bug#172562: libc6: hex floats negative exponent
Package: libc6
Version: 2.3.1-5
A program foo.c,
#include <stdio.h>
#include <stdlib.h>
int
main (void)
{
printf ("%f\n", strtod("0x10p-1",NULL));
}
prints 1.0, where I expected it to print 8.0, since the exponent for a
hex float is a power of 2.
For what it's worth, this only seems to be a problem for small
negative exponents, when there's more mantissa digits than the
exponent value. But obviously one failing case is better than any
amount of speculation :).
Reply to: