win32_io.c: make NTSTATUS signed

bcrypt.h defines this as a long, which causes a conflict. On LLP64, long and
u32 are the same size, but have different signedness. Signed seems to be
the prevailing view of the type.

Fixes compiler error:

win32_io.c:174:13: error: conflicting types for 'NTSTATUS'; have 'u32' {aka 'unsigned int'}
  174 | typedef u32 NTSTATUS; /* do not let the compiler choose the size */
      |             ^~~~~~~~
In file included from /usr/include/w32api/wincrypt.h:846,
                 from /usr/include/w32api/windows.h:95,
                 from win32_io.c:31:
/usr/include/w32api/bcrypt.h:27:16: note: previous declaration of 'NTSTATUS' with type 'NTSTATUS' {aka 'int'}
   27 |   typedef LONG NTSTATUS,*PNTSTATUS;
      |                ^~~~~~~~
pull/106/head
CodingKoopa 2024-03-08 06:07:04 +00:00
parent 22dac966ba
commit 7d1c1ad3ca
1 changed files with 1 additions and 1 deletions

View File

@ -171,7 +171,7 @@ enum { /* see http://msdn.microsoft.com/en-us/library/cc704588(v=prot.10).aspx *
STATUS_GUARD_PAGE_VIOLATION = 0x80000001
} ;
typedef u32 NTSTATUS; /* do not let the compiler choose the size */
typedef s32 NTSTATUS; /* do not let the compiler choose the size */
#ifdef __x86_64__
typedef unsigned long long ULONG_PTR; /* an integer the same size as a pointer */
#else