[llvm-branch-commits] [libcxx] release/18.x: [libc++] Fix -Wgnu-include-next in stddef.h (#88214) (PR #88419)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Thu Apr 11 10:55:13 PDT 2024
https://github.com/llvmbot created https://github.com/llvm/llvm-project/pull/88419
Backport 3c4b673af05f53e8a4d1a382b5c86367ea512c9e
Requested by: @ldionne
>From 27a78c496678eb73677981b4b6b0d380dd7e28bb Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2 at gmail.com>
Date: Thu, 11 Apr 2024 12:36:56 -0400
Subject: [PATCH] [libc++] Fix -Wgnu-include-next in stddef.h (#88214)
As reported in #86843, we must have #pragma GCC system_header before we
use #include_next, otherwise the compiler may not understand that we're
in a system header and may issue a diagnostic for our usage of
(cherry picked from commit 3c4b673af05f53e8a4d1a382b5c86367ea512c9e)
---
libcxx/include/stddef.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libcxx/include/stddef.h b/libcxx/include/stddef.h
index 470b5408336c6d..1583e78e3739ba 100644
--- a/libcxx/include/stddef.h
+++ b/libcxx/include/stddef.h
@@ -26,6 +26,10 @@
#include <__config>
+#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+# pragma GCC system_header
+#endif
+
// Note: This include is outside of header guards because we sometimes get included multiple times
// with different defines and the underlying <stddef.h> will know how to deal with that.
#include_next <stddef.h>
@@ -33,10 +37,6 @@
#ifndef _LIBCPP_STDDEF_H
# define _LIBCPP_STDDEF_H
-# if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
-# pragma GCC system_header
-# endif
-
# ifdef __cplusplus
typedef decltype(nullptr) nullptr_t;
# endif
More information about the llvm-branch-commits
mailing list