@@ -1,3 +1,11 @@
+/* This is needed to keep GCC >= 9 happy when using redirects inside system
+ headers. glibc builds some C++ tests which use these headers which do
+ not get marked as system headers. */
+#include <bits/floatn.h>
+#if defined __cplusplus && __LONG_DOUBLE_USES_FLOAT128 == 1
+# pragma GCC system_header
+#endif
+
#include <stdlib/monetary.h>
#ifndef _ISOMAC
#include <stdarg.h>
@@ -1,5 +1,13 @@
#ifndef _PRINTF_H
+/* This is needed to keep GCC >= 9 happy when using redirects inside system
+ headers. glibc builds some C++ tests which use these headers which do
+ not get marked as system headers. */
+#include <bits/floatn.h>
+#if defined __cplusplus && __LONG_DOUBLE_USES_FLOAT128 == 1
+# pragma GCC system_header
+#endif
+
#include <stdio-common/printf.h>
# ifndef _ISOMAC
@@ -2,8 +2,18 @@
# if !defined _ISOMAC && defined _IO_MTSAFE_IO
# include <stdio-lock.h>
# endif
+
+/* This is needed to keep GCC >= 9 happy when using redirects inside system
+ headers. glibc builds some C++ tests which use these headers which do
+ not get marked as system headers. */
+# include <bits/floatn.h>
+# if defined __cplusplus && __LONG_DOUBLE_USES_FLOAT128 == 1
+# pragma GCC system_header
+# endif
+
# include <libio/stdio.h>
# ifndef _ISOMAC
+
# define _LIBC_STDIO_H 1
# include <libio/libio.h>
@@ -3,6 +3,15 @@
#ifndef _ISOMAC
# include <stddef.h>
#endif
+
+/* This is needed to keep GCC >= 9 happy when using redirects inside system
+ headers. glibc builds some C++ tests which use these headers which do
+ not get marked as system headers. */
+#include <bits/floatn.h>
+#if defined __cplusplus && __LONG_DOUBLE_USES_FLOAT128 == 1
+# pragma GCC system_header
+#endif
+
#include <stdlib/stdlib.h>
/* Now define the internal interfaces. */
@@ -1,4 +1,13 @@
#ifndef _WCHAR_H
+
+/* This is needed to keep GCC >= 9 happy when using redirects inside system
+ headers. glibc builds some C++ tests which use these headers which do
+ not get marked as system headers. */
+# include <bits/floatn.h>
+# if defined __cplusplus && __LONG_DOUBLE_USES_FLOAT128 == 1
+# pragma GCC system_header
+# endif
+
# include <wcsmbs/wchar.h>
# ifndef _ISOMAC