On Tue, Jul 29, 2025 at 11:36:35AM +0900, Michael Paquier wrote:
> On Tue, Jul 29, 2025 at 11:21:41AM +0900, Michael Paquier wrote:
> > The attached warrants a backpatch to me, thoughts?
> 
> That's of course better with the patch.

So, the CI has accepted to run, and compilation fails with this
failure when attempting to use MinGW:
https://cirrus-ci.com/task/6401865375547392

[02:48:32.488] In file included from
/usr/share/mingw-w64/include/intrin.h:41,
[02:48:32.488]                  from pg_crc32c_sse42_choose.c:28:
[02:48:32.488]
/usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:2013:42: error:
macro "__cpuid" requires 5 arguments, but only 2 given
[02:48:32.488]  2013 | void __cpuid(int CPUInfo[4], int InfoType);
[02:48:32.488]       |                                          ^
[02:48:32.489]In file included from pg_crc32c_sse42_choose.c:24:
[02:48:32.489]
/usr/lib/gcc/x86_64-w64-mingw32/12-win32/include/cpuid.h:223: note:
macro "__cpuid" defined here
[02:48:32.489]   223 | #define __cpuid(level, a, b, c, d) \
[02:48:32.489]       |
[02:48:32.489]
/usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:2016:42: error:
macro "__cpuid" requires 5 arguments, but only 2 given [02:48:32.489]
2016 | void __cpuid(int CPUInfo[4], int InfoType) {
[02:48:32.489]       |                                          ^
[02:48:32.489]
/usr/lib/gcc/x86_64-w64-mingw32/12-win32/include/cpuid.h:223: note:
macro "__cpuid" defined here
[02:48:32.489]   223 | #define __cpuid(level, a, b, c, d) \
[02:48:32.489]       |
[02:48:32.489]
/usr/share/mingw-w64/include/psdk_inc/intrin-impl.h:2016:44: error:
expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
[02:48:32.489]  2016 | void __cpuid(int CPUInfo[4], int InfoType) {
[02:48:32.489]       |

How isn't that a bug in MinGW itself?  I'm puzzled my the macro
definition of __cpuid() that reports a conflict.  __cpuidex() and
__cpuid() are both detected by ./configure, the PG use of __cpuid() in
pg_crc32c_sse42_choose.c causes a failure.

Thoughts and comments are welcome.
--
Michael

Attachment: signature.asc
Description: PGP signature

Reply via email to