Re: BUG #17967: [msvc-x86] Failed to build with error LNK2019: unresolved external symbol __BitScanReverse64 referen

David Rowley <dgrowleyml@gmail.com>

From: David Rowley <dgrowleyml@gmail.com>
To: moyoumiu@outlook.com, pgsql-bugs@lists.postgresql.org
Date: 2023-06-07T22:18:36Z
Lists: pgsql-bugs
On Thu, 8 Jun 2023 at 01:00, David Rowley <dgrowleyml@gmail.com> wrote:
> I've not tested it, but I imagine the attached patch should fix it.

I've just pushed that patch to master only.

I noticed your report mentioned that this was for version 15.3. I
assumed this was a mistake as I didn't see any usage of the bit
scanning functions in v15. Commit 677319746 [1] introduced these,
which is new to v16.

Many thanks for reporting this!

David

[1] https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=677319746



Commits

  1. Don't use _BitScanForward64/_BitScanReverse64 on 32-bit MSVC builds

  2. Remove newly added asserts from pg_bitutils.h

  3. Add MSVC support for pg_leftmost_one_pos32() and friends