On 2020-09-22 22:17, Brian Inglis wrote: > On 2020-09-22 16:10, Brian Inglis wrote: >> On 2020-09-18 23:19, JonY via Cygwin-announce wrote: >>> Now released for both 32bit and 64bit Cygwin: >>> >>> w32api-headers-8.0.0-1 >>> w32api-runtime-8.0.0-1 >>> >>> Based on mingw-w64-v8.0.0. > > Sorry, ambigous - to clarify: may be a definition conflict between updated > headers rebuilding cygwin both 32 and 64 just after latest updates: see > attached log. > Cygwin both 32 and 64 builds worked without any problems just before the > latest > updates.
Tad confusing log messages, but it appears the actual issue may not be a conflict to do with PVOID, but with PMEM_EXTENDED_PARAMETER between the below: $ fgrep -wB12 PMEM_EXTENDED_PARAMETER /usr/include/w32api/winnt.h typedef struct DECLSPEC_ALIGN(8) MEM_EXTENDED_PARAMETER { __C89_NAMELESS struct { DWORD64 Type : MEM_EXTENDED_PARAMETER_TYPE_BITS; DWORD64 Reserved : 64 - MEM_EXTENDED_PARAMETER_TYPE_BITS; }; __C89_NAMELESS union { DWORD64 ULong64; PVOID Pointer; SIZE_T Size; HANDLE Handle; DWORD ULong; }; } MEM_EXTENDED_PARAMETER, *PMEM_EXTENDED_PARAMETER; $ fgrep -wA8 PMEM_EXTENDED_PARAMETER winsup/utils/cygpath.cc #define PMEM_EXTENDED_PARAMETER PVOID #include <windows.h> #include <userenv.h> #include <shlobj.h> #include <ntdef.h> #include <ntdll.h> #include "wide_path.h" #include "loadlib.h" It seems likely that we could perhaps just remove the conflicting #define, but without some idea of the original intent and its impact, and a good cygpath regression test suite, that could perhaps be a rash decision. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised. [Data in binary units and prefixes, physical quantities in SI.]
c++wrap -fno-exceptions -fno-rtti -Wimplicit-fallthrough=4 -Werror -O2 -g -fno-threadsafe-statics -fno-rtti -fno-exceptions -fno-use-cxa-atexit -Wall -Wstrict-aliasing -Wwrite-strings -fno-common -pipe -fbuiltin -fmessage-length=0 -c -o cygpath.o ../../.././winsup/utils/cygpath.cc ../../.././winsup/utils/cygpath.cc:27:33: error: conflicting declaration 'typedef struct MEM_EXTENDED_PARAMETER* PVOID' 27 | #define PMEM_EXTENDED_PARAMETER PVOID | ^~~~~ In file included from /usr/include/w32api/minwindef.h:163, from /usr/include/w32api/windef.h:9, from /usr/include/w32api/windows.h:69, from ../../.././winsup/utils/cygpath.cc:28: /usr/include/w32api/winnt.h:257:17: note: previous declaration as 'typedef void* PVOID' 257 | typedef void *PVOID; | ^~~~~ make[3]: *** [../../.././winsup/utils/../Makefile.common:41: cygpath.o] Error 1 make[3]: Leaving directory '.../newlib-cygwin/x86_64-pc-cygwin/winsup/utils' /bin/sh: 1: [: utils: unexpected operator make[2]: *** [Makefile:81: utils] Error 2 make[2]: Leaving directory '.../newlib-cygwin/x86_64-pc-cygwin/winsup' make[1]: *** [Makefile:9464: all-target-winsup] Error 2 make[1]: Leaving directory '.../newlib-cygwin' make: *** [Makefile:883: all] Error 2
-- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple