On Thu, 6 Oct 2022 at 11:50, David Rowley <dgrowle...@gmail.com> wrote:
>
> On Thu, 6 Oct 2022 at 10:40, Andres Freund <and...@anarazel.de> wrote:
> > Your commit message said the last shadowed variable. But building with
> > -Wshadow=compatible-local triggers a bunch of warnings for me (see trimmed 
> > at
> > the end).  Looks like it "only" fixed it for src/, without optional
> > dependencies like gssapi and python.
>
> Well, that's embarrassing. You're right. I only fixed the ones I saw
> from running make in the base directory of the tree.  I'll set about
> fixing these nownow.

Here's a patch which (I think) fixes the ones I missed.

David
diff --git a/contrib/bloom/blinsert.c b/contrib/bloom/blinsert.c
index e64291e049..dd26d6ac29 100644
--- a/contrib/bloom/blinsert.c
+++ b/contrib/bloom/blinsert.c
@@ -232,8 +232,6 @@ blinsert(Relation index, Datum *values, bool *isnull,
 
        if (metaData->nEnd > metaData->nStart)
        {
-               Page            page;
-
                blkno = metaData->notFullPage[metaData->nStart];
                Assert(blkno != InvalidBlockNumber);
 
diff --git a/contrib/file_fdw/file_fdw.c b/contrib/file_fdw/file_fdw.c
index de0b9a109c..67821cd25b 100644
--- a/contrib/file_fdw/file_fdw.c
+++ b/contrib/file_fdw/file_fdw.c
@@ -450,15 +450,15 @@ get_file_fdw_attribute_options(Oid relid)
        for (attnum = 1; attnum <= natts; attnum++)
        {
                Form_pg_attribute attr = TupleDescAttr(tupleDesc, attnum - 1);
-               List       *options;
+               List       *column_options;
                ListCell   *lc;
 
                /* Skip dropped attributes. */
                if (attr->attisdropped)
                        continue;
 
-               options = GetForeignColumnOptions(relid, attnum);
-               foreach(lc, options)
+               column_options = GetForeignColumnOptions(relid, attnum);
+               foreach(lc, column_options)
                {
                        DefElem    *def = (DefElem *) lfirst(lc);
 
@@ -480,7 +480,7 @@ get_file_fdw_attribute_options(Oid relid)
                                        fncolumns = lappend(fncolumns, 
makeString(attname));
                                }
                        }
-                       /* maybe in future handle other options here */
+                       /* maybe in future handle other column options here */
                }
        }
 
diff --git a/contrib/hstore/hstore.h b/contrib/hstore/hstore.h
index 4713e6ea7a..897af244a4 100644
--- a/contrib/hstore/hstore.h
+++ b/contrib/hstore/hstore.h
@@ -128,15 +128,15 @@ typedef struct
 /* finalize a newly-constructed hstore */
 #define HS_FINALIZE(hsp_,count_,buf_,ptr_)                                     
                \
        do {                                                                    
                                                \
-               int buflen = (ptr_) - (buf_);                                   
                        \
+               int _buflen = (ptr_) - (buf_);                                  
                        \
                if ((count_))                                                   
                                        \
                        ARRPTR(hsp_)[0].entry |= HENTRY_ISFIRST;                
                \
                if ((count_) != HS_COUNT((hsp_)))                               
                        \
                {                                                               
                                                        \
                        HS_SETCOUNT((hsp_),(count_));                           
                        \
-                       memmove(STRPTR(hsp_), (buf_), buflen);                  
                \
+                       memmove(STRPTR(hsp_), (buf_), _buflen);                 
                \
                }                                                               
                                                        \
-               SET_VARSIZE((hsp_), CALCDATASIZE((count_), buflen));            
\
+               SET_VARSIZE((hsp_), CALCDATASIZE((count_), _buflen));           
\
        } while (0)
 
 /* ensure the varlena size of an existing hstore is correct */
diff --git a/contrib/postgres_fdw/deparse.c b/contrib/postgres_fdw/deparse.c
index 09f37fb77a..9524765650 100644
--- a/contrib/postgres_fdw/deparse.c
+++ b/contrib/postgres_fdw/deparse.c
@@ -943,8 +943,6 @@ foreign_expr_walker(Node *node,
                                 */
                                if (agg->aggorder)
                                {
-                                       ListCell   *lc;
-
                                        foreach(lc, agg->aggorder)
                                        {
                                                SortGroupClause *srt = 
(SortGroupClause *) lfirst(lc);
diff --git a/contrib/postgres_fdw/postgres_fdw.c 
b/contrib/postgres_fdw/postgres_fdw.c
index dd858aba03..8d013f5b1a 100644
--- a/contrib/postgres_fdw/postgres_fdw.c
+++ b/contrib/postgres_fdw/postgres_fdw.c
@@ -1341,8 +1341,6 @@ postgresGetForeignPlan(PlannerInfo *root,
                 */
                if (outer_plan)
                {
-                       ListCell   *lc;
-
                        /*
                         * Right now, we only consider grouping and aggregation 
beyond
                         * joins. Queries involving aggregates or grouping do 
not require
@@ -6272,10 +6270,10 @@ foreign_grouping_ok(PlannerInfo *root, RelOptInfo 
*grouped_rel,
                                 */
                                foreach(l, aggvars)
                                {
-                                       Expr       *expr = (Expr *) lfirst(l);
+                                       Expr       *aggref = (Expr *) lfirst(l);
 
-                                       if (IsA(expr, Aggref))
-                                               tlist = 
add_to_flat_tlist(tlist, list_make1(expr));
+                                       if (IsA(aggref, Aggref))
+                                               tlist = 
add_to_flat_tlist(tlist, list_make1(aggref));
                                }
                        }
                }
@@ -6289,8 +6287,6 @@ foreign_grouping_ok(PlannerInfo *root, RelOptInfo 
*grouped_rel,
         */
        if (havingQual)
        {
-               ListCell   *lc;
-
                foreach(lc, (List *) havingQual)
                {
                        Expr       *expr = (Expr *) lfirst(lc);
@@ -6324,7 +6320,6 @@ foreign_grouping_ok(PlannerInfo *root, RelOptInfo 
*grouped_rel,
        if (fpinfo->local_conds)
        {
                List       *aggvars = NIL;
-               ListCell   *lc;
 
                foreach(lc, fpinfo->local_conds)
                {
diff --git a/src/interfaces/libpq/fe-secure-gssapi.c 
b/src/interfaces/libpq/fe-secure-gssapi.c
index 6ea52ed866..dee0982eba 100644
--- a/src/interfaces/libpq/fe-secure-gssapi.c
+++ b/src/interfaces/libpq/fe-secure-gssapi.c
@@ -135,11 +135,11 @@ pg_GSS_write(PGconn *conn, const void *ptr, size_t len)
                 */
                if (PqGSSSendLength)
                {
-                       ssize_t         ret;
+                       ssize_t         retval;
                        ssize_t         amount = PqGSSSendLength - 
PqGSSSendNext;
 
-                       ret = pqsecure_raw_write(conn, PqGSSSendBuffer + 
PqGSSSendNext, amount);
-                       if (ret <= 0)
+                       retval = pqsecure_raw_write(conn, PqGSSSendBuffer + 
PqGSSSendNext, amount);
+                       if (retval <= 0)
                        {
                                /*
                                 * Report any previously-sent data; if there 
was none, reflect
@@ -149,16 +149,16 @@ pg_GSS_write(PGconn *conn, const void *ptr, size_t len)
                                 */
                                if (bytes_sent)
                                        return bytes_sent;
-                               return ret;
+                               return retval;
                        }
 
                        /*
                         * Check if this was a partial write, and if so, move 
forward that
                         * far in our buffer and try again.
                         */
-                       if (ret != amount)
+                       if (retval != amount)
                        {
-                               PqGSSSendNext += ret;
+                               PqGSSSendNext += retval;
                                continue;
                        }
 
diff --git a/src/pl/plpython/plpy_cursorobject.c 
b/src/pl/plpython/plpy_cursorobject.c
index 6b6e743345..57e8f8ec21 100644
--- a/src/pl/plpython/plpy_cursorobject.c
+++ b/src/pl/plpython/plpy_cursorobject.c
@@ -215,18 +215,18 @@ PLy_cursor_plan(PyObject *ob, PyObject *args)
                        PyObject   *elem;
 
                        elem = PySequence_GetItem(args, j);
-                       PG_TRY();
+                       PG_TRY(2);
                        {
                                bool            isnull;
 
                                plan->values[j] = PLy_output_convert(arg, elem, 
&isnull);
                                nulls[j] = isnull ? 'n' : ' ';
                        }
-                       PG_FINALLY();
+                       PG_FINALLY(2);
                        {
                                Py_DECREF(elem);
                        }
-                       PG_END_TRY();
+                       PG_END_TRY(2);
                }
 
                portal = SPI_cursor_open(NULL, plan->plan, plan->values, nulls,
diff --git a/src/pl/plpython/plpy_exec.c b/src/pl/plpython/plpy_exec.c
index 150b3a5977..74d5b70583 100644
--- a/src/pl/plpython/plpy_exec.c
+++ b/src/pl/plpython/plpy_exec.c
@@ -375,11 +375,11 @@ PLy_exec_trigger(FunctionCallInfo fcinfo, PLyProcedure 
*proc)
                                rv = NULL;
                        else if (pg_strcasecmp(srv, "MODIFY") == 0)
                        {
-                               TriggerData *tdata = (TriggerData *) 
fcinfo->context;
+                               TriggerData *trigdata = (TriggerData *) 
fcinfo->context;
 
-                               if (TRIGGER_FIRED_BY_INSERT(tdata->tg_event) ||
-                                       
TRIGGER_FIRED_BY_UPDATE(tdata->tg_event))
-                                       rv = PLy_modify_tuple(proc, plargs, 
tdata, rv);
+                               if (TRIGGER_FIRED_BY_INSERT(trigdata->tg_event) 
||
+                                       
TRIGGER_FIRED_BY_UPDATE(trigdata->tg_event))
+                                       rv = PLy_modify_tuple(proc, plargs, 
trigdata, rv);
                                else
                                        ereport(WARNING,
                                                        (errmsg("PL/Python 
trigger function returned \"MODIFY\" in a DELETE trigger -- ignored")));
diff --git a/src/pl/plpython/plpy_spi.c b/src/pl/plpython/plpy_spi.c
index 9a71a42c15..6b9f8d5b43 100644
--- a/src/pl/plpython/plpy_spi.c
+++ b/src/pl/plpython/plpy_spi.c
@@ -236,18 +236,18 @@ PLy_spi_execute_plan(PyObject *ob, PyObject *list, long 
limit)
                        PyObject   *elem;
 
                        elem = PySequence_GetItem(list, j);
-                       PG_TRY();
+                       PG_TRY(2);
                        {
                                bool            isnull;
 
                                plan->values[j] = PLy_output_convert(arg, elem, 
&isnull);
                                nulls[j] = isnull ? 'n' : ' ';
                        }
-                       PG_FINALLY();
+                       PG_FINALLY(2);
                        {
                                Py_DECREF(elem);
                        }
-                       PG_END_TRY();
+                       PG_END_TRY(2);
                }
 
                rv = SPI_execute_plan(plan->plan, plan->values, nulls,
diff --git a/src/test/modules/test_integerset/test_integerset.c 
b/src/test/modules/test_integerset/test_integerset.c
index 578d2e8aec..813ca4ba6b 100644
--- a/src/test/modules/test_integerset/test_integerset.c
+++ b/src/test/modules/test_integerset/test_integerset.c
@@ -585,26 +585,26 @@ test_huge_distances(void)
         */
        for (int i = 0; i < num_values; i++)
        {
-               uint64          x = values[i];
+               uint64          y = values[i];
                bool            expected;
                bool            result;
 
-               if (x > 0)
+               if (y > 0)
                {
-                       expected = (values[i - 1] == x - 1);
-                       result = intset_is_member(intset, x - 1);
+                       expected = (values[i - 1] == y - 1);
+                       result = intset_is_member(intset, y - 1);
                        if (result != expected)
-                               elog(ERROR, "intset_is_member failed for " 
UINT64_FORMAT, x - 1);
+                               elog(ERROR, "intset_is_member failed for " 
UINT64_FORMAT, y - 1);
                }
 
-               result = intset_is_member(intset, x);
+               result = intset_is_member(intset, y);
                if (result != true)
-                       elog(ERROR, "intset_is_member failed for " 
UINT64_FORMAT, x);
+                       elog(ERROR, "intset_is_member failed for " 
UINT64_FORMAT, y);
 
-               expected = (i != num_values - 1) ? (values[i + 1] == x + 1) : 
false;
-               result = intset_is_member(intset, x + 1);
+               expected = (i != num_values - 1) ? (values[i + 1] == y + 1) : 
false;
+               result = intset_is_member(intset, y + 1);
                if (result != expected)
-                       elog(ERROR, "intset_is_member failed for " 
UINT64_FORMAT, x + 1);
+                       elog(ERROR, "intset_is_member failed for " 
UINT64_FORMAT, y + 1);
        }
 
        /*

Reply via email to