When USE_VALGRIND is defined, compilation started to fail with this
error message (-Werror is used; without it, a warning is observed
instead):
printtup.c:353:95: error: passing argument 1 of ‘VARSIZE_ANY’ makes
pointer from integer without a cast [-Wint-conversion]
Not sure if this is the best fix, but it silences the warning, and is
based on other recently introduced fixes:
diff --git a/src/backend/access/common/printtup.c
b/src/backend/access/common/printtup.c
index 830a3d883aa..6d3045e2332 100644
--- a/src/backend/access/common/printtup.c
+++ b/src/backend/access/common/printtup.c
@@ -350,7 +350,7 @@ printtup(TupleTableSlot *slot, DestReceiver *self)
*/
if (thisState->typisvarlena)
VALGRIND_CHECK_MEM_IS_DEFINED(DatumGetPointer(attr),
- VARSIZE_ANY(attr));
+
VARSIZE_ANY(DatumGetPointer(attr)));
if (thisState->format == 0)
{
I'm attaching a patch.
Best regards,
Dmitry
From: Dmitry Mityugov <d.mityu...@postgrespro.ru>
Date: Tue, 5 Aug 2025 20:29:57 +0300
Subject: [PATCH] Use DatumGetPointer() in VALGRIND_CHECK_MEM_IS_DEFINED() call
It seems that this patch is a follow-up to 0f5ade7a that did the same
conversion in other places.
---
src/backend/access/common/printtup.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/backend/access/common/printtup.c b/src/backend/access/common/printtup.c
index 830a3d883aa..6d3045e2332 100644
--- a/src/backend/access/common/printtup.c
+++ b/src/backend/access/common/printtup.c
@@ -350,7 +350,7 @@ printtup(TupleTableSlot *slot, DestReceiver *self)
*/
if (thisState->typisvarlena)
VALGRIND_CHECK_MEM_IS_DEFINED(DatumGetPointer(attr),
- VARSIZE_ANY(attr));
+ VARSIZE_ANY(DatumGetPointer(attr)));
if (thisState->format == 0)
{
--
2.50.1