From 96e9773eb764afa649b099a6e283dba4c69389a9 Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Mon, 16 Apr 2012 16:55:24 -0400 Subject: use the new integer parser (FILE/shgetc based) for strtol, wcstol, etc. --- src/stdlib/strtoimax.c | 38 -------------------------------------- 1 file changed, 38 deletions(-) delete mode 100644 src/stdlib/strtoimax.c (limited to 'src/stdlib/strtoimax.c') diff --git a/src/stdlib/strtoimax.c b/src/stdlib/strtoimax.c deleted file mode 100644 index 671aa287..00000000 --- a/src/stdlib/strtoimax.c +++ /dev/null @@ -1,38 +0,0 @@ -#include -#include -#include -#include "intparse.h" - -intmax_t strtoimax(const char *s1, char **p, int base) -{ - const unsigned char *s = (void *)s1; - struct intparse ip = {0}; - - if (p) *p = (char *)s1; - - if (base && base-2U > 34) { - errno = EINVAL; - return 0; - } - - for (; isspace(*s); s++); - - ip.base = base; - __intparse(&ip, s, SIZE_MAX); - - if (p && ip.err != EINVAL) - *p = (char *)s + ip.cnt; - - if (ip.err) { - errno = ip.err; - if (ip.err == EINVAL) return 0; - return ip.neg ? INTMAX_MIN : INTMAX_MAX; - } - - if (ip.val > INTMAX_MAX) { - if (!ip.neg || -ip.val != INTMAX_MIN) - errno = ERANGE; - return ip.neg ? INTMAX_MIN : INTMAX_MAX; - } - return ip.neg ? -ip.val : ip.val; -} -- cgit v1.2.1