diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2017-12-17 00:41:41 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2017-12-17 00:41:41 -0500 |
commit | b31a9d7dd3bf8435fddf404c4b75236d0ea76d78 (patch) | |
tree | c57daeae33437c4e3dad138510e667d96ddc8ecf /src/backend/utils/adt/int8.c | |
parent | c04d35f442a8c4fd5a20103b31839ec52fce3046 (diff) | |
download | postgresql-b31a9d7dd3bf8435fddf404c4b75236d0ea76d78.tar.gz postgresql-b31a9d7dd3bf8435fddf404c4b75236d0ea76d78.zip |
Suppress compiler warning about no function return value.
Compilers that don't know that ereport(ERROR) doesn't return
complained about the new coding in scanint8() introduced by
commit 101c7ee3e. Tweak coding to avoid the warning.
Per buildfarm.
Diffstat (limited to 'src/backend/utils/adt/int8.c')
-rw-r--r-- | src/backend/utils/adt/int8.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/src/backend/utils/adt/int8.c b/src/backend/utils/adt/int8.c index a8e22008525..24c91508936 100644 --- a/src/backend/utils/adt/int8.c +++ b/src/backend/utils/adt/int8.c @@ -81,9 +81,7 @@ scanint8(const char *str, bool errorOK, int64 *result) /* require at least one digit */ if (unlikely(!isdigit((unsigned char) *ptr))) - { goto invalid_syntax; - } /* process digits */ while (*ptr && isdigit((unsigned char) *ptr)) @@ -108,26 +106,25 @@ scanint8(const char *str, bool errorOK, int64 *result) goto out_of_range; tmp = -tmp; } - *result = tmp; + *result = tmp; return true; out_of_range: - if (errorOK) - return false; - else + if (!errorOK) ereport(ERROR, (errcode(ERRCODE_NUMERIC_VALUE_OUT_OF_RANGE), errmsg("value \"%s\" is out of range for type %s", str, "bigint"))); + return false; + invalid_syntax: - if (errorOK) - return false; - else + if (!errorOK) ereport(ERROR, (errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("invalid input syntax for integer: \"%s\"", str))); + return false; } /* int8in() |