patch: Use pg_assume in jsonb_util.c to fix GCC 15 warnings
Dmitry Mityugov <d.mityugov@postgrespro.ru>
From: Dmitry Mityugov <d.mityugov@postgrespro.ru>
To: pgsql-hackers@postgresql.org
Date: 2025-07-10T20:00:00Z
Lists: pgsql-hackers
Attachments
- 0001-Use-pg_assume-in-jsonb_util.c-to-fix-GCC-15-warning.patch (text/x-diff) patch 0001
When compiled with Assert() macro disabled, GCC 15 produces warnings about possibly uninitialized variables in src/backend/utils/adt/jsonb_util.c module. This problem was discussed in detail in this thread, in April 2025: https://www.postgresql.org/message-id/988bf1bc-3f1f-99f3-bf98-222f1cd9dc5e@xs4all.nl . Recently introduced pg_assume() macro let fix such problems easily. The attached patch fixes them in jsonb_util.c module. I verified that PostgreSQL compiles clearly with this patch and GCC 15.1.1 on an x86 64-bit machine (with and without --enable-cassert), and with GCC 14.2.1 on a 64-bit ARM machine. `make check` also passes. I'm attaching the patch. Regards, Dmitry
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Clarify the ra != rb case in compareJsonbContainers().
- 2a3a3964328a 19 (unreleased) landed
-
Silence uninitialized-value warnings in compareJsonbContainers().
- f32e45641460 15.14 landed
- aad1617b76ae 19 (unreleased) landed
- 8254b7e33be9 14.19 landed
- 6c93bf735ce1 13.22 landed
- 5db55e13f210 16.10 landed
- 5a2139a90690 17.6 landed
- 0b6dfce0ce4d 18.0 landed