From: Tom Lane Date: Sat, 23 Apr 2016 20:53:15 +0000 (-0400) Subject: Rename strtoi() to strtoint(). X-Git-Tag: REL9_2_17~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0f54912837ec3f1dc352627b18dca3d7d54fc787;p=thirdparty%2Fpostgresql.git Rename strtoi() to strtoint(). NetBSD has seen fit to invent a libc function named strtoi(), which conflicts with the long-established static functions of the same name in datetime.c and ecpg's interval.c. While muttering darkly about intrusions on application namespace, we'll rename our functions to avoid the conflict. Back-patch to all supported branches, since this would affect attempts to build any of them on recent NetBSD. Thomas Munro --- diff --git a/src/backend/utils/adt/datetime.c b/src/backend/utils/adt/datetime.c index 5ea40b5c90f..9379e94fc30 100644 --- a/src/backend/utils/adt/datetime.c +++ b/src/backend/utils/adt/datetime.c @@ -254,10 +254,10 @@ static const datetkn *abbrevcache[MAXDATEFIELDS] = {NULL}; /* - * strtoi --- just like strtol, but returns int not long + * strtoint --- just like strtol, but returns int not long */ static int -strtoi(const char *nptr, char **endptr, int base) +strtoint(const char *nptr, char **endptr, int base) { long val; @@ -830,7 +830,7 @@ DecodeDateTime(char **field, int *ftype, int nf, return DTERR_BAD_FORMAT; errno = 0; - val = strtoi(field[i], &cp, 10); + val = strtoint(field[i], &cp, 10); if (errno == ERANGE || val < 0) return DTERR_FIELD_OVERFLOW; @@ -982,7 +982,7 @@ DecodeDateTime(char **field, int *ftype, int nf, int val; errno = 0; - val = strtoi(field[i], &cp, 10); + val = strtoint(field[i], &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; @@ -1838,7 +1838,7 @@ DecodeTimeOnly(char **field, int *ftype, int nf, } errno = 0; - val = strtoi(field[i], &cp, 10); + val = strtoint(field[i], &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; @@ -2506,13 +2506,13 @@ DecodeTime(char *str, int fmask, int range, *tmask = DTK_TIME_M; errno = 0; - tm->tm_hour = strtoi(str, &cp, 10); + tm->tm_hour = strtoint(str, &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; if (*cp != ':') return DTERR_BAD_FORMAT; errno = 0; - tm->tm_min = strtoi(cp + 1, &cp, 10); + tm->tm_min = strtoint(cp + 1, &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; if (*cp == '\0') @@ -2540,7 +2540,7 @@ DecodeTime(char *str, int fmask, int range, else if (*cp == ':') { errno = 0; - tm->tm_sec = strtoi(cp + 1, &cp, 10); + tm->tm_sec = strtoint(cp + 1, &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; if (*cp == '\0') @@ -2590,7 +2590,7 @@ DecodeNumber(int flen, char *str, bool haveTextMonth, int fmask, *tmask = 0; errno = 0; - val = strtoi(str, &cp, 10); + val = strtoint(str, &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; if (cp == str) @@ -2877,7 +2877,7 @@ DecodeTimezone(char *str, int *tzp) return DTERR_BAD_FORMAT; errno = 0; - hr = strtoi(str + 1, &cp, 10); + hr = strtoint(str + 1, &cp, 10); if (errno == ERANGE) return DTERR_TZDISP_OVERFLOW; @@ -2885,13 +2885,13 @@ DecodeTimezone(char *str, int *tzp) if (*cp == ':') { errno = 0; - min = strtoi(cp + 1, &cp, 10); + min = strtoint(cp + 1, &cp, 10); if (errno == ERANGE) return DTERR_TZDISP_OVERFLOW; if (*cp == ':') { errno = 0; - sec = strtoi(cp + 1, &cp, 10); + sec = strtoint(cp + 1, &cp, 10); if (errno == ERANGE) return DTERR_TZDISP_OVERFLOW; } @@ -3164,7 +3164,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range, } errno = 0; - val = strtoi(field[i], &cp, 10); + val = strtoint(field[i], &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; @@ -3173,7 +3173,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range, /* SQL "years-months" syntax */ int val2; - val2 = strtoi(cp + 1, &cp, 10); + val2 = strtoint(cp + 1, &cp, 10); if (errno == ERANGE || val2 < 0 || val2 >= MONTHS_PER_YEAR) return DTERR_FIELD_OVERFLOW; if (*cp != '\0') diff --git a/src/interfaces/ecpg/pgtypeslib/interval.c b/src/interfaces/ecpg/pgtypeslib/interval.c index ed972be41e6..f989d999250 100644 --- a/src/interfaces/ecpg/pgtypeslib/interval.c +++ b/src/interfaces/ecpg/pgtypeslib/interval.c @@ -16,7 +16,7 @@ /* copy&pasted from .../src/backend/utils/adt/datetime.c */ static int -strtoi(const char *nptr, char **endptr, int base) +strtoint(const char *nptr, char **endptr, int base) { long val; @@ -448,7 +448,7 @@ DecodeInterval(char **field, int *ftype, int nf, /* int range, */ } errno = 0; - val = strtoi(field[i], &cp, 10); + val = strtoint(field[i], &cp, 10); if (errno == ERANGE) return DTERR_FIELD_OVERFLOW; @@ -457,7 +457,7 @@ DecodeInterval(char **field, int *ftype, int nf, /* int range, */ /* SQL "years-months" syntax */ int val2; - val2 = strtoi(cp + 1, &cp, 10); + val2 = strtoint(cp + 1, &cp, 10); if (errno == ERANGE || val2 < 0 || val2 >= MONTHS_PER_YEAR) return DTERR_FIELD_OVERFLOW; if (*cp != '\0')