Re: Windows build warnings - Mailing list pgsql-hackers

From Daniel Gustafsson
Subject Re: Windows build warnings
Date
Msg-id 0580A552-80FE-41AC-BAFD-FDFEB9E7D5EA@yesql.se
Whole thread Raw
In response to Re: Windows build warnings  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Windows build warnings
List pgsql-hackers
> On 22 Nov 2021, at 16:06, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> Alvaro Herrera <alvherre@alvh.no-ip.org> writes:
>> .. but see
>> https://postgr.es/m/CAH2-WznwWU+9on9nZCnZtk7uA238MCTgPxYr1Ty7U_Msn5ZGwQ@mail.gmail.com
>> where this was already discussed.  I think if we're going to workaround
>> PG_USED_FOR_ASSERTS_ONLY not actually working, we may as well get rid of
>> it entirely.  My preference would be to fix it so that it works on more
>> platforms (at least Windows in addition to GCC).
>
> Yeah, I do not think there is a reason to change the code if it's using
> PG_USED_FOR_ASSERTS_ONLY properly.  We should either make that macro
> work on $compiler, or ignore such warnings from $compiler.

So, to reach some conclusion on this thread; it seems the code is using
PG_USED_FOR_ASSERTS_ONLY - as it's currently implemented - properly, but it
doesn't work on MSVC and isn't likely to work in the shape it is today.
Reworking to support a wider range of compilers will also likely mean net new
code.

To silence the warnings in the meantime (if the rework at all happens) we
should either apply the patch from Greg or add C4101 to disablewarnings in
src/tools/msvc/Project.pm as mentioned above.  On top of that, we should apply
the patch I proposed downthread to remove PG_USED_FOR_ASSERTS_ONLY where it's
no longer applicable.  Personally I'm fine with either, and am happy to make it
happen, once we agree on what it should be.

Thoughts?

--
Daniel Gustafsson        https://vmware.com/




pgsql-hackers by date:

Previous
From: Marcos Pegoraro
Date:
Subject: pg_upgrade and publication/subscription problem
Next
From: Amit Langote
Date:
Subject: Re: pg_get_publication_tables() output duplicate relid