summaryrefslogtreecommitdiff
path: root/include/ruby
diff options
context:
space:
mode:
Diffstat (limited to 'include/ruby')
-rw-r--r--include/ruby/3/anyargs.h1
-rw-r--r--include/ruby/3/arithmetic/int.h1
-rw-r--r--include/ruby/3/assume.h1
-rw-r--r--include/ruby/3/attr/alloc_size.h1
-rw-r--r--include/ruby/3/attr/artificial.h1
-rw-r--r--include/ruby/3/attr/cold.h1
-rw-r--r--include/ruby/3/attr/const.h2
-rw-r--r--include/ruby/3/attr/constexpr.h1
-rw-r--r--include/ruby/3/attr/deprecated.h2
-rw-r--r--include/ruby/3/attr/diagnose_if.h2
-rw-r--r--include/ruby/3/attr/enum_extensibility.h1
-rw-r--r--include/ruby/3/attr/error.h1
-rw-r--r--include/ruby/3/attr/flag_enum.h1
-rw-r--r--include/ruby/3/attr/forceinline.h2
-rw-r--r--include/ruby/3/attr/format.h1
-rw-r--r--include/ruby/3/attr/maybe_unused.h1
-rw-r--r--include/ruby/3/attr/nodiscard.h1
-rw-r--r--include/ruby/3/attr/noexcept.h1
-rw-r--r--include/ruby/3/attr/noinline.h1
-rw-r--r--include/ruby/3/attr/nonnull.h1
-rw-r--r--include/ruby/3/attr/noreturn.h2
-rw-r--r--include/ruby/3/attr/pure.h2
-rw-r--r--include/ruby/3/attr/restrict.h3
-rw-r--r--include/ruby/3/attr/returns_nonnull.h1
-rw-r--r--include/ruby/3/attr/warning.h1
-rw-r--r--include/ruby/3/attr/weakref.h1
-rw-r--r--include/ruby/3/cast.h3
-rw-r--r--include/ruby/3/compiler_is.h5
-rw-r--r--include/ruby/3/config.h4
-rw-r--r--include/ruby/3/core/rdata.h1
-rw-r--r--include/ruby/3/has/attribute.h2
-rw-r--r--include/ruby/3/has/builtin.h2
-rw-r--r--include/ruby/3/has/cpp_attribute.h2
-rw-r--r--include/ruby/3/has/declspec_attribute.h2
-rw-r--r--include/ruby/3/static_assert.h1
-rw-r--r--include/ruby/3/stdalign.h2
-rw-r--r--include/ruby/3/token_paste.h3
-rw-r--r--include/ruby/3/warning_push.h1
-rw-r--r--include/ruby/backward/2/gcc_version_since.h1
-rw-r--r--include/ruby/backward/2/long_long.h2
40 files changed, 9 insertions, 56 deletions
diff --git a/include/ruby/3/anyargs.h b/include/ruby/3/anyargs.h
index e2408d72c6..7c2aa05c21 100644
--- a/include/ruby/3/anyargs.h
+++ b/include/ruby/3/anyargs.h
@@ -72,7 +72,6 @@
#include "ruby/3/attr/weakref.h"
#include "ruby/3/cast.h"
#include "ruby/3/config.h"
-#include "ruby/3/has/attribute.h"
#include "ruby/3/intern/class.h"
#include "ruby/3/intern/vm.h"
#include "ruby/3/method.h"
diff --git a/include/ruby/3/arithmetic/int.h b/include/ruby/3/arithmetic/int.h
index f6af085a53..36485167cc 100644
--- a/include/ruby/3/arithmetic/int.h
+++ b/include/ruby/3/arithmetic/int.h
@@ -31,7 +31,6 @@
#include "ruby/3/dllexport.h"
#include "ruby/3/special_consts.h"
#include "ruby/3/value.h"
-#include "ruby/3/warning_push.h"
#include "ruby/assert.h"
#define RB_INT2NUM rb_int2num_inline
diff --git a/include/ruby/3/assume.h b/include/ruby/3/assume.h
index 926c17f36d..cbd02637a2 100644
--- a/include/ruby/3/assume.h
+++ b/include/ruby/3/assume.h
@@ -27,7 +27,6 @@
#define RUBY3_ASSUME_H
#include "ruby/3/config.h"
#include "ruby/3/cast.h"
-#include "ruby/3/compiler_since.h"
#include "ruby/3/has/builtin.h"
/** @cond INTERNAL_MACRO */
diff --git a/include/ruby/3/attr/alloc_size.h b/include/ruby/3/attr/alloc_size.h
index 1b13e6f4a5..8296e9dcfd 100644
--- a/include/ruby/3/attr/alloc_size.h
+++ b/include/ruby/3/attr/alloc_size.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_ALLOC_SIZE.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((alloc_size))` */
#if defined(RUBY3_ATTR_ALLOC_SIZE)
diff --git a/include/ruby/3/attr/artificial.h b/include/ruby/3/attr/artificial.h
index 7b0acab2f6..5e94a048f9 100644
--- a/include/ruby/3/attr/artificial.h
+++ b/include/ruby/3/attr/artificial.h
@@ -32,7 +32,6 @@
* case it gets vital to know where the inlining happened in the callee.
* See also https://stackoverflow.com/a/21936099
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((artificial))` */
#if defined(RUBY3_ATTR_ARTIFICIAL)
diff --git a/include/ruby/3/attr/cold.h b/include/ruby/3/attr/cold.h
index 6c1093d1ff..27f92763f1 100644
--- a/include/ruby/3/attr/cold.h
+++ b/include/ruby/3/attr/cold.h
@@ -19,7 +19,6 @@
* @brief Defines #RUBY3_ATTR_COLD.
*/
#include "ruby/3/compiler_is.h"
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((cold))` */
#if defined(RUBY3_ATTR_COLD)
diff --git a/include/ruby/3/attr/const.h b/include/ruby/3/attr/const.h
index 06372db0c2..689889cb65 100644
--- a/include/ruby/3/attr/const.h
+++ b/include/ruby/3/attr/const.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_CONST.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/declspec_attribute.h"
/** Wraps (or simulates) `__attribute__((const))` */
diff --git a/include/ruby/3/attr/constexpr.h b/include/ruby/3/attr/constexpr.h
index 5c09bced49..11842d87c0 100644
--- a/include/ruby/3/attr/constexpr.h
+++ b/include/ruby/3/attr/constexpr.h
@@ -20,7 +20,6 @@
*/
#include "ruby/3/has/feature.h"
#include "ruby/3/compiler_is.h"
-#include "ruby/3/token_paste.h"
/** @cond INTERNAL_MACRO*/
#if defined(RUBY3_ATTR_CONSTEXPR)
diff --git a/include/ruby/3/attr/deprecated.h b/include/ruby/3/attr/deprecated.h
index cea124e1fe..629f7c9fc5 100644
--- a/include/ruby/3/attr/deprecated.h
+++ b/include/ruby/3/attr/deprecated.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_DEPRECATED.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/c_attribute.h"
#include "ruby/3/has/cpp_attribute.h"
#include "ruby/3/has/declspec_attribute.h"
diff --git a/include/ruby/3/attr/diagnose_if.h b/include/ruby/3/attr/diagnose_if.h
index 88ad81ab2c..a363c4cdb3 100644
--- a/include/ruby/3/attr/diagnose_if.h
+++ b/include/ruby/3/attr/diagnose_if.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_DIAGNOSE_IF.
*/
-#include "ruby/3/has/attribute.h"
-#include "ruby/3/warning_push.h"
/** Wraps (or simulates) `__attribute__((diagnose_if))` */
#if defined(RUBY3_ATTR_DIAGNOSE_IF)
diff --git a/include/ruby/3/attr/enum_extensibility.h b/include/ruby/3/attr/enum_extensibility.h
index 2135736de7..0631057383 100644
--- a/include/ruby/3/attr/enum_extensibility.h
+++ b/include/ruby/3/attr/enum_extensibility.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief #RUBY3_ATTR_ENUM_EXTENSIBILITY.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((enum_extensibility))` */
#if defined(RUBY3_ATTR_ENUM_EXTENSIBILITY)
diff --git a/include/ruby/3/attr/error.h b/include/ruby/3/attr/error.h
index 15d9181fe2..ec9383aace 100644
--- a/include/ruby/3/attr/error.h
+++ b/include/ruby/3/attr/error.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_ERROR.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((error))` */
#if defined(RUBY3_ATTR_ERROR)
diff --git a/include/ruby/3/attr/flag_enum.h b/include/ruby/3/attr/flag_enum.h
index a026ab5de1..5e7e9982f9 100644
--- a/include/ruby/3/attr/flag_enum.h
+++ b/include/ruby/3/attr/flag_enum.h
@@ -19,7 +19,6 @@
* @brief Defines #RUBY3_ATTR_FLAG_ENUM.
* @see https://clang.llvm.org/docs/AttributeReference.html#flag_enum
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((flag_enum)` */
#if defined(RUBY3_ATTR_FLAG_ENUM)
diff --git a/include/ruby/3/attr/forceinline.h b/include/ruby/3/attr/forceinline.h
index 47d7d58147..6d279235b8 100644
--- a/include/ruby/3/attr/forceinline.h
+++ b/include/ruby/3/attr/forceinline.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_FORCEINLINE.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/attribute.h"
/**
* Wraps (or simulates) `__forceinline`. MSVC complains on declarations like
diff --git a/include/ruby/3/attr/format.h b/include/ruby/3/attr/format.h
index b41094f221..de8e2f53c4 100644
--- a/include/ruby/3/attr/format.h
+++ b/include/ruby/3/attr/format.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_FORMAT.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((format))` */
#if defined(RUBY3_ATTR_FORMAT)
diff --git a/include/ruby/3/attr/maybe_unused.h b/include/ruby/3/attr/maybe_unused.h
index 3463dfb77a..29a8c35bfc 100644
--- a/include/ruby/3/attr/maybe_unused.h
+++ b/include/ruby/3/attr/maybe_unused.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_MAYBE_UNUSED.
*/
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/c_attribute.h"
#include "ruby/3/has/cpp_attribute.h"
diff --git a/include/ruby/3/attr/nodiscard.h b/include/ruby/3/attr/nodiscard.h
index 00ef068422..342a1da7ad 100644
--- a/include/ruby/3/attr/nodiscard.h
+++ b/include/ruby/3/attr/nodiscard.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_NODISCARD.
*/
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/c_attribute.h"
#include "ruby/3/has/cpp_attribute.h"
diff --git a/include/ruby/3/attr/noexcept.h b/include/ruby/3/attr/noexcept.h
index c5db6b3e79..1bc90de88c 100644
--- a/include/ruby/3/attr/noexcept.h
+++ b/include/ruby/3/attr/noexcept.h
@@ -59,7 +59,6 @@
* Itanium C++ ABI has zero-cost exception handling), but does impact on
* generated binary size. This is bad.
*/
-#include "ruby/3/compiler_since.h"
#include "ruby/3/has/feature.h"
/** Wraps (or simulates) C++11 `noexcept` */
diff --git a/include/ruby/3/attr/noinline.h b/include/ruby/3/attr/noinline.h
index 470043794a..4483c4c8d6 100644
--- a/include/ruby/3/attr/noinline.h
+++ b/include/ruby/3/attr/noinline.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_NOINLINE.
*/
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/declspec_attribute.h"
/** Wraps (or simulates) `__declspec(noinline)` */
diff --git a/include/ruby/3/attr/nonnull.h b/include/ruby/3/attr/nonnull.h
index fff90df55b..0431c5a363 100644
--- a/include/ruby/3/attr/nonnull.h
+++ b/include/ruby/3/attr/nonnull.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_NONNULL.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((nonnull))` */
#if defined(RUBY3_ATTR_NONNULL)
diff --git a/include/ruby/3/attr/noreturn.h b/include/ruby/3/attr/noreturn.h
index c08c824947..2dc940116a 100644
--- a/include/ruby/3/attr/noreturn.h
+++ b/include/ruby/3/attr/noreturn.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_NORETURN.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/cpp_attribute.h"
#include "ruby/3/has/declspec_attribute.h"
diff --git a/include/ruby/3/attr/pure.h b/include/ruby/3/attr/pure.h
index 8ae2e91fdf..530b0cf3b4 100644
--- a/include/ruby/3/attr/pure.h
+++ b/include/ruby/3/attr/pure.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_PURE.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/attribute.h"
#include "ruby/assert.h"
/** Wraps (or simulates) `__attribute__((pure))` */
diff --git a/include/ruby/3/attr/restrict.h b/include/ruby/3/attr/restrict.h
index cd753584dd..c42ad99a01 100644
--- a/include/ruby/3/attr/restrict.h
+++ b/include/ruby/3/attr/restrict.h
@@ -18,9 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_RESTRICT.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/attribute.h"
-#include "ruby/3/token_paste.h"
/* :FIXME: config.h includes conflicting `#define restrict`. MSVC can be
* detected using `RUBY3_COMPILER_SINCE()`, but Clang & family cannot use
diff --git a/include/ruby/3/attr/returns_nonnull.h b/include/ruby/3/attr/returns_nonnull.h
index 269df4de69..aefee7ef30 100644
--- a/include/ruby/3/attr/returns_nonnull.h
+++ b/include/ruby/3/attr/returns_nonnull.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_RETURNS_NONNULL.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((returns_nonnull))` */
#if defined(RUBY3_ATTR_RETURNS_NONNULL)
diff --git a/include/ruby/3/attr/warning.h b/include/ruby/3/attr/warning.h
index ebd86b3a07..6323b6e2fe 100644
--- a/include/ruby/3/attr/warning.h
+++ b/include/ruby/3/attr/warning.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_WARNING.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((warning))` */
#if defined(RUBY3_ATTR_WARNING)
diff --git a/include/ruby/3/attr/weakref.h b/include/ruby/3/attr/weakref.h
index 084f8b99dc..28b901d44f 100644
--- a/include/ruby/3/attr/weakref.h
+++ b/include/ruby/3/attr/weakref.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_ATTR_WEAKREF.
*/
-#include "ruby/3/has/attribute.h"
/** Wraps (or simulates) `__attribute__((weakref))` */
#if defined(RUBY3_ATTR_WEAKREF)
diff --git a/include/ruby/3/cast.h b/include/ruby/3/cast.h
index d9725ce17d..10caa809e5 100644
--- a/include/ruby/3/cast.h
+++ b/include/ruby/3/cast.h
@@ -23,9 +23,6 @@
* public headers. They could be used from C++, and C-style casts could issue
* warnings. Ruby internals are pure C so they should not bother.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/warning.h"
-#include "ruby/3/warning_push.h"
#if defined(RUBY3_CAST)
# /* Take that. */
diff --git a/include/ruby/3/compiler_is.h b/include/ruby/3/compiler_is.h
index 39d1fbf70d..9f8b81315d 100644
--- a/include/ruby/3/compiler_is.h
+++ b/include/ruby/3/compiler_is.h
@@ -25,6 +25,9 @@
* @retval true It is.
* @retval false It isn't.
*/
+#ifndef RUBY3_COMPILER_IS_INCLUDED
+#define RUBY3_COMPILER_IS_INCLUDED
+
#ifndef RUBY3_COMPILER_IS
# define RUBY3_COMPILER_IS(cc) RUBY3_COMPILER_IS_ ## cc
#endif
@@ -41,3 +44,5 @@
* Apple's might be needed.
*
* - ARM's armclang: ditto, it can be clang-backended. */
+
+#endif // RUBY3_COMPILER_IS_INCLUDED
diff --git a/include/ruby/3/config.h b/include/ruby/3/config.h
index fe7e190838..12489c7c16 100644
--- a/include/ruby/3/config.h
+++ b/include/ruby/3/config.h
@@ -27,6 +27,10 @@
#endif
#include "ruby/3/compiler_since.h"
+#include "ruby/3/has/warning.h"
+#include "ruby/3/has/attribute.h"
+#include "ruby/3/warning_push.h"
+#include "ruby/3/token_paste.h"
#if defined(__cplusplus)
#/* __builtin_choose_expr and __builtin_types_compatible aren't available
diff --git a/include/ruby/3/core/rdata.h b/include/ruby/3/core/rdata.h
index d39a01b52f..651ceed0d7 100644
--- a/include/ruby/3/core/rdata.h
+++ b/include/ruby/3/core/rdata.h
@@ -32,7 +32,6 @@
#include "ruby/3/core/rbasic.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/fl_type.h"
-#include "ruby/3/token_paste.h"
#include "ruby/3/value.h"
#include "ruby/3/value_type.h"
#include "ruby/defines.h"
diff --git a/include/ruby/3/has/attribute.h b/include/ruby/3/has/attribute.h
index 229e092b30..05af8e63be 100644
--- a/include/ruby/3/has/attribute.h
+++ b/include/ruby/3/has/attribute.h
@@ -19,8 +19,6 @@
* @brief Defines #RUBY3_HAS_ATTRIBUTE.
*/
#include "ruby/3/config.h"
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/token_paste.h"
/** Wraps (or simulates) `__has_attribute`. */
#if defined(RUBY3_HAS_ATTRIBUTE)
diff --git a/include/ruby/3/has/builtin.h b/include/ruby/3/has/builtin.h
index b30fbdd1be..23391acc3c 100644
--- a/include/ruby/3/has/builtin.h
+++ b/include/ruby/3/has/builtin.h
@@ -19,8 +19,6 @@
* @brief Defines #RUBY3_HAS_BUILTIN.
*/
#include "ruby/3/config.h"
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/token_paste.h"
/** Wraps (or simulates) `__has_builtin`. */
#if defined(RUBY3_HAS_BUILTIN)
diff --git a/include/ruby/3/has/cpp_attribute.h b/include/ruby/3/has/cpp_attribute.h
index 83c5392200..70bec4a267 100644
--- a/include/ruby/3/has/cpp_attribute.h
+++ b/include/ruby/3/has/cpp_attribute.h
@@ -19,8 +19,6 @@
* @brief Defines #RUBY3_HAS_CPP_ATTRIBUTE.
*/
#include "ruby/3/compiler_is.h"
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/token_paste.h"
/** @cond INTERNAL_MACRO */
#if defined(RUBY3_HAS_CPP_ATTRIBUTE0)
diff --git a/include/ruby/3/has/declspec_attribute.h b/include/ruby/3/has/declspec_attribute.h
index f902ef963c..a7d97b400a 100644
--- a/include/ruby/3/has/declspec_attribute.h
+++ b/include/ruby/3/has/declspec_attribute.h
@@ -18,8 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_HAS_DECLSPEC_ATTRIBUTE.
*/
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/token_paste.h"
/** Wraps (or simulates) `__has_declspec_attribute`. */
#if defined(RUBY3_HAS_DECLSPEC_ATTRIBUTE)
diff --git a/include/ruby/3/static_assert.h b/include/ruby/3/static_assert.h
index 8a4a5dbfe8..78ce4def4b 100644
--- a/include/ruby/3/static_assert.h
+++ b/include/ruby/3/static_assert.h
@@ -20,7 +20,6 @@
*/
#include <assert.h>
#include "ruby/3/has/extension.h"
-#include "ruby/3/compiler_since.h"
/** @cond INTERNAL_MACRO */
#if defined(RUBY3_STATIC_ASSERT0)
diff --git a/include/ruby/3/stdalign.h b/include/ruby/3/stdalign.h
index 894ca14e7f..294a6410c4 100644
--- a/include/ruby/3/stdalign.h
+++ b/include/ruby/3/stdalign.h
@@ -25,10 +25,8 @@
#endif
#include "ruby/3/compiler_is.h"
-#include "ruby/3/compiler_since.h"
#include "ruby/3/has/feature.h"
#include "ruby/3/has/extension.h"
-#include "ruby/3/has/attribute.h"
#include "ruby/3/has/declspec_attribute.h"
/**
diff --git a/include/ruby/3/token_paste.h b/include/ruby/3/token_paste.h
index 72a8270442..e15897dcc0 100644
--- a/include/ruby/3/token_paste.h
+++ b/include/ruby/3/token_paste.h
@@ -19,9 +19,6 @@
* @brief Defines #RUBY3_TOKEN_PASTE.
*/
#include "ruby/3/config.h"
-#include "ruby/3/compiler_since.h"
-#include "ruby/3/has/warning.h"
-#include "ruby/3/warning_push.h"
/* :TODO: add your compiler here. There are many compilers that can suppress
* warnings via pragmas, but not all of them accept such things inside of `#if`
diff --git a/include/ruby/3/warning_push.h b/include/ruby/3/warning_push.h
index 3f453fce9a..6edaaa37ee 100644
--- a/include/ruby/3/warning_push.h
+++ b/include/ruby/3/warning_push.h
@@ -42,7 +42,6 @@
* ```
*/
#include "ruby/3/compiler_is.h"
-#include "ruby/3/compiler_since.h"
#ifdef RUBY3_WARNING_PUSH
# /* Take that. */
diff --git a/include/ruby/backward/2/gcc_version_since.h b/include/ruby/backward/2/gcc_version_since.h
index c3c7aca5e0..4e2abc45f9 100644
--- a/include/ruby/backward/2/gcc_version_since.h
+++ b/include/ruby/backward/2/gcc_version_since.h
@@ -18,7 +18,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines old #GCC_VERSION_SINCE
*/
-#include "ruby/3/compiler_since.h"
#ifndef GCC_VERSION_SINCE
#define GCC_VERSION_SINCE(x, y, z) RUBY3_COMPILER_SINCE(GCC, (x), (y), (z))
diff --git a/include/ruby/backward/2/long_long.h b/include/ruby/backward/2/long_long.h
index 8669d42cd6..29b930625e 100644
--- a/include/ruby/backward/2/long_long.h
+++ b/include/ruby/backward/2/long_long.h
@@ -24,8 +24,6 @@
* compatibility only.
*/
#include "ruby/3/config.h"
-#include "ruby/3/has/warning.h"
-#include "ruby/3/warning_push.h"
#if defined(LONG_LONG)
# /* Take that. */