Compiler warning when using TRGM_REGEXP_DEBUG

From: Sergei Kornilov <sk(at)zsrv(dot)org>
To: PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Compiler warning when using TRGM_REGEXP_DEBUG
Date: 2026-03-02 19:07:16
Message-ID: 3009911772478436@08341ecb-668d-43a9-af4d-b45f00c72521
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello!

I was looking into how pg_trgm index support works with regular expressions. When building HEAD with the TRGM_REGEXP_DEBUG option, my compiler warns:

./configure CFLAGS="-DTRGM_REGEXP_DEBUG"
cd contrib/pg_trgm/
make -s

trgm_regexp.c: In function ‘printSourceNFA’:
trgm_regexp.c:2142:41: warning: declaration of ‘i’ shadows a previous local [-Wshadow=compatible-local]
2142 | int i,
| ^
trgm_regexp.c:2133:33: note: shadowed declaration is here
2133 | int i;

I am using gcc (Debian 12.2.0-14+deb12u1) 12.2.0.

Does it make sense to fix this warning? It is possible to either rename this variable or remove the second declaration (the variable is used in another loop after this code).

--- a/contrib/pg_trgm/trgm_regexp.c
+++ b/contrib/pg_trgm/trgm_regexp.c
@@ -2139,8 +2139,7 @@ printSourceNFA(regex_t *regex, TrgmColorInfo *colors, int ncolors)
for (state = 0; state < nstates; state++)
{
regex_arc_t *arcs;
- int i,
- arcsCount;
+ int arcsCount;

appendStringInfo(&buf, "s%d", state);
if (pg_reg_getfinalstate(regex) == state)

regards, Sergei

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Burd 2026-03-02 19:08:50 Re: Expanding HOT updates for expression and partial indexes
Previous Message Tom Lane 2026-03-02 18:56:22 Re: [PATCH] pg_get_domain_ddl: DDL reconstruction function for CREATE DOMAIN statement