From e68ccdf6e5e775b01f43c722b4963da81f4bd57c Mon Sep 17 00:00:00 2001 From: Jon Turney Date: Sat, 19 Sep 2020 16:15:40 +0100 Subject: [PATCH] Cygwin: avoid GCC 10 error with -Werror=narrowing ../../../../src/winsup/cygwin/pinfo.cc: In member function 'DWORD pinfo::status_exit(DWORD)': ../../../../src/winsup/cygwin/ntdll.h:21:68: error: narrowing conversion of '-536870295' from 'NTSTATUS' {aka 'int'} to 'unsigned int' [-Wnarrowing] ../../../../src/winsup/cygwin/pinfo.cc:136:10: note: in expansion of macro 'STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION' ../../../../src/winsup/cygwin/sigproc.cc: In member function 'DWORD child_info::proc_retry(HANDLE)': ../../../../src/winsup/cygwin/ntdll.h:21:68: error: narrowing conversion of '-536870295' from 'NTSTATUS' {aka 'int'} to 'unsigned int' [-Wnarrowing] ../../../../src/winsup/cygwin/sigproc.cc:1120:10: note: in expansion of macro 'STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION' NT error statuses seem to be variously DWORD (unsigned) or NTSTATUS (signed)? So use the one which doesn't cause problems here. --- winsup/cygwin/ntdll.h | 2 +- winsup/cygwin/pseudo-reloc.cc | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/winsup/cygwin/ntdll.h b/winsup/cygwin/ntdll.h index 0c6ad13dc7..113798e290 100644 --- a/winsup/cygwin/ntdll.h +++ b/winsup/cygwin/ntdll.h @@ -18,7 +18,7 @@ extern GUID __cygwin_socket_guid; /* Custom Cygwin-only status codes. */ #define STATUS_THREAD_SIGNALED ((NTSTATUS)0xe0000001) #define STATUS_THREAD_CANCELED ((NTSTATUS)0xe0000002) -#define STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION ((NTSTATUS) 0xe0000269) +#define STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION ((DWORD) 0xe0000269) /* Simplify checking for a transactional error code. */ #define NT_TRANSACTIONAL_ERROR(s) \ diff --git a/winsup/cygwin/pseudo-reloc.cc b/winsup/cygwin/pseudo-reloc.cc index a230b35e64..cd4dff8eb1 100644 --- a/winsup/cygwin/pseudo-reloc.cc +++ b/winsup/cygwin/pseudo-reloc.cc @@ -21,8 +21,6 @@ #else # include "winsup.h" # include -/* custom status code: */ -# define STATUS_ILLEGAL_DLL_PSEUDO_RELOCATION ((NTSTATUS) 0xe0000269) #endif #include