| From: | Imran Zaheer <imran(dot)zhir(at)gmail(dot)com> |
|---|---|
| To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Silence -Wmaybe-uninitialized warnings |
| Date: | 2026-04-03 14:14:18 |
| Message-ID: | CA+UBfa=SeR0svDvEADTwqPZPetxoTP7QXCSYhHsD_pK4y3P7yA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi
I pulled the latest HEAD today and found some more -Wmaybe-uninitialized
warnings.
```
[1/6] Compiling C object
src/interfaces/ecpg/test/pg_regress_ecpg.p/.._.._.._test_regress_pg_regress.c.o
../src/test/regress/pg_regress.c: In function ‘results_differ’:
../src/test/regress/pg_regress.c:1577:17: warning: ‘startpos’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
1577 | fseek(difffile, startpos, SEEK_SET);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[2/6] Compiling C object
src/test/isolation/pg_isolation_regress.p/.._regress_pg_regress.c.o
../src/test/regress/pg_regress.c: In function ‘results_differ’:
../src/test/regress/pg_regress.c:1577:17: warning: ‘startpos’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
1577 | fseek(difffile, startpos, SEEK_SET);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[3/6] Compiling C object src/test/regress/pg_regress.p/pg_regress.c.o
../src/test/regress/pg_regress.c: In function ‘results_differ’:
../src/test/regress/pg_regress.c:1577:17: warning: ‘startpos’ may be used
uninitialized in this function [-Wmaybe-uninitialized]
1577 | fseek(difffile, startpos, SEEK_SET);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
Here is the updated v2 patch addressing them.
Regards,
Imran Zaheer
On Thu, Apr 2, 2026 at 2:49 PM Imran Zaheer <imran(dot)zhir(at)gmail(dot)com> wrote:
> Hi
>
> When building postgresql with CFLAGS="-Og" gcc emits
> '-Wmaybe-uninitialized' warnings at few places. The variables are
> initialized on all execution paths but the compiler was not able to
> prove it with the additional optimization flag enabled. The patch
> initializes the variables with NULL to silence the warnings. No
> functional change intended.
>
> ```
> [646/2085] Compiling C object
> src/backend/postgres_lib.a.p/commands_copyfromparse.c.o
> ../src/backend/commands/copyfromparse.c: In function ‘CopyFromTextOneRow’:
> ../src/backend/commands/copyfromparse.c:995:39: warning:
> ‘field_strings’ may be used uninitialized in this function
> [-Wmaybe-uninitialized]
> 995 | string = field_strings[fieldno++];
> | ^
> ../src/backend/commands/copyfromparse.c:961:21: note: ‘field_strings’
> was declared here
> 961 | char **field_strings;
> | ^~~~~~~~~~~~~
> ../src/backend/commands/copyfromparse.c: In function ‘CopyFromCSVOneRow’:
> ../src/backend/commands/copyfromparse.c:995:39: warning:
> ‘field_strings’ may be used uninitialized in this function
> [-Wmaybe-uninitialized]
> 995 | string = field_strings[fieldno++];
> | ^
> ../src/backend/commands/copyfromparse.c:961:21: note: ‘field_strings’
> was declared here
> 961 | char **field_strings;
> | ^~~~~~~~~~~~~
> [889/2085] Compiling C object
> src/backend/postgres_lib.a.p/partitioning_partbounds.c.o
> ../src/backend/partitioning/partbounds.c: In function
> ‘check_partition_bounds_for_split_range’:
> ../src/backend/partitioning/partbounds.c:5452:57: warning: ‘datum’ may
> be used uninitialized in this function [-Wmaybe-uninitialized]
> 5452 |
> parser_errposition(pstate, exprLocation((Node *) datum)));
> |
> ```
> gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0
>
>
> Regards
> Imran Zaheer
>
| Attachment | Content-Type | Size |
|---|---|---|
| v2-0001-Silence-Wmaybe-uninitialized-warnings.patch | text/x-patch | 2.0 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Marcos Pegoraro | 2026-04-03 14:34:57 | Re: PATCH: jsonpath string methods: lower, upper, initcap, l/r/btrim, replace, split_part |
| Previous Message | Imran Zaheer | 2026-04-03 13:56:01 | Remove commented-out code in 026_overwrite_contrecord.pl |