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 :).