bufmgr: Avoid spurious compiler warning after fcb9c977aa5
authorAndres Freund <andres@anarazel.de>
Fri, 16 Jan 2026 11:58:35 +0000 (06:58 -0500)
committerAndres Freund <andres@anarazel.de>
Fri, 16 Jan 2026 11:58:35 +0000 (06:58 -0500)
Some compilers, e.g. gcc with -Og or -O1, warn about the wait_event in
BufferLockAcquire() possibly being uninitialized. That can't actually happen,
as the switch() covers all legal lock mode values, but we still need to
silence the warning.  We could add a default:, but we'd like to get a warning
if we were to get a new lock mode in the future.  So just initialize
wait_event to 0.

Reported-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/934395.1768518154@sss.pgh.pa.us

src/backend/storage/buffer/bufmgr.c

index f30cf93b04f9f81c0650ecedabad698944e47d02..6f935648ae9fa7d8ba493f1709316933eccca5fe 100644 (file)
@@ -5777,8 +5777,8 @@ BufferLockAcquire(Buffer buffer, BufferDesc *buf_hdr, BufferLockMode mode)
 
    for (;;)
    {
+       uint32      wait_event = 0; /* initialized to avoid compiler warning */
        bool        mustwait;
-       uint32      wait_event;
 
        /*
         * Try to grab the lock the first time, we're not in the waitqueue