Use _STRUCT_TIMESPEC as guard in <bits/types/struct_timespec.h> [BZ #23349]

After commit d76d370355 ("Fix missing
timespec definition for sys/stat.h (BZ #21371)") in combination with
kernel UAPI changes, GCC sanitizer builds start to fail due to a
conflicting definition of struct timespec in <linux/time.h>.  Use
_STRUCT_TIMESPEC as the header file inclusion guard, which is already
checked in the kernel header, to support including <linux/time.h> and
<sys/stat.h> in the same translation unit.

(cherry picked from commit c1c2848b57)
This commit is contained in:
Florian Weimer 2018-06-28 13:22:34 +02:00
parent 81b994bd83
commit f958b45d52
3 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2018-06-28 Florian Weimer <fweimer@redhat.com>
[BZ #23349]
* time/bits/types/struct_timespec.h: Change header inclusion guard to
_STRUCT_TIMESPEC.
2018-05-24 Gabriel F. T. Gomes <gabriel@inconstante.eti.br>
[BZ #23171]

1
NEWS
View File

@ -142,6 +142,7 @@ The following bugs are resolved with this release:
[23171] Fix parameter type in C++ version of iseqsig
[23196] __mempcpy_avx512_no_vzeroupper mishandles large copies
[23236] Harden function pointers in _IO_str_fields
[23349] Various glibc headers no longer compatible with <linux/time.h>
Version 2.26

View File

@ -1,5 +1,6 @@
#ifndef __timespec_defined
#define __timespec_defined 1
/* NB: Include guard matches what <linux/time.h> uses. */
#ifndef _STRUCT_TIMESPEC
#define _STRUCT_TIMESPEC 1
#include <bits/types.h>