+2008-03-30 Eric Blake <ebb9@byu.net>
+
+ strtod touchups.
+ * lib/strtod.c (strtod): Avoid compiler warnings.
+ Reported by Jim Meyering.
+
2008-03-30 Bruno Haible <bruno@clisp.org>
* lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
goto noconv;
}
- s = nptr;
+ /* Use unsigned char for the ctype routines. */
+ s = (unsigned char *) nptr;
/* Eat whitespace. */
while (isspace (*s))
/* Get the exponent specified after the `e' or `E'. */
int save = errno;
char *end;
- long int exp;
+ long int value;
errno = 0;
++s;
- exp = strtol (s, &end, 10);
+ value = strtol ((char *) s, &end, 10);
if (errno == ERANGE && num)
{
/* The exponent overflowed a `long int'. It is probably a safe
a `long int' exceeds the limits of a `double'. */
if (endptr != NULL)
*endptr = end;
- if (exp < 0)
+ if (value < 0)
goto underflow;
else
goto overflow;
the 'e' or 'E', so *ENDPTR will be set there. */
end = (char *) s - 1;
errno = save;
- s = end;
- exponent += exp;
+ s = (unsigned char *) end;
+ exponent += value;
}
if (num == 0.0)