Re: Avoid undefined behavior with msvc compiler (src/include/port/pg_bitutils.h) - Mailing list pgsql-hackers

From John Naylor
Subject Re: Avoid undefined behavior with msvc compiler (src/include/port/pg_bitutils.h)
Date
Msg-id CAFBsxsFB74gMn+yMvo=ApX=_hyPcnyz7nkRy5Fn13=+cBA63FQ@mail.gmail.com
Whole thread Raw
In response to Re: Avoid undefined behavior with msvc compiler (src/include/port/pg_bitutils.h)  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers

On Mon, Jul 31, 2023 at 5:57 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> John Naylor <john.naylor@enterprisedb.com> writes:

> > Works for me, so done that way for both forward and reverse variants. Since
> > the return value is no longer checked in any builds, I thought about
> > removing the variable containing it, but it seems best to leave it behind
> > for clarity since these are not our functions.
>
> Hmm, aren't you risking "variable is set but not used" warnings?
> Personally I'd have made these like
>
>     (void) _BitScanReverse(&result, word);

I'd reasoned that such a warning would have showed up in non-assert builds already, but I neglected to consider that those could have different warning settings. For the time being drongo shows green, at least, but we'll see.

--
John Naylor
EDB: http://www.enterprisedb.com

pgsql-hackers by date:

Previous
From: Tomas Vondra
Date:
Subject: Re: logical decoding and replication of sequences, take 2
Next
From: Masahiko Sawada
Date:
Subject: Re: stats test intermittent failure