The PSDK defines some NTSTATUS values in both ntstatus.h and in winnt.h, guarded by "#ifndef WIN32_NO_STATUS". Unfortunately, the definitions in the PSDK are not equivalent. In ntstatus.h:
#define STATUS_xxx ((NTSTATUS) 0x........)
In winnt.h:
#define STATUS_xxx ((DWORD) 0x........)
The Wine headers don't cast the literal to NTSTATUS resp DWORD. This means it is ok to #include both winnt.h and ntstatus.h without #defining WIN32_NO_STATUS using the Wine headers, but it is not ok to do so using PSDK (or, in my case, ReactOS) headers. Would a patch adding the appropriate casts in ntstatus.h/winnt.h and then fixing the resulting problems in Wine by #defining WIN32_NO_STATUS where appropriate (an example is dlls/netapi32/wksta.c) be acceptable?
Gé van Geldorp.