]> granicus.if.org Git - postgresql/commitdiff
Suppress compiler warning about no function return value.
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 17 Dec 2017 05:41:41 +0000 (00:41 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 17 Dec 2017 05:41:41 +0000 (00:41 -0500)
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.

src/backend/utils/adt/int8.c

index a8e2200852564806966b296d4d79b74f892de8d7..24c9150893659db0b7c5881dcf403c69d755bbeb 100644 (file)
@@ -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()