unused-but-set-variable warning on REL_13_STABLE

Started by Nathan Bossartabout 1 year ago3 messages
#1Nathan Bossart
nathandbossart@gmail.com
1 attachment(s)

My compiler emits the following warning on REL_13_STABLE when assertions
are disabled:

reorderbuffer.c:2471:8: warning: variable 'spilled' set but not used [-Wunused-but-set-variable]
2471 | Size spilled = 0;
| ^

Adding PG_USED_FOR_ASSERTS_ONLY (as in the attached patch) seems sufficient
to suppress this warning. On newer versions, this variable is used for
more than assertions, so the patch only needs to be applied to v13. Since
this is trivial, I plan to commit it shortly.

--
nathan

Attachments:

fix_unused_warning.patchtext/plain; charset=us-asciiDownload
diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c
index c7f8fa6216..56c25e3a6d 100644
--- a/src/backend/replication/logical/reorderbuffer.c
+++ b/src/backend/replication/logical/reorderbuffer.c
@@ -2468,7 +2468,7 @@ ReorderBufferSerializeTXN(ReorderBuffer *rb, ReorderBufferTXN *txn)
 	dlist_mutable_iter change_i;
 	int			fd = -1;
 	XLogSegNo	curOpenSegNo = 0;
-	Size		spilled = 0;
+	Size		spilled PG_USED_FOR_ASSERTS_ONLY = 0;
 
 	elog(DEBUG2, "spill %u changes in XID %u to disk",
 		 (uint32) txn->nentries_mem, txn->xid);
#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Nathan Bossart (#1)
Re: unused-but-set-variable warning on REL_13_STABLE

Nathan Bossart <nathandbossart@gmail.com> writes:

Adding PG_USED_FOR_ASSERTS_ONLY (as in the attached patch) seems sufficient
to suppress this warning. On newer versions, this variable is used for
more than assertions, so the patch only needs to be applied to v13. Since
this is trivial, I plan to commit it shortly.

LGTM

regards, tom lane

#3Nathan Bossart
nathandbossart@gmail.com
In reply to: Tom Lane (#2)
Re: unused-but-set-variable warning on REL_13_STABLE

On Mon, Dec 09, 2024 at 02:39:30PM -0500, Tom Lane wrote:

LGTM

Thanks! Committed.

--
nathan