Re: Cleanup shadows variable warnings, round 1
Peter Smith <smithpb2250@gmail.com>
From: Peter Smith <smithpb2250@gmail.com>
To: Chao Li <li.evan.chao@gmail.com>
Cc: Peter Eisentraut <peter@eisentraut.org>, Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-12-04T01:08:37Z
Lists: pgsql-hackers
FWIW... A few more review comments for v3.
//////////
Patch v3-0001.
//////////
======
src/backend/access/gist/gistbuild.c
2.1.
OK, but should you take it 1 step further?
BEFORE
foreach(lc, splitinfo)
{
GISTPageSplitInfo *si = lfirst(lc);
AFTER
foreach_ptr(GISTPageSplitInfo, si, splitinfo)
{
======
src/backend/commands/schemacmds.c
2.2.
OK, but should you take it 1 step further?
BEFORE
foreach(parsetree_item, parsetree_list)
{
Node *substmt = (Node *) lfirst(parsetree_item);
AFTER
foreach_ptr(Node, substmt, parsetree_list)
{
======
src/backend/commands/statscmds.c
2.3.
OK, but I felt 'attnums_bms' might be a better replacement name than 'attnumsbm'
======
src/backend/executor/nodeValuesscan.c
2.4.
OK, but should you take it 1 step further?
BEFORE
foreach(lc, exprstatelist)
{
ExprState *exprstate = (ExprState *) lfirst(lc);
AFTER
foreach_ptr(ExprState, exprstate, exprstatelist)
{
======
src/backend/statistics/dependencies.c
2.5.
The other variable in other parts of this function had names like:
clause_expr
bool_expr
or_expr
stat_expr
So, perhaps your new names should be changed slightly to look more
similar to those?
======
src/backend/statistics/extended_stats.c
2.6.
This seems to be in the wrong patch because here you renamed the local
var, not the inner one, as the patch commit message says.
======
src/backend/utils/adt/jsonpath_exec.c
2.7.
Wondering if 'vals' might be a better name than 'foundJV' (there is
already another JsonValueList vals elsewhere in this code).
======
src/bin/pgbench/pgbench.c
2.8.
Wondering if 'nskipped' is a better name than 'skips'.
//////////
Patch v3-0003
//////////
LGTM.
======
Kind Regards,
Peter Smith.
Fujitsu Australia
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix new-to-v19 -Wshadow warnings
- 4f0cbc6fb5df 19 (unreleased) landed
-
Reduce scope of for-loop-local variables to avoid shadowing
- cece37c9843c 19 (unreleased) landed
-
Fix local-variable shadowing in pg_trgm's printSourceNFA().
- cdaa67565867 19 (unreleased) cited