Andrew Talbot Andrew.Talbot@talbotville.com writes:
I believe these identifiers are POSIX ones (from <sys/stat.h>), so they should not possess one leading underscore (unlike the similar ones in "msvcrt").
These defines are meant for Windows, where they do have underscores.
Alexandre Julliard wrote:
Andrew Talbot Andrew.Talbot@talbotville.com writes:
I believe these identifiers are POSIX ones (from <sys/stat.h>), so they should not possess one leading underscore (unlike the similar ones in "msvcrt").
These defines are meant for Windows, where they do have underscores.
I am getting "unrecognized identifier" messages when looking at ntdll/directory.c where it calls the S_ISCHR() and S_ISDIR() macros, these are caused by the identifiers like _S_IFMT in "wine/port.h" seemingly not being defined. The only place, on my system, where I could find definitions of these identifiers was in "include/msvcrt/sys/stat.h". Are files such as ntdll/directory.c and ntdll/file.c getting to know about these identifiers via a route that a static checker cannot follow?
-- Andy.
Andrew Talbot Andrew.Talbot@talbotville.com writes:
I am getting "unrecognized identifier" messages when looking at ntdll/directory.c where it calls the S_ISCHR() and S_ISDIR() macros, these are caused by the identifiers like _S_IFMT in "wine/port.h" seemingly not being defined. The only place, on my system, where I could find definitions of these identifiers was in "include/msvcrt/sys/stat.h". Are files such as ntdll/directory.c and ntdll/file.c getting to know about these identifiers via a route that a static checker cannot follow?
On any decent Unix the S_ISCHR etc. macros are defined by sys/stat.h, so our defines are never used.
Alexandre Julliard wrote:
On any decent Unix the S_ISCHR etc. macros are defined by sys/stat.h, so our defines are never used.
Right. I now see that Splint represents S_ISCHR() and the like as functions (despite containing a comment saying that "they're macros virtually everywhere"), so the #ifndef's in "wine/port.h" were not seeing prior preprocessor definitions.
Thanks,
-- Andy.