Browse Source

sys/stat.h: fix missing struct timespec definition

This is a second attempt to fix a compilation failure involving a
missing struct timespec definition in some situation. Previous attempt
was following commit but it had undesirable side effects and was
reverted:

  657c4a9d6c fcntl.h: fix a missing `struct timespec` definition

A similar issue was identified and reported in glibc [1], and the fix
was to include the timespec definition if __USE_XOPEN2K8 was defined. To
minimize the possible impact of this new fix, it was decided to not
replace __USE_ATFILE by __USE_XOPEN2K8 as glibc did, but to add an
additional OR condition on __USE_XOPEN2K8.

[1] https://sourceware.org/bugzilla/show_bug.cgi?id=21371

Signed-off-by: Damien Riegel <damien.riegel@savoirfairelinux.com>
Damien Riegel 7 years ago
parent
commit
da89381bc7
1 changed files with 1 additions and 1 deletions
  1. 1 1
      include/sys/stat.h

+ 1 - 1
include/sys/stat.h

@@ -32,7 +32,7 @@
 # if defined __USE_XOPEN || defined __USE_XOPEN2K
 #  define __need_time_t
 # endif
-# if defined __USE_MISC || defined __USE_ATFILE
+# if defined __USE_MISC || defined __USE_ATFILE || defined __USE_XOPEN2K8
 #  define __need_timespec
 # endif
 # include <time.h>		/* For time_t resp. timespec.  */