Nikolay Sivov (@nsivov) commented about include/winnt.h:
+ WORD ne_gangstart; /* 38 Offset to gangload area */ + }; + union { + /* ne_psegrefbytes is the incorrect name specified in Windows NT SDK. + Offset to segment ref. bytes was used only for the in-memory structure + of loaded NE modules on Windows 1.x and 2.x. On-disk structure always + contains length of gangload area (if gangload area is present). */ + WORD ne_psegrefbytes; + WORD ne_ganglength; /* 3a Length of gangload area */ + }; + + /* end of the ne_ver >= 5 structure for non-Windows modules */ + + WORD ne_swaparea; /* 3c Minimum code swap area size */ WORD ne_expver; /* 3e Expected Windows version number */ } IMAGE_OS2_HEADER, *PIMAGE_OS2_HEADER; This is a public type, so whatever is in current SDK is basically "correct". Do you mean that it differs from some older definition?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/7909#note_101941