Re: gcc 13 warnings
Melanie Plageman <melanieplageman@gmail.com>
From: Melanie Plageman <melanieplageman@gmail.com>
To: Pavel Stehule <pavel.stehule@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-03-16T14:21:23Z
Lists: pgsql-hackers
On Thu, Mar 16, 2023 at 9:40 AM Pavel Stehule <pavel.stehule@gmail.com> wrote: > [1700/2287] Compiling C object src/pl/plpgsql/src/plpgsql.so.p/pl_exec.c.o > In file included from ../src/include/access/htup_details.h:22, > from ../src/pl/plpgsql/src/pl_exec.c:21: > In function ‘assign_simple_var’, > inlined from ‘exec_set_found’ at ../src/pl/plpgsql/src/pl_exec.c:8307:2: > ../src/include/varatt.h:230:36: warning: array subscript 0 is outside array bounds of ‘char[0]’ [-Warray-bounds=] > 230 | (((varattrib_1b_e *) (PTR))->va_tag) > | ^ > ../src/include/varatt.h:94:12: note: in definition of macro ‘VARTAG_IS_EXPANDED’ > 94 | (((tag) & ~1) == VARTAG_EXPANDED_RO) > | ^~~ > ../src/include/varatt.h:284:57: note: in expansion of macro ‘VARTAG_1B_E’ > 284 | #define VARTAG_EXTERNAL(PTR) VARTAG_1B_E(PTR) > | ^~~~~~~~~~~ > ../src/include/varatt.h:301:57: note: in expansion of macro ‘VARTAG_EXTERNAL’ > 301 | (VARATT_IS_EXTERNAL(PTR) && !VARTAG_IS_EXPANDED(VARTAG_EXTERNAL(PTR))) > | ^~~~~~~~~~~~~~~ > ../src/pl/plpgsql/src/pl_exec.c:8495:17: note: in expansion of macro ‘VARATT_IS_EXTERNAL_NON_EXPANDED’ > 8495 | VARATT_IS_EXTERNAL_NON_EXPANDED(DatumGetPointer(newvalue))) > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > In function ‘exec_set_found’: > cc1: note: source object is likely at address zero I see these with gcc 12.2.0 also.
Commits
-
Use pg_assume() to avoid compiler warning below exec_set_found()
- 48a23f6eae71 19 (unreleased) landed
-
Add pg_assume(expr) macro
- d65eb5b1b84e 19 (unreleased) landed
-
meson: Change default buildtype to debugoptimized
- 5aae36dc9c68 16.0 landed