In the system headers, we use this pattern a lot: > #if (_POSIX_C_SOURCE - 0 >= 200809L) || defined(_NETBSD_SOURCE)
Are the parentheses around the first condition really necessary? If so, for which cases? Is the "- 0" in the first expression really necessary? If so, for which cases? If they aren't necessary, the condition becomes easier to read: > #if _POSIX_C_SOURCE >= 200809L || defined(_NETBSD_SOURCE) Roland