Perhaps, but what do we want to check for? __GNU__ is quite well-defined to mean GNU Hurd, I believe. We could simply check if PATH_MAX is undefined instead, or _always_ call realpath() with NULL second argument, to not have to bother with PATH_MAX regardless of platform, as per POSIX.1-2008. Though I don't know about Windows.