diff options
Diffstat (limited to 'src/stdlib/strtod.c')
| -rw-r--r-- | src/stdlib/strtod.c | 11 | 
1 files changed, 10 insertions, 1 deletions
| diff --git a/src/stdlib/strtod.c b/src/stdlib/strtod.c index 388058fe..98b992a1 100644 --- a/src/stdlib/strtod.c +++ b/src/stdlib/strtod.c @@ -1,6 +1,15 @@  #include <stdlib.h> +#include "floatscan.h" +#include "stdio_impl.h"  double strtod(const char *s, char **p)  { -	return strtold(s, p); +	FILE f = { +		.buf = (void *)s, .rpos = (void *)s, +		.rend = (void *)-1, .lock = -1 +	}; +	off_t cnt; +	double y = __floatscan(&f, -1, 1, 1, &cnt); +	if (p) *p = (char *)s + cnt; +	return y;  } | 
