printtup.c: error: ‘VARSIZE_ANY’ makes pointer from integer when USE_VALGRIND is defined

Поиск
Список
Период
Сортировка
От Dmitry Mityugov
Тема printtup.c: error: ‘VARSIZE_ANY’ makes pointer from integer when USE_VALGRIND is defined
Дата
Msg-id bf504e949151a5fb5723bca32b2033d1@postgrespro.ru
обсуждение исходный текст
Ответы Re: printtup.c: error: ‘VARSIZE_ANY’ makes pointer from integer when USE_VALGRIND is defined
Список pgsql-hackers
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
Вложения

В списке pgsql-hackers по дате отправления: