summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--addr2line.h5
-rw-r--r--constant.h4
-rw-r--r--dln.h4
-rw-r--r--encindex.h4
-rw-r--r--include/ruby.h24
-rw-r--r--include/ruby/3/anyargs.h8
-rw-r--r--include/ruby/3/arithmetic.h5
-rw-r--r--include/ruby/3/arithmetic/char.h6
-rw-r--r--include/ruby/3/arithmetic/double.h6
-rw-r--r--include/ruby/3/arithmetic/fixnum.h6
-rw-r--r--include/ruby/3/arithmetic/gid_t.h6
-rw-r--r--include/ruby/3/arithmetic/int.h6
-rw-r--r--include/ruby/3/arithmetic/intptr_t.h6
-rw-r--r--include/ruby/3/arithmetic/long.h6
-rw-r--r--include/ruby/3/arithmetic/long_long.h6
-rw-r--r--include/ruby/3/arithmetic/mode_t.h6
-rw-r--r--include/ruby/3/arithmetic/off_t.h6
-rw-r--r--include/ruby/3/arithmetic/pid_t.h6
-rw-r--r--include/ruby/3/arithmetic/short.h6
-rw-r--r--include/ruby/3/arithmetic/size_t.h6
-rw-r--r--include/ruby/3/arithmetic/st_data_t.h6
-rw-r--r--include/ruby/3/arithmetic/uid_t.h6
-rw-r--r--include/ruby/3/assume.h6
-rw-r--r--include/ruby/3/attr/alloc_size.h12
-rw-r--r--include/ruby/3/attr/artificial.h12
-rw-r--r--include/ruby/3/attr/cold.h13
-rw-r--r--include/ruby/3/attr/const.h20
-rw-r--r--include/ruby/3/attr/constexpr.h24
-rw-r--r--include/ruby/3/attr/deprecated.h11
-rw-r--r--include/ruby/3/attr/diagnose_if.h11
-rw-r--r--include/ruby/3/attr/enum_extensibility.h12
-rw-r--r--include/ruby/3/attr/error.h12
-rw-r--r--include/ruby/3/attr/flag_enum.h12
-rw-r--r--include/ruby/3/attr/forceinline.h13
-rw-r--r--include/ruby/3/attr/format.h18
-rw-r--r--include/ruby/3/attr/maybe_unused.h14
-rw-r--r--include/ruby/3/attr/noalias.h12
-rw-r--r--include/ruby/3/attr/nodiscard.h15
-rw-r--r--include/ruby/3/attr/noexcept.h11
-rw-r--r--include/ruby/3/attr/noinline.h13
-rw-r--r--include/ruby/3/attr/nonnull.h12
-rw-r--r--include/ruby/3/attr/noreturn.h11
-rw-r--r--include/ruby/3/attr/pure.h19
-rw-r--r--include/ruby/3/attr/restrict.h11
-rw-r--r--include/ruby/3/attr/returns_nonnull.h11
-rw-r--r--include/ruby/3/attr/warning.h12
-rw-r--r--include/ruby/3/attr/weakref.h12
-rw-r--r--include/ruby/3/cast.h11
-rw-r--r--include/ruby/3/compiler_is.h13
-rw-r--r--include/ruby/3/compiler_is/apple.h11
-rw-r--r--include/ruby/3/compiler_is/clang.h11
-rw-r--r--include/ruby/3/compiler_is/gcc.h11
-rw-r--r--include/ruby/3/compiler_is/intel.h11
-rw-r--r--include/ruby/3/compiler_is/msvc.h11
-rw-r--r--include/ruby/3/compiler_is/sunpro.h11
-rw-r--r--include/ruby/3/compiler_since.h7
-rw-r--r--include/ruby/3/config.h6
-rw-r--r--include/ruby/3/constant_p.h12
-rw-r--r--include/ruby/3/core.h5
-rw-r--r--include/ruby/3/core/rarray.h6
-rw-r--r--include/ruby/3/core/rbasic.h6
-rw-r--r--include/ruby/3/core/rbignum.h6
-rw-r--r--include/ruby/3/core/rclass.h6
-rw-r--r--include/ruby/3/core/rdata.h6
-rw-r--r--include/ruby/3/core/rfile.h6
-rw-r--r--include/ruby/3/core/rhash.h6
-rw-r--r--include/ruby/3/core/rmatch.h6
-rw-r--r--include/ruby/3/core/robject.h6
-rw-r--r--include/ruby/3/core/rregexp.h6
-rw-r--r--include/ruby/3/core/rstring.h6
-rw-r--r--include/ruby/3/core/rstruct.h6
-rw-r--r--include/ruby/3/core/rtypeddata.h6
-rw-r--r--include/ruby/3/ctype.h6
-rw-r--r--include/ruby/3/dllexport.h6
-rw-r--r--include/ruby/3/dosish.h6
-rw-r--r--include/ruby/3/error.h6
-rw-r--r--include/ruby/3/eval.h6
-rw-r--r--include/ruby/3/event.h6
-rw-r--r--include/ruby/3/fl_type.h6
-rw-r--r--include/ruby/3/gc.h6
-rw-r--r--include/ruby/3/glob.h6
-rw-r--r--include/ruby/3/globals.h6
-rw-r--r--include/ruby/3/has/attribute.h11
-rw-r--r--include/ruby/3/has/builtin.h11
-rw-r--r--include/ruby/3/has/c_attribute.h11
-rw-r--r--include/ruby/3/has/cpp_attribute.h17
-rw-r--r--include/ruby/3/has/declspec_attribute.h12
-rw-r--r--include/ruby/3/has/extension.h12
-rw-r--r--include/ruby/3/has/feature.h12
-rw-r--r--include/ruby/3/has/warning.h12
-rw-r--r--include/ruby/3/intern/array.h6
-rw-r--r--include/ruby/3/intern/bignum.h6
-rw-r--r--include/ruby/3/intern/class.h6
-rw-r--r--include/ruby/3/intern/compar.h6
-rw-r--r--include/ruby/3/intern/complex.h6
-rw-r--r--include/ruby/3/intern/cont.h6
-rw-r--r--include/ruby/3/intern/dir.h6
-rw-r--r--include/ruby/3/intern/enum.h6
-rw-r--r--include/ruby/3/intern/enumerator.h6
-rw-r--r--include/ruby/3/intern/error.h6
-rw-r--r--include/ruby/3/intern/eval.h6
-rw-r--r--include/ruby/3/intern/file.h6
-rw-r--r--include/ruby/3/intern/gc.h6
-rw-r--r--include/ruby/3/intern/hash.h6
-rw-r--r--include/ruby/3/intern/io.h6
-rw-r--r--include/ruby/3/intern/load.h6
-rw-r--r--include/ruby/3/intern/marshal.h6
-rw-r--r--include/ruby/3/intern/numeric.h6
-rw-r--r--include/ruby/3/intern/object.h6
-rw-r--r--include/ruby/3/intern/parse.h6
-rw-r--r--include/ruby/3/intern/proc.h6
-rw-r--r--include/ruby/3/intern/process.h6
-rw-r--r--include/ruby/3/intern/random.h6
-rw-r--r--include/ruby/3/intern/range.h6
-rw-r--r--include/ruby/3/intern/rational.h6
-rw-r--r--include/ruby/3/intern/re.h6
-rw-r--r--include/ruby/3/intern/ruby.h6
-rw-r--r--include/ruby/3/intern/select.h6
-rw-r--r--include/ruby/3/intern/select/largesize.h6
-rw-r--r--include/ruby/3/intern/select/posix.h6
-rw-r--r--include/ruby/3/intern/select/win32.h6
-rw-r--r--include/ruby/3/intern/signal.h6
-rw-r--r--include/ruby/3/intern/sprintf.h6
-rw-r--r--include/ruby/3/intern/string.h6
-rw-r--r--include/ruby/3/intern/struct.h6
-rw-r--r--include/ruby/3/intern/thread.h7
-rw-r--r--include/ruby/3/intern/time.h8
-rw-r--r--include/ruby/3/intern/variable.h6
-rw-r--r--include/ruby/3/intern/vm.h6
-rw-r--r--include/ruby/3/interpreter.h7
-rw-r--r--include/ruby/3/iterator.h6
-rw-r--r--include/ruby/3/memory.h6
-rw-r--r--include/ruby/3/method.h6
-rw-r--r--include/ruby/3/module.h6
-rw-r--r--include/ruby/3/newobj.h6
-rw-r--r--include/ruby/3/rgengc.h6
-rw-r--r--include/ruby/3/scan_args.h6
-rw-r--r--include/ruby/3/special_consts.h7
-rw-r--r--include/ruby/3/static_assert.h16
-rw-r--r--include/ruby/3/stdalign.h16
-rw-r--r--include/ruby/3/stdbool.h6
-rw-r--r--include/ruby/3/symbol.h6
-rw-r--r--include/ruby/3/token_paste.h11
-rw-r--r--include/ruby/3/value.h6
-rw-r--r--include/ruby/3/value_type.h6
-rw-r--r--include/ruby/3/variable.h8
-rw-r--r--include/ruby/3/warning_push.h11
-rw-r--r--include/ruby/3/xmalloc.h6
-rw-r--r--include/ruby/assert.h6
-rw-r--r--include/ruby/backward.h10
-rw-r--r--include/ruby/backward/2/assume.h6
-rw-r--r--include/ruby/backward/2/attributes.h6
-rw-r--r--include/ruby/backward/2/bool.h6
-rw-r--r--include/ruby/backward/2/extern.h11
-rw-r--r--include/ruby/backward/2/gcc_version_since.h6
-rw-r--r--include/ruby/backward/2/inttypes.h6
-rw-r--r--include/ruby/backward/2/limits.h6
-rw-r--r--include/ruby/backward/2/long_long.h11
-rw-r--r--include/ruby/backward/2/r_cast.h6
-rw-r--r--include/ruby/backward/2/rmodule.h7
-rw-r--r--include/ruby/backward/2/stdalign.h6
-rw-r--r--include/ruby/backward/2/stdarg.h6
-rw-r--r--include/ruby/backward/classext.h15
-rw-r--r--include/ruby/backward/cxxanyargs.hpp5
-rw-r--r--include/ruby/backward/rubyio.h12
-rw-r--r--include/ruby/backward/rubysig.h27
-rw-r--r--include/ruby/backward/st.h12
-rw-r--r--include/ruby/backward/util.h12
-rw-r--r--include/ruby/debug.h25
-rw-r--r--include/ruby/defines.h6
-rw-r--r--include/ruby/encoding.h24
-rw-r--r--include/ruby/intern.h28
-rw-r--r--include/ruby/io.h24
-rw-r--r--include/ruby/missing.h7
-rw-r--r--include/ruby/re.h24
-rw-r--r--include/ruby/regex.h22
-rw-r--r--include/ruby/ruby.h28
-rw-r--r--include/ruby/subst.h10
-rw-r--r--include/ruby/thread.h24
-rw-r--r--include/ruby/thread_native.h23
-rw-r--r--include/ruby/util.h24
-rw-r--r--include/ruby/version.h31
-rw-r--r--include/ruby/vm.h24
-rw-r--r--internal.h24
-rw-r--r--internal/array.h6
-rw-r--r--internal/bignum.h6
-rw-r--r--internal/bits.h6
-rw-r--r--internal/class.h6
-rw-r--r--internal/compar.h6
-rw-r--r--internal/compile.h6
-rw-r--r--internal/compilers.h6
-rw-r--r--internal/complex.h8
-rw-r--r--internal/cont.h6
-rw-r--r--internal/dir.h6
-rw-r--r--internal/enc.h6
-rw-r--r--internal/encoding.h6
-rw-r--r--internal/enum.h6
-rw-r--r--internal/enumerator.h6
-rw-r--r--internal/error.h6
-rw-r--r--internal/eval.h6
-rw-r--r--internal/file.h6
-rw-r--r--internal/fixnum.h6
-rw-r--r--internal/gc.h6
-rw-r--r--internal/hash.h6
-rw-r--r--internal/imemo.h6
-rw-r--r--internal/inits.h6
-rw-r--r--internal/io.h6
-rw-r--r--internal/load.h6
-rw-r--r--internal/loadpath.h6
-rw-r--r--internal/math.h6
-rw-r--r--internal/missing.h6
-rw-r--r--internal/mjit.h6
-rw-r--r--internal/numeric.h6
-rw-r--r--internal/object.h6
-rw-r--r--internal/parse.h6
-rw-r--r--internal/proc.h6
-rw-r--r--internal/process.h6
-rw-r--r--internal/random.h6
-rw-r--r--internal/range.h6
-rw-r--r--internal/rational.h6
-rw-r--r--internal/re.h6
-rw-r--r--internal/sanitizers.h6
-rw-r--r--internal/serial.h6
-rw-r--r--internal/signal.h6
-rw-r--r--internal/static_assert.h6
-rw-r--r--internal/string.h6
-rw-r--r--internal/struct.h6
-rw-r--r--internal/symbol.h6
-rw-r--r--internal/thread.h6
-rw-r--r--internal/time.h6
-rw-r--r--internal/transcode.h6
-rw-r--r--internal/util.h6
-rw-r--r--internal/variable.h6
-rw-r--r--internal/vm.h6
-rw-r--r--internal/warnings.h6
-rw-r--r--iseq.h5
-rw-r--r--method.h4
-rw-r--r--missing/crypt.h5
-rw-r--r--missing/file.h3
-rw-r--r--mjit.h5
-rw-r--r--node.h5
-rw-r--r--ruby_assert.h11
-rw-r--r--symbol.h5
-rw-r--r--thread_pthread.h5
-rw-r--r--thread_win32.h5
-rw-r--r--transcode_data.h5
-rw-r--r--transient_heap.h5
-rw-r--r--variable.h12
-rw-r--r--version.h12
-rw-r--r--vm_callinfo.h13
-rw-r--r--vm_core.h5
-rw-r--r--vm_debug.h5
-rw-r--r--vm_exec.h5
-rw-r--r--vm_insnhelper.h5
-rw-r--r--vm_opts.h7
255 files changed, 1141 insertions, 1038 deletions
diff --git a/addr2line.h b/addr2line.h
index 4f6cf179ef..f09b665800 100644
--- a/addr2line.h
+++ b/addr2line.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_ADDR2LINE_H
+#define RUBY_ADDR2LINE_H
/**********************************************************************
addr2line.h -
@@ -8,9 +10,6 @@
**********************************************************************/
-#ifndef RUBY_ADDR2LINE_H
-#define RUBY_ADDR2LINE_H
-
#if (defined(USE_ELF) || defined(HAVE_MACH_O_LOADER_H))
void
diff --git a/constant.h b/constant.h
index 1396651e21..e0d36909e1 100644
--- a/constant.h
+++ b/constant.h
@@ -1,3 +1,5 @@
+#ifndef CONSTANT_H
+#define CONSTANT_H
/**********************************************************************
constant.h -
@@ -8,8 +10,6 @@
Copyright (C) 2009 Yusuke Endoh
**********************************************************************/
-#ifndef CONSTANT_H
-#define CONSTANT_H
#include "ruby/ruby.h"
#include "id_table.h"
diff --git a/dln.h b/dln.h
index 9570de8f15..d8999635bc 100644
--- a/dln.h
+++ b/dln.h
@@ -1,3 +1,5 @@
+#ifndef DLN_H
+#define DLN_H
/**********************************************************************
dln.h -
@@ -9,8 +11,6 @@
**********************************************************************/
-#ifndef DLN_H
-#define DLN_H
#include "ruby/defines.h" /* for RUBY_SYMBOL_EXPORT_BEGIN */
#ifdef __cplusplus
diff --git a/encindex.h b/encindex.h
index baf70735ec..8457a7b39f 100644
--- a/encindex.h
+++ b/encindex.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_ENCINDEX_H
+#define RUBY_ENCINDEX_H 1
/**********************************************************************
encindex.h -
@@ -9,8 +11,6 @@
**********************************************************************/
-#ifndef RUBY_ENCINDEX_H
-#define RUBY_ENCINDEX_H 1
#include "ruby/encoding.h" /* rb_ascii8bit_encindex etc. */
#if defined(__cplusplus)
extern "C" {
diff --git a/include/ruby.h b/include/ruby.h
index 076b5ce258..e530f4f0ad 100644
--- a/include/ruby.h
+++ b/include/ruby.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- ruby.h -
-
- $Author$
- created at: Sun 10 12:06:15 Jun JST 2007
-
- Copyright (C) 2007-2008 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_H
+#ifndef RUBY_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Sun 10 12:06:15 Jun JST 2007
+ * @copyright 2007-2008 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#define HAVE_RUBY_DEFINES_H 1
#define HAVE_RUBY_ENCODING_H 1
#define HAVE_RUBY_INTERN_H 1
diff --git a/include/ruby/3/anyargs.h b/include/ruby/3/anyargs.h
index 7c2aa05c21..7eff1b2cc9 100644
--- a/include/ruby/3/anyargs.h
+++ b/include/ruby/3/anyargs.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ANYARGS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ANYARGS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -65,8 +67,6 @@
* `__builtin_types_compatible_p`, and in doing so we need to distinguish
* ::rb_f_notimplement from others, by type.
*/
-#ifndef RUBY3_ANYARGS_H
-#define RUBY3_ANYARGS_H
#include "ruby/3/attr/maybe_unused.h"
#include "ruby/3/attr/nonnull.h"
#include "ruby/3/attr/weakref.h"
@@ -371,4 +371,4 @@ RUBY3_ANYARGS_DECL(rb_define_method, VALUE, const char *)
#endif
-#endif /* RUBY3_ANYARGS_H */
+#endif /* RUBY3_ANYARGS_H */
diff --git a/include/ruby/3/arithmetic.h b/include/ruby/3/arithmetic.h
index 366014ac77..5dcdfcd9e4 100644
--- a/include/ruby/3/arithmetic.h
+++ b/include/ruby/3/arithmetic.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -33,3 +35,4 @@
#include "ruby/3/arithmetic/size_t.h"
#include "ruby/3/arithmetic/st_data_t.h"
#include "ruby/3/arithmetic/uid_t.h"
+#endif /* RUBY3_ARITHMETIC_H */
diff --git a/include/ruby/3/arithmetic/char.h b/include/ruby/3/arithmetic/char.h
index 94329b7a9e..03afa0a406 100644
--- a/include/ruby/3/arithmetic/char.h
+++ b/include/ruby/3/arithmetic/char.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_CHAR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_CHAR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Arithmetic conversion between C's `char` and Ruby's.
*/
-#ifndef RUBY3_ARITHMETIC_CHAR_H
-#define RUBY3_ARITHMETIC_CHAR_H
#include "ruby/3/arithmetic/int.h" /* NUM2INT is here, but */
#include "ruby/3/arithmetic/long.h" /* INT2FIX is here.*/
#include "ruby/3/attr/artificial.h"
diff --git a/include/ruby/3/arithmetic/double.h b/include/ruby/3/arithmetic/double.h
index 82e9fdc3b1..4a37611a21 100644
--- a/include/ruby/3/arithmetic/double.h
+++ b/include/ruby/3/arithmetic/double.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_DOUBLE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_DOUBLE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Arithmetic conversion between C's `double` and Ruby's.
*/
-#ifndef RUBY3_ARITHMETIC_DOUBLE_H
-#define RUBY3_ARITHMETIC_DOUBLE_H
#include "ruby/3/attr/pure.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/arithmetic/fixnum.h b/include/ruby/3/arithmetic/fixnum.h
index e995b5f3f8..d7214e080b 100644
--- a/include/ruby/3/arithmetic/fixnum.h
+++ b/include/ruby/3/arithmetic/fixnum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_FIXNUM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_FIXNUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Handling of integers formerly known as Fixnums.
*/
-#ifndef RUBY3_ARITHMETIC_FIXNUM_H
-#define RUBY3_ARITHMETIC_FIXNUM_H
#include "ruby/backward/2/limits.h"
#define FIXABLE RB_FIXABLE
diff --git a/include/ruby/3/arithmetic/gid_t.h b/include/ruby/3/arithmetic/gid_t.h
index ebdd4d21f6..7c4c1b00ed 100644
--- a/include/ruby/3/arithmetic/gid_t.h
+++ b/include/ruby/3/arithmetic/gid_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_GID_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_GID_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -28,3 +30,5 @@
#ifndef NUM2GIDT
# define NUM2GIDT RB_NUM2LONG
#endif
+
+#endif /* RUBY3_ARITHMETIC_GID_T_H */
diff --git a/include/ruby/3/arithmetic/int.h b/include/ruby/3/arithmetic/int.h
index 36485167cc..8c2e9f2bd8 100644
--- a/include/ruby/3/arithmetic/int.h
+++ b/include/ruby/3/arithmetic/int.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_INT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_INT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Arithmetic conversion between C's `int` and Ruby's.
*/
-#ifndef RUBY3_ARITHMETIC_INT_H
-#define RUBY3_ARITHMETIC_INT_H
#include "ruby/3/config.h"
#include "ruby/3/arithmetic/fixnum.h"
#include "ruby/3/arithmetic/intptr_t.h"
diff --git a/include/ruby/3/arithmetic/intptr_t.h b/include/ruby/3/arithmetic/intptr_t.h
index fd8043a10d..7eabf75a80 100644
--- a/include/ruby/3/arithmetic/intptr_t.h
+++ b/include/ruby/3/arithmetic/intptr_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_INTPTR_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_INTPTR_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Arithmetic conversion between C's `intptr_t` and Ruby's.
*/
-#ifndef RUBY3_ARITHMETIC_INTPTR_T_H
-#define RUBY3_ARITHMETIC_INTPTR_T_H
#include "ruby/3/config.h"
#ifdef HAVE_STDINT_H
diff --git a/include/ruby/3/arithmetic/long.h b/include/ruby/3/arithmetic/long.h
index 7925669baf..46ff76d63e 100644
--- a/include/ruby/3/arithmetic/long.h
+++ b/include/ruby/3/arithmetic/long.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_LONG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_LONG_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -26,8 +28,6 @@
* understand the difference of `int` and `long` when they designed those
* macros.
*/
-#ifndef RUBY3_ARITHMETIC_LONG_H
-#define RUBY3_ARITHMETIC_LONG_H
#include "ruby/3/config.h"
#include "ruby/3/arithmetic/fixnum.h" /* FIXABLE */
#include "ruby/3/arithmetic/intptr_t.h" /* rb_int2big etc.*/
diff --git a/include/ruby/3/arithmetic/long_long.h b/include/ruby/3/arithmetic/long_long.h
index 571edfe8c4..1dfe0f6f71 100644
--- a/include/ruby/3/arithmetic/long_long.h
+++ b/include/ruby/3/arithmetic/long_long.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_LONG_LONG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_LONG_LONG_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Arithmetic conversion between C's `long long` and Ruby's.
*/
-#ifndef RUBY3_ARITHMETIC_LONG_LONG_H
-#define RUBY3_ARITHMETIC_LONG_LONG_H
#include "ruby/3/value.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/special_consts.h"
diff --git a/include/ruby/3/arithmetic/mode_t.h b/include/ruby/3/arithmetic/mode_t.h
index 54ccd376f8..ea6386305a 100644
--- a/include/ruby/3/arithmetic/mode_t.h
+++ b/include/ruby/3/arithmetic/mode_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_MODE_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_MODE_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -28,3 +30,5 @@
#ifndef MODET2NUM
# define MODET2NUM RB_INT2NUM
#endif
+
+#endif /* RUBY3_ARITHMETIC_MODE_T_H */
diff --git a/include/ruby/3/arithmetic/off_t.h b/include/ruby/3/arithmetic/off_t.h
index dd964b5446..03d0756257 100644
--- a/include/ruby/3/arithmetic/off_t.h
+++ b/include/ruby/3/arithmetic/off_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_OFF_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_OFF_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -43,3 +45,5 @@
#else
# define NUM2OFFT RB_NUM2INT
#endif
+
+#endif /* RUBY3_ARITHMETIC_OFF_T_H */
diff --git a/include/ruby/3/arithmetic/pid_t.h b/include/ruby/3/arithmetic/pid_t.h
index bca0248d2a..e63d9e3049 100644
--- a/include/ruby/3/arithmetic/pid_t.h
+++ b/include/ruby/3/arithmetic/pid_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_PID_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_PID_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -28,3 +30,5 @@
#ifndef NUM2PIDT
# define NUM2PIDT RB_NUM2LONG
#endif
+
+#endif /* RUBY3_ARITHMETIC_PID_T_H */
diff --git a/include/ruby/3/arithmetic/short.h b/include/ruby/3/arithmetic/short.h
index fd2106c216..4fb07a8d03 100644
--- a/include/ruby/3/arithmetic/short.h
+++ b/include/ruby/3/arithmetic/short.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_SHORT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_SHORT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,8 +23,6 @@
* Shyouhei wonders: why there is no SHORT2NUM, given there are both
* #USHORT2NUM and #CHR2FIX?
*/
-#ifndef RUBY3_ARITHMETIC_SHORT_H
-#define RUBY3_ARITHMETIC_SHORT_H
#include "ruby/3/value.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/special_consts.h"
diff --git a/include/ruby/3/arithmetic/size_t.h b/include/ruby/3/arithmetic/size_t.h
index 70161c3ab0..848a3f1271 100644
--- a/include/ruby/3/arithmetic/size_t.h
+++ b/include/ruby/3/arithmetic/size_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_SIZE_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_SIZE_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -45,3 +47,5 @@
# define NUM2SIZET RB_NUM2UINT
# define NUM2SSIZET RB_NUM2INT
#endif
+
+#endif /* RUBY3_ARITHMETIC_SIZE_T_H */
diff --git a/include/ruby/3/arithmetic/st_data_t.h b/include/ruby/3/arithmetic/st_data_t.h
index a4917a42f4..f9a28ce1db 100644
--- a/include/ruby/3/arithmetic/st_data_t.h
+++ b/include/ruby/3/arithmetic/st_data_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMERIC_ST_DATA_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMERIC_ST_DATA_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Arithmetic conversion between C's `st_data_t` and Ruby's.
*/
-#ifndef RUBY3_ARITHMERIC_ST_DATA_T_H
-#define RUBY3_ARITHMERIC_ST_DATA_T_H
#include "ruby/3/arithmetic/fixnum.h"
#include "ruby/3/arithmetic/long.h"
#include "ruby/3/attr/artificial.h"
diff --git a/include/ruby/3/arithmetic/uid_t.h b/include/ruby/3/arithmetic/uid_t.h
index 45b1f5a9ca..c49b79e934 100644
--- a/include/ruby/3/arithmetic/uid_t.h
+++ b/include/ruby/3/arithmetic/uid_t.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ARITHMETIC_UID_T_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ARITHMETIC_UID_T_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -28,3 +30,5 @@
#ifndef NUM2UIDT
# define NUM2UIDT RB_NUM2LONG
#endif
+
+#endif /* RUBY3_ARITHMETIC_UID_T_H */
diff --git a/include/ruby/3/assume.h b/include/ruby/3/assume.h
index 3d60aee81a..13928db934 100644
--- a/include/ruby/3/assume.h
+++ b/include/ruby/3/assume.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ASSUME_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ASSUME_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -23,8 +25,6 @@
* - #RUBY3_ASSUME could fallback to #RUBY3_UNREACHABLE.
* - #RUBY3_UNREACHABLE could fallback to #RUBY3_ASSUME.
*/
-#ifndef RUBY3_ASSUME_H
-#define RUBY3_ASSUME_H
#include "ruby/3/config.h"
#include "ruby/3/cast.h"
#include "ruby/3/has/builtin.h"
diff --git a/include/ruby/3/attr/alloc_size.h b/include/ruby/3/attr/alloc_size.h
index 8296e9dcfd..251a19f7f3 100644
--- a/include/ruby/3/attr/alloc_size.h
+++ b/include/ruby/3/attr/alloc_size.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_ALLOC_SIZE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_ALLOC_SIZE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__attribute__((alloc_size))` */
-#if defined(RUBY3_ATTR_ALLOC_SIZE)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(alloc_size)
+#if RUBY3_HAS_ATTRIBUTE(alloc_size)
# define RUBY3_ATTR_ALLOC_SIZE(tuple) __attribute__((__alloc_size__ tuple))
-
#else
# define RUBY3_ATTR_ALLOC_SIZE(tuple) /* void */
#endif
+
+#endif /* RUBY3_ATTR_ALLOC_SIZE_H */
diff --git a/include/ruby/3/attr/artificial.h b/include/ruby/3/attr/artificial.h
index 5e94a048f9..a9f305daab 100644
--- a/include/ruby/3/attr/artificial.h
+++ b/include/ruby/3/attr/artificial.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_ARTIFICIAL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_ARTIFICIAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -34,12 +36,10 @@
*/
/** Wraps (or simulates) `__attribute__((artificial))` */
-#if defined(RUBY3_ATTR_ARTIFICIAL)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(artificial)
+#if RUBY3_HAS_ATTRIBUTE(artificial)
# define RUBY3_ATTR_ARTIFICIAL() __attribute__((__artificial__))
-
#else
# define RUBY3_ATTR_ARTIFICIAL() /* void */
#endif
+
+#endif /* RUBY3_ATTR_ARTIFICIAL_H */
diff --git a/include/ruby/3/attr/cold.h b/include/ruby/3/attr/cold.h
index 27f92763f1..5b5263feb0 100644
--- a/include/ruby/3/attr/cold.h
+++ b/include/ruby/3/attr/cold.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_COLD_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_COLD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,17 +23,14 @@
#include "ruby/3/compiler_is.h"
/** Wraps (or simulates) `__attribute__((cold))` */
-#if defined(RUBY3_ATTR_COLD)
-# /* Take that. */
-
-#elif RUBY3_COMPILER_IS(SunPro)
+#if RUBY3_COMPILER_IS(SunPro)
# /* Recent SunPro has __has_attribute, and is borken. */
# /* It reports it has attribute cold, reality isn't (warnings issued). */
# define RUBY3_ATTR_COLD() /* void */
-
#elif RUBY3_HAS_ATTRIBUTE(cold)
# define RUBY3_ATTR_COLD() __attribute__((__cold__))
-
#else
# define RUBY3_ATTR_COLD() /* void */
#endif
+
+#endif /* RUBY3_ATTR_COLD_H */
diff --git a/include/ruby/3/attr/const.h b/include/ruby/3/attr/const.h
index 689889cb65..d97495c647 100644
--- a/include/ruby/3/attr/const.h
+++ b/include/ruby/3/attr/const.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_CONST_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_CONST_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,30 +23,22 @@
#include "ruby/3/has/declspec_attribute.h"
/** Wraps (or simulates) `__attribute__((const))` */
-#if defined(RUBY3_ATTR_CONST)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(const)
+#if RUBY3_HAS_ATTRIBUTE(const)
# define RUBY3_ATTR_CONST() __attribute__((__const__))
-
#elif RUBY3_HAS_DECLSPEC_ATTRIBUTE(noalias)
# /* If a function can be a const, that is also a noalias. */
# define RUBY3_ATTR_CONST() __declspec(noalias)
-
#elif RUBY3_COMPILER_SINCE(SunPro, 5, 10, 0)
# define RUBY3_ATTR_CONST() _Pragma("no_side_effect")
-
#else
# define RUBY3_ATTR_CONST() /* void */
#endif
/** Enables #RUBY3_ATTR_CONST iff. #RUBY_NDEBUG. */
-#if defined(RUBY3_ATTR_CONST_ON_NDEBUG)
-# /* Take that. */
-
-#elif RUBY_NDEBUG
+#if RUBY_NDEBUG
# define RUBY3_ATTR_CONST_ON_NDEBUG() RUBY3_ATTR_CONST()
-
#else
# define RUBY3_ATTR_CONST_ON_NDEBUG() /* void */
#endif
+
+#endif /* RUBY3_ATTR_CONST_H */
diff --git a/include/ruby/3/attr/constexpr.h b/include/ruby/3/attr/constexpr.h
index 11842d87c0..582d9fd000 100644
--- a/include/ruby/3/attr/constexpr.h
+++ b/include/ruby/3/attr/constexpr.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_CONSTEXPR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_CONSTEXPR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,11 +23,8 @@
#include "ruby/3/has/feature.h"
#include "ruby/3/compiler_is.h"
-/** @cond INTERNAL_MACRO*/
-#if defined(RUBY3_ATTR_CONSTEXPR)
-# /* Take that. */
-
-#elif ! defined(__cplusplus)
+/** @cond INTERNAL_MACRO */
+#if ! defined(__cplusplus)
# /* Makes no sense. */
# define RUBY3_HAS_ATTR_CONSTEXPR_CXX11 0
# define RUBY3_HAS_ATTR_CONSTEXPR_CXX14 0
@@ -63,10 +62,7 @@
/** @endcond */
/** Wraps (or simulates) C++11 `constexpr`. */
-#if defined(RUBY3_ATTR_CONSTEXPR)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTR_CONSTEXPR_CXX14
+#if RUBY3_HAS_ATTR_CONSTEXPR_CXX14
# define RUBY3_ATTR_CONSTEXPR(_) constexpr
#elif RUBY3_HAS_ATTR_CONSTEXPR_CXX11
@@ -79,12 +75,10 @@
#endif
/** Enables #RUBY3_ATTR_CONSTEXPR iff. #RUBY_NDEBUG. */
-#if defined(RUBY3_ATTR_CONSTEXPR_ON_NDEBUG)
-# /* Take that. */
-
-#elif RUBY_NDEBUG
+#if RUBY_NDEBUG
# define RUBY3_ATTR_CONSTEXPR_ON_NDEBUG(_) RUBY3_ATTR_CONSTEXPR(_)
-
#else
# define RUBY3_ATTR_CONSTEXPR_ON_NDEBUG(_) /* void */
#endif
+
+#endif /* RUBY3_ATTR_CONSTEXPR_H */
diff --git a/include/ruby/3/attr/deprecated.h b/include/ruby/3/attr/deprecated.h
index 629f7c9fc5..9f939a5e8c 100644
--- a/include/ruby/3/attr/deprecated.h
+++ b/include/ruby/3/attr/deprecated.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_DEPRECATED_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_DEPRECATED_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -24,10 +26,7 @@
#include "ruby/3/has/extension.h"
/** Wraps (or simulates) `[[deprecated]]` */
-#if defined(RUBY3_ATTR_DEPRECATED)
-# /* Take that. */
-
-#elif RUBY3_HAS_EXTENSION(attribute_deprecated_with_message)
+#if RUBY3_HAS_EXTENSION(attribute_deprecated_with_message)
# define RUBY3_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
#elif RUBY3_COMPILER_SINCE(GCC, 4, 5, 0)
@@ -54,3 +53,5 @@
#else
# define RUBY3_ATTR_DEPRECATED(msg) /* void */
#endif
+
+#endif /* RUBY3_ATTR_DEPRECATED_H */
diff --git a/include/ruby/3/attr/diagnose_if.h b/include/ruby/3/attr/diagnose_if.h
index a363c4cdb3..488c3ec7ad 100644
--- a/include/ruby/3/attr/diagnose_if.h
+++ b/include/ruby/3/attr/diagnose_if.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_DIAGNOSE_IF_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_DIAGNOSE_IF_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,10 +22,7 @@
*/
/** Wraps (or simulates) `__attribute__((diagnose_if))` */
-#if defined(RUBY3_ATTR_DIAGNOSE_IF)
-# /* Take that. */
-
-#elif RUBY3_COMPILER_BEFORE(Clang, 5, 0, 0)
+#if RUBY3_COMPILER_BEFORE(Clang, 5, 0, 0)
# /* https://bugs.llvm.org/show_bug.cgi?id=34319 */
# define RUBY3_ATTR_DIAGNOSE_IF(_, __, ___) /* void */
@@ -37,3 +36,5 @@
#else
# define RUBY3_ATTR_DIAGNOSE_IF(_, __, ___) /* void */
#endif
+
+#endif /* RUBY3_ATTR_DIAGNOSE_IF_H */
diff --git a/include/ruby/3/attr/enum_extensibility.h b/include/ruby/3/attr/enum_extensibility.h
index 0631057383..a56d1a54b8 100644
--- a/include/ruby/3/attr/enum_extensibility.h
+++ b/include/ruby/3/attr/enum_extensibility.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_ENUM_EXTENSIBILITY_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_ENUM_EXTENSIBILITY_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__attribute__((enum_extensibility))` */
-#if defined(RUBY3_ATTR_ENUM_EXTENSIBILITY)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(enum_extensibility)
+#if RUBY3_HAS_ATTRIBUTE(enum_extensibility)
# define RUBY3_ATTR_ENUM_EXTENSIBILITY(_) __attribute__((__enum_extensibility__(_)))
-
#else
# define RUBY3_ATTR_ENUM_EXTENSIBILITY(_) /* void */
#endif
+
+#endif /* RUBY3_ATTR_ENUM_EXTENSIBILITY_H */
diff --git a/include/ruby/3/attr/error.h b/include/ruby/3/attr/error.h
index ec9383aace..ee5e3290ae 100644
--- a/include/ruby/3/attr/error.h
+++ b/include/ruby/3/attr/error.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_ERROR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_ERROR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__attribute__((error))` */
-#if defined(RUBY3_ATTR_ERROR)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(error)
+#if RUBY3_HAS_ATTRIBUTE(error)
# define RUBY3_ATTR_ERROR(msg) __attribute__((__error__ msg))
-
#else
# define RUBY3_ATTR_ERROR(msg) /* void */
#endif
+
+#endif /* RUBY3_ATTR_ERROR_H */
diff --git a/include/ruby/3/attr/flag_enum.h b/include/ruby/3/attr/flag_enum.h
index 5e7e9982f9..7165347bd7 100644
--- a/include/ruby/3/attr/flag_enum.h
+++ b/include/ruby/3/attr/flag_enum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_FLAG_ENUM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_FLAG_ENUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,12 +23,10 @@
*/
/** Wraps (or simulates) `__attribute__((flag_enum)` */
-#if defined(RUBY3_ATTR_FLAG_ENUM)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(flag_enum)
+#if RUBY3_HAS_ATTRIBUTE(flag_enum)
# define RUBY3_ATTR_FLAG_ENUM() __attribute__((__flag_enum__))
-
#else
# define RUBY3_ATTR_FLAG_ENUM() /* void */
#endif
+
+#endif /* RUBY3ATTR_FLAG_ENUM_H */
diff --git a/include/ruby/3/attr/forceinline.h b/include/ruby/3/attr/forceinline.h
index 6d279235b8..3c865e9c4b 100644
--- a/include/ruby/3/attr/forceinline.h
+++ b/include/ruby/3/attr/forceinline.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_FORCEINLINE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_FORCEINLINE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -25,15 +27,12 @@
* `__forceinline` are mutually exclusive. We have to mimic that behaviour for
* non-MSVC compilers.
*/
-#if defined(RUBY3_ATTR_FORCEINLINE)
-# /* Take that. */
-
-#elif RUBY3_COMPILER_SINCE(MSVC, 12, 0, 0)
+#if RUBY3_COMPILER_SINCE(MSVC, 12, 0, 0)
# define RUBY3_ATTR_FORCEINLINE() __forceinline
-
#elif RUBY3_HAS_ATTRIBUTE(always_inline)
# define RUBY3_ATTR_FORCEINLINE() __attribute__((__always_inline__)) inline
-
#else
# define RUBY3_ATTR_FORCEINLINE() inline
#endif
+
+#endif /* RUBY3_ATTR_FORCEINLINE_H */
diff --git a/include/ruby/3/attr/format.h b/include/ruby/3/attr/format.h
index de8e2f53c4..c234034afe 100644
--- a/include/ruby/3/attr/format.h
+++ b/include/ruby/3/attr/format.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_FORMAT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_FORMAT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,22 +22,16 @@
*/
/** Wraps (or simulates) `__attribute__((format))` */
-#if defined(RUBY3_ATTR_FORMAT)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(format)
+#if RUBY3_HAS_ATTRIBUTE(format)
# define RUBY3_ATTR_FORMAT(x, y, z) __attribute__((__format__(x, y, z)))
-
#else
# define RUBY3_ATTR_FORMAT(x, y, z) /* void */
#endif
-#if defined(RUBY3_PRINTF_FORMAT)
-# /* Take that. */
-
-#elif defined(__MINGW_PRINTF_FORMAT)
+#if defined(__MINGW_PRINTF_FORMAT)
# define RUBY3_PRINTF_FORMAT __MINGW_PRINTF_FORMAT
-
#else
# define RUBY3_PRINTF_FORMAT __printf__
#endif
+
+#endif /* RUBY3_ATTR_FORMAT_H */
diff --git a/include/ruby/3/attr/maybe_unused.h b/include/ruby/3/attr/maybe_unused.h
index 29a8c35bfc..f814804e9f 100644
--- a/include/ruby/3/attr/maybe_unused.h
+++ b/include/ruby/3/attr/maybe_unused.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_MAYBE_UNUSED_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_MAYBE_UNUSED_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,18 +24,14 @@
#include "ruby/3/has/cpp_attribute.h"
/** Wraps (or simulates) `[[maybe_unused]]` */
-#if defined(RUBY3_ATTR_MAYBE_UNUSED)
-# /* Take that. */
-
-#elif RUBY3_HAS_CPP_ATTRIBUTE(maybe_unused)
+#if RUBY3_HAS_CPP_ATTRIBUTE(maybe_unused)
# define RUBY3_ATTR_MAYBE_UNUSED() [[maybe_unused]]
-
#elif RUBY3_HAS_C_ATTRIBUTE(maybe_unused)
# define RUBY3_ATTR_MAYBE_UNUSED() [[maybe_unused]]
-
#elif RUBY3_HAS_ATTRIBUTE(unused)
# define RUBY3_ATTR_MAYBE_UNUSED() __attribute__((__unused__))
-
#else
# define RUBY3_ATTR_MAYBE_UNUSED() /* void */
#endif
+
+#endif /* RUBY3_ATTR_MAYBE_UNUSED */
diff --git a/include/ruby/3/attr/noalias.h b/include/ruby/3/attr/noalias.h
index c15f1480cb..49ad11999d 100644
--- a/include/ruby/3/attr/noalias.h
+++ b/include/ruby/3/attr/noalias.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_NOALIAS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_NOALIAS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -47,12 +49,10 @@
#include "ruby/3/has/declspec_attribute.h"
/** Wraps (or simulates) `__declspec((noalias))` */
-#if defined(RUBY3_ATTR_NOALIAS)
-# /* Take that. */
-
-#elif RUBY3_HAS_DECLSPEC_ATTRIBUTE(noalias)
+#if RUBY3_HAS_DECLSPEC_ATTRIBUTE(noalias)
# define RUBY3_ATTR_NOALIAS() __declspec(noalias)
-
#else
# define RUBY3_ATTR_NOALIAS() /* void */
#endif
+
+#endif /* RUBY3_ATTR_NOALIAS_H */
diff --git a/include/ruby/3/attr/nodiscard.h b/include/ruby/3/attr/nodiscard.h
index 342a1da7ad..0142d22bd4 100644
--- a/include/ruby/3/attr/nodiscard.h
+++ b/include/ruby/3/attr/nodiscard.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_NODISCARD_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_NODISCARD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -26,22 +28,17 @@
* nodiscard attribute can have a message why the result shall not be ignoed.
* However GCC attribute and SAL annotation cannot take them.
*/
-#if defined(RUBY3_ATTR_NODISCARD)
-# /* Take that. */
-
-#elif RUBY3_HAS_CPP_ATTRIBUTE(nodiscard)
+#if RUBY3_HAS_CPP_ATTRIBUTE(nodiscard)
# define RUBY3_ATTR_NODISCARD() [[nodiscard]]
-
#elif RUBY3_HAS_C_ATTRIBUTE(nodiscard)
# define RUBY3_ATTR_NODISCARD() [[nodiscard]]
-
#elif RUBY3_HAS_ATTRIBUTE(warn_unused_result)
# define RUBY3_ATTR_NODISCARD() __attribute__((__warn_unused_result__))
-
#elif defined(_Check_return_)
# /* Take SAL definition. */
# define RUBY3_ATTR_NODISCARD() _Check_return_
-
#else
# define RUBY3_ATTR_NODISCARD() /* void */
#endif
+
+#endif /* RUBY3_ATTR_NODISCARD_H */
diff --git a/include/ruby/3/attr/noexcept.h b/include/ruby/3/attr/noexcept.h
index 1bc90de88c..a99ca0b35c 100644
--- a/include/ruby/3/attr/noexcept.h
+++ b/include/ruby/3/attr/noexcept.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_NOEXCEPT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_NOEXCEPT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -62,10 +64,7 @@
#include "ruby/3/has/feature.h"
/** Wraps (or simulates) C++11 `noexcept` */
-#if defined(RUBY3_ATTR_NOEXCEPT)
-# /* Take that. */
-
-#elif ! defined(__cplusplus)
+#if ! defined(__cplusplus)
# /* Doesn't make sense. */
# define RUBY3_ATTR_NOEXCEPT(_) /* void */
@@ -87,3 +86,5 @@
#else
# define RUBY3_ATTR_NOEXCEPT(_) /* void */
#endif
+
+#endif /* RUBY3_ATTR_NOEXCEPT_H */
diff --git a/include/ruby/3/attr/noinline.h b/include/ruby/3/attr/noinline.h
index 4483c4c8d6..e5eca8eaef 100644
--- a/include/ruby/3/attr/noinline.h
+++ b/include/ruby/3/attr/noinline.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_NOINLINE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_NOINLINE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,15 +23,12 @@
#include "ruby/3/has/declspec_attribute.h"
/** Wraps (or simulates) `__declspec(noinline)` */
-#if defined(RUBY3_ATTR_NOINLINE)
-# /* Take that. */
-
-#elif RUBY3_HAS_DECLSPEC_ATTRIBUTE(noinline)
+#if RUBY3_HAS_DECLSPEC_ATTRIBUTE(noinline)
# define RUBY3_ATTR_NOINLINE() __declspec(noinline)
-
#elif RUBY3_HAS_ATTRIBUTE(noinline)
# define RUBY3_ATTR_NOINLINE() __attribute__((__noinline__))
-
#else
# define RUBY3_ATTR_NOINLINE() /* void */
#endif
+
+#endif /* RUBY3_ATTR_NOINLINE_H */
diff --git a/include/ruby/3/attr/nonnull.h b/include/ruby/3/attr/nonnull.h
index 0431c5a363..4c2f3f1ca0 100644
--- a/include/ruby/3/attr/nonnull.h
+++ b/include/ruby/3/attr/nonnull.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_NONNULL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_NONNULL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__attribute__((nonnull))` */
-#if defined(RUBY3_ATTR_NONNULL)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(nonnull)
+#if RUBY3_HAS_ATTRIBUTE(nonnull)
# define RUBY3_ATTR_NONNULL(list) __attribute__((__nonnull__ list))
-
#else
# define RUBY3_ATTR_NONNULL(list) /* void */
#endif
+
+#endif /* RUBY3_ATTR_NONNULL_H */
diff --git a/include/ruby/3/attr/noreturn.h b/include/ruby/3/attr/noreturn.h
index 2dc940116a..2b7051428d 100644
--- a/include/ruby/3/attr/noreturn.h
+++ b/include/ruby/3/attr/noreturn.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_NORETURN_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_NORETURN_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,10 +24,7 @@
#include "ruby/3/has/declspec_attribute.h"
/** Wraps (or simulates) `[[noreturn]]` */
-#if defined(RUBY3_ATTR_NORETURN)
-# /* Take that. */
-
-#elif RUBY3_COMPILER_SINCE(SunPro, 5, 10, 0)
+#if RUBY3_COMPILER_SINCE(SunPro, 5, 10, 0)
# define RUBY3_ATTR_NORETURN() _Pragma("does_not_return")
#elif RUBY3_HAS_DECLSPEC_ATTRIBUTE(noreturn)
@@ -47,3 +46,5 @@
#else
# define RUBY3_ATTR_NORETURN() /* void */
#endif
+
+#endif /* RUBY3_ATTR_NORETURN_H */
diff --git a/include/ruby/3/attr/pure.h b/include/ruby/3/attr/pure.h
index 530b0cf3b4..038fd2abdb 100644
--- a/include/ruby/3/attr/pure.h
+++ b/include/ruby/3/attr/pure.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_PURE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_PURE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,26 +23,19 @@
#include "ruby/assert.h"
/** Wraps (or simulates) `__attribute__((pure))` */
-#if defined(RUBY3_ATTR_PURE)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(pure)
+#if RUBY3_HAS_ATTRIBUTE(pure)
# define RUBY3_ATTR_PURE() __attribute__((__pure__))
-
#elif RUBY3_COMPILER_SINCE(SunPro, 5, 10, 0)
# define RUBY3_ATTR_PURE() _Pragma("does_not_write_global_data")
-
#else
# define RUBY3_ATTR_PURE() /* void */
#endif
/** Enables #RUBY3_ATTR_PURE iff. #RUBY_NDEBUG. */
-#if defined(RUBY3_ATTR_PURE_ON_NDEBUG)
-# /* Take that. */
-
-#elif RUBY_NDEBUG
+#if RUBY_NDEBUG
# define RUBY3_ATTR_PURE_ON_NDEBUG() RUBY3_ATTR_PURE()
-
#else
# define RUBY3_ATTR_PURE_ON_NDEBUG() /* void */
#endif
+
+#endif /* RUBY3_ATTR_PURE_H */
diff --git a/include/ruby/3/attr/restrict.h b/include/ruby/3/attr/restrict.h
index c42ad99a01..f6d7936b3a 100644
--- a/include/ruby/3/attr/restrict.h
+++ b/include/ruby/3/attr/restrict.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_RESTRICT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_RESTRICT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -24,10 +26,7 @@
* `__has_declspec_attribute()` which involves macro substitution. */
/** Wraps (or simulates) `__declspec(restrict)` */
-#if defined(RUBY3_ATTR_RESTRICT)
-# /* Take that. */
-
-#elif RUBY3_COMPILER_SINCE(MSVC, 14, 0, 0)
+#if RUBY3_COMPILER_SINCE(MSVC, 14, 0, 0)
# define RUBY3_ATTR_RESTRICT() __declspec(RUBY3_TOKEN_PASTE(re, strict))
#elif RUBY3_HAS_ATTRIBUTE(malloc)
@@ -39,3 +38,5 @@
#else
# define RUBY3_ATTR_RESTRICT() /* void */
#endif
+
+#endif /* RUBY3_ATTR_RESTRICT_H */
diff --git a/include/ruby/3/attr/returns_nonnull.h b/include/ruby/3/attr/returns_nonnull.h
index aefee7ef30..eb8db1d045 100644
--- a/include/ruby/3/attr/returns_nonnull.h
+++ b/include/ruby/3/attr/returns_nonnull.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_RETURNS_NONNULL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_RETURNS_NONNULL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,10 +22,7 @@
*/
/** Wraps (or simulates) `__attribute__((returns_nonnull))` */
-#if defined(RUBY3_ATTR_RETURNS_NONNULL)
-# /* Take that. */
-
-#elif defined(_Ret_nonnull_)
+#if defined(_Ret_nonnull_)
# /* Take SAL definition. */
# define RUBY3_ATTR_RETURNS_NONNULL() _Ret_nonnull_
@@ -33,3 +32,5 @@
#else
# define RUBY3_ATTR_RETURNS_NONNULL() /* void */
#endif
+
+#endif /* RUBY3_ATTR_RETURNS_NONNULL_H */
diff --git a/include/ruby/3/attr/warning.h b/include/ruby/3/attr/warning.h
index 6323b6e2fe..0c64e6a834 100644
--- a/include/ruby/3/attr/warning.h
+++ b/include/ruby/3/attr/warning.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_WARNING_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_WARNING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__attribute__((warning))` */
-#if defined(RUBY3_ATTR_WARNING)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(warning)
+#if RUBY3_HAS_ATTRIBUTE(warning)
# define RUBY3_ATTR_WARNING(msg) __attribute__((__warning__ msg))
-
#else
# define RUBY3_ATTR_WARNING(msg) /* void */
#endif
+
+#endif /* RUBY3_ATTR_WARNING_H */
diff --git a/include/ruby/3/attr/weakref.h b/include/ruby/3/attr/weakref.h
index 28b901d44f..a540266219 100644
--- a/include/ruby/3/attr/weakref.h
+++ b/include/ruby/3/attr/weakref.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ATTR_WEAKREF_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ATTR_WEAKREF_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__attribute__((weakref))` */
-#if defined(RUBY3_ATTR_WEAKREF)
-# /* Take that. */
-
-#elif RUBY3_HAS_ATTRIBUTE(weakref)
+#if RUBY3_HAS_ATTRIBUTE(weakref)
# define RUBY3_ATTR_WEAKREF(sym) __attribute__((__weakref__(# sym)))
-
#else
# define RUBY3_ATTR_WEAKREF(sym) /* void */
#endif
+
+#endif /* RUBY3_ATTR_WEAKREF_H */
diff --git a/include/ruby/3/cast.h b/include/ruby/3/cast.h
index 10caa809e5..7f0dce9010 100644
--- a/include/ruby/3/cast.h
+++ b/include/ruby/3/cast.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_CAST_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_CAST_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -24,10 +26,7 @@
* warnings. Ruby internals are pure C so they should not bother.
*/
-#if defined(RUBY3_CAST)
-# /* Take that. */
-
-#elif ! defined(__cplusplus)
+#if ! defined(__cplusplus)
# define RUBY3_CAST(expr) (expr)
#elif RUBY3_COMPILER_SINCE(GCC, 4, 6, 0)
@@ -47,3 +46,5 @@
# define RUBY3_CAST(expr) (expr)
#endif
/** @endcond */
+
+#endif /* RUBY3_CAST_H */
diff --git a/include/ruby/3/compiler_is.h b/include/ruby/3/compiler_is.h
index 9f8b81315d..3da099a9c1 100644
--- a/include/ruby/3/compiler_is.h
+++ b/include/ruby/3/compiler_is.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -25,12 +27,7 @@
* @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
+#define RUBY3_COMPILER_IS(cc) RUBY3_COMPILER_IS_ ## cc
#include "ruby/3/compiler_is/apple.h"
#include "ruby/3/compiler_is/clang.h"
@@ -45,4 +42,4 @@
*
* - ARM's armclang: ditto, it can be clang-backended. */
-#endif // RUBY3_COMPILER_IS_INCLUDED
+#endif /* RUBY3_COMPILER_IS_H */
diff --git a/include/ruby/3/compiler_is/apple.h b/include/ruby/3/compiler_is/apple.h
index bd08b7dd63..b4ff8fd211 100644
--- a/include/ruby/3/compiler_is/apple.h
+++ b/include/ruby/3/compiler_is/apple.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_APPLE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_APPLE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -23,10 +25,7 @@
* from LLVM's, when it comes to compiler detection business in this header
* file.
*/
-#if defined(RUBY3_COMPILER_IS_Apple)
-# /* Take that. */
-
-#elif ! defined(__clang__)
+#if ! defined(__clang__)
# define RUBY3_COMPILER_IS_Apple 0
#elif ! defined(__apple_build_version__)
@@ -38,3 +37,5 @@
# define RUBY3_COMPILER_VERSION_MINOR __clang_minor__
# define RUBY3_COMPILER_VERSION_PATCH __clang_patchlevel__
#endif
+
+#endif /* RUBY3_COMPILER_IS_APPLE_H */
diff --git a/include/ruby/3/compiler_is/clang.h b/include/ruby/3/compiler_is/clang.h
index a5be006022..5f07b3b5ed 100644
--- a/include/ruby/3/compiler_is/clang.h
+++ b/include/ruby/3/compiler_is/clang.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_CLANG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_CLANG_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,10 +22,7 @@
*/
#include "ruby/3/compiler_is/apple.h"
-#if defined(RUBY3_COMPILER_IS_Clang)
-# /* Take that. */
-
-#elif ! defined(__clang__)
+#if ! defined(__clang__)
# define RUBY3_COMPILER_IS_Clang 0
#elif RUBY3_COMPILER_IS(Apple)
@@ -35,3 +34,5 @@
# define RUBY3_COMPILER_VERSION_MINOR __clang_minor__
# define RUBY3_COMPILER_VERSION_PATCH __clang_patchlevel__
#endif
+
+#endif /* RUBY3_COMPILER_IS_CLANG_H */
diff --git a/include/ruby/3/compiler_is/gcc.h b/include/ruby/3/compiler_is/gcc.h
index 6b0a5f62cf..2fc030c010 100644
--- a/include/ruby/3/compiler_is/gcc.h
+++ b/include/ruby/3/compiler_is/gcc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_GCC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_GCC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,10 +24,7 @@
#include "ruby/3/compiler_is/clang.h"
#include "ruby/3/compiler_is/intel.h"
-#if defined(RUBY3_COMPILER_IS_GCC)
-# /* Take that. */
-
-#elif ! defined(__GNUC__)
+#if ! defined(__GNUC__)
# define RUBY3_COMPILER_IS_GCC 0
#elif RUBY3_COMPILER_IS(Apple)
@@ -43,3 +42,5 @@
# define RUBY3_COMPILER_VERSION_MINOR __GNUC_MINOR__
# define RUBY3_COMPILER_VERSION_PATCH __GNUC_PATCHLEVEL__
#endif
+
+#endif /* RUBY3_COMPILER_IS_GCC_H */
diff --git a/include/ruby/3/compiler_is/intel.h b/include/ruby/3/compiler_is/intel.h
index 7a1fa0fc9a..605d2d3bdb 100644
--- a/include/ruby/3/compiler_is/intel.h
+++ b/include/ruby/3/compiler_is/intel.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_INTEL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_INTEL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,10 +20,7 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_COMPILER_IS_Intel.
*/
-#if defined(RUBY3_COMPILER_IS_Intel)
-# /* Take that. */
-
-#elif ! defined(__INTEL_COMPILER)
+#if ! defined(__INTEL_COMPILER)
# define RUBY3_COMPILER_IS_Intel 0
#elif ! defined(__INTEL_COMPILER_UPDATE)
@@ -38,3 +37,5 @@
# define RUBY3_COMPILER_VERSION_MINOR (__INTEL_COMPILER % 100 / 10)
# define RUBY3_COMPILER_VERSION_PATCH __INTEL_COMPILER_UPDATE
#endif
+
+#endif /* RUBY3_COMPILER_IS_INTEL_H */
diff --git a/include/ruby/3/compiler_is/msvc.h b/include/ruby/3/compiler_is/msvc.h
index beb8076046..e2c72a1175 100644
--- a/include/ruby/3/compiler_is/msvc.h
+++ b/include/ruby/3/compiler_is/msvc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_MSVC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_MSVC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,10 +23,7 @@
#include "ruby/3/compiler_is/clang.h"
#include "ruby/3/compiler_is/intel.h"
-#if defined(RUBY3_COMPILER_IS_MSVC)
-# /* Take that. */
-
-#elif ! defined(_MSC_VER)
+#if ! defined(_MSC_VER)
# define RUBY3_COMPILER_IS_MSVC 0
#elif RUBY3_COMPILER_IS(Clang)
@@ -54,3 +53,5 @@
# define RUBY3_COMPILER_VERSION_MINOR (_MSC_VER % 100)
# define RUBY3_COMPILER_VERSION_PATCH 0
#endif
+
+#endif /* RUBY3_COMPILER_IS_MSVC_H */
diff --git a/include/ruby/3/compiler_is/sunpro.h b/include/ruby/3/compiler_is/sunpro.h
index b71997658b..4c90e09dff 100644
--- a/include/ruby/3/compiler_is/sunpro.h
+++ b/include/ruby/3/compiler_is/sunpro.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_IS_SUNPRO_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_IS_SUNPRO_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,10 +20,7 @@
* extension libraries. They could be written in C++98.
* @brief Defines #RUBY3_COMPILER_IS_SunPro.
*/
-#if defined(RUBY3_COMPILER_IS_SunPro)
-# /* Take that. */
-
-#elif ! (defined(__SUNPRO_C) || defined(__SUNPRO_CC))
+#if ! (defined(__SUNPRO_C) || defined(__SUNPRO_CC))
# define RUBY3_COMPILER_IS_SunPro 0
#elif defined(__SUNPRO_C) && __SUNPRO_C >= 0x5100
@@ -52,3 +51,5 @@
# define TERSE_COMPILER_VERSION_MINOR (__SUNPRO_CC >> 4 & 0xF)
# define TERSE_COMPILER_VERSION_PATCH (__SUNPRO_CC & 0xF)
#endif
+
+#endif /* RUBY3_COMPILER_IS_SUNPRO_H */
diff --git a/include/ruby/3/compiler_since.h b/include/ruby/3/compiler_since.h
index f5d8bdd2f8..365f39ffb0 100644
--- a/include/ruby/3/compiler_since.h
+++ b/include/ruby/3/compiler_since.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_COMPILER_SINCE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_COMPILER_SINCE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -19,7 +21,6 @@
* @brief Defines #RUBY3_COMPILER_SINCE.
*/
#include "ruby/3/compiler_is.h"
-#ifndef RUBY3_COMPILER_SINCE
/**
* @brief Checks if the compiler is of given brand and is newer than or equal
@@ -57,4 +58,4 @@
((RUBY3_COMPILER_VERSION_MINOR == (y)) && \
(RUBY3_COMPILER_VERSION_PATCH < (z)))))))
-#endif /* RUBY3_COMPILER_SINCE */
+#endif /* RUBY3_COMPILER_SINCE_H */
diff --git a/include/ruby/3/config.h b/include/ruby/3/config.h
index 12489c7c16..158e8635cb 100644
--- a/include/ruby/3/config.h
+++ b/include/ruby/3/config.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_CONFIG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_CONFIG_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Thin wrapper to ruby/config.h
*/
-#ifndef RUBY3_CONFIG_H
-#define RUBY3_CONFIG_H
#include "ruby/config.h"
#ifdef RUBY_EXTCONF_H
diff --git a/include/ruby/3/constant_p.h b/include/ruby/3/constant_p.h
index e1b45c08b5..13781f8019 100644
--- a/include/ruby/3/constant_p.h
+++ b/include/ruby/3/constant_p.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_CONSTANT_P_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_CONSTANT_P_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -26,12 +28,10 @@
*/
#include "ruby/3/has/builtin.h"
-#if defined(RUBY3_CONSTANT_P)
-# /* Take that. */
-
-#elif RUBY3_HAS_BUILTIN(__builtin_constant_p)
+#if RUBY3_HAS_BUILTIN(__builtin_constant_p)
# define RUBY3_CONSTANT_P(expr) __builtin_constant_p(expr)
-
#else
# define RUBY3_CONSTANT_P(expr) 0
#endif
+
+#endif /* RUBY3_CONSTANT_P_H */
diff --git a/include/ruby/3/core.h b/include/ruby/3/core.h
index be8a50a5fb..00b3a6104f 100644
--- a/include/ruby/3/core.h
+++ b/include/ruby/3/core.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_CORE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_CORE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -30,3 +32,4 @@
#include "ruby/3/core/rstring.h"
#include "ruby/3/core/rstruct.h"
#include "ruby/3/core/rtypeddata.h"
+#endif /* RUBY3_CORE_H */
diff --git a/include/ruby/3/core/rarray.h b/include/ruby/3/core/rarray.h
index cd8767a8a8..3234daae90 100644
--- a/include/ruby/3/core/rarray.h
+++ b/include/ruby/3/core/rarray.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RARRAY_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RARRAY_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RArray.
*/
-#ifndef RUBY3_RARRAY_H
-#define RUBY3_RARRAY_H
#include "ruby/3/arithmetic/long.h"
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/constexpr.h"
diff --git a/include/ruby/3/core/rbasic.h b/include/ruby/3/core/rbasic.h
index 510dd38da6..4f6fa576aa 100644
--- a/include/ruby/3/core/rbasic.h
+++ b/include/ruby/3/core/rbasic.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RBASIC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RBASIC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RBasic.
*/
-#ifndef RUBY3_RBASIC_H
-#define RUBY3_RBASIC_H
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/constexpr.h"
#include "ruby/3/attr/forceinline.h"
diff --git a/include/ruby/3/core/rbignum.h b/include/ruby/3/core/rbignum.h
index c1183e3ea6..09a478c2f8 100644
--- a/include/ruby/3/core/rbignum.h
+++ b/include/ruby/3/core/rbignum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RBIGNUM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RBIGNUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Routines to manipulate struct ::RBignum.
*/
-#ifndef RUBY3_RBIGNUM_H
-#define RUBY3_RBIGNUM_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/value_type.h"
diff --git a/include/ruby/3/core/rclass.h b/include/ruby/3/core/rclass.h
index a54b34f5ba..e492da5ae5 100644
--- a/include/ruby/3/core/rclass.h
+++ b/include/ruby/3/core/rclass.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RCLASS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RCLASS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Routines to manipulate struct ::RClass.
*/
-#ifndef RUBY3_RCLASS_H
-#define RUBY3_RCLASS_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/cast.h"
diff --git a/include/ruby/3/core/rdata.h b/include/ruby/3/core/rdata.h
index 651ceed0d7..6df6ea9e6d 100644
--- a/include/ruby/3/core/rdata.h
+++ b/include/ruby/3/core/rdata.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RDATA_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RDATA_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RData.
*/
-#ifndef RUBY3_RDATA_H
-#define RUBY3_RDATA_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/core/rfile.h b/include/ruby/3/core/rfile.h
index 2b80a96e40..0b12d7bba4 100644
--- a/include/ruby/3/core/rfile.h
+++ b/include/ruby/3/core/rfile.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RFILE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RFILE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RFile.
*/
-#ifndef RUBY3_RFILE_H
-#define RUBY3_RFILE_H
#include "ruby/3/core/rbasic.h"
#include "ruby/3/cast.h"
diff --git a/include/ruby/3/core/rhash.h b/include/ruby/3/core/rhash.h
index 3778130141..e8f9901aa5 100644
--- a/include/ruby/3/core/rhash.h
+++ b/include/ruby/3/core/rhash.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RHASH_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RHASH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -30,8 +32,6 @@
*
* Shyouhei stopped thinking. Let them be as is.
*/
-#ifndef RUBY3_RHASH_H
-#define RUBY3_RHASH_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/core/rmatch.h b/include/ruby/3/core/rmatch.h
index fff62f1473..f89cea849c 100644
--- a/include/ruby/3/core/rmatch.h
+++ b/include/ruby/3/core/rmatch.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RMATCH_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RMATCH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RMatch.
*/
-#ifndef RUBY3_RMATCH_H
-#define RUBY3_RMATCH_H
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/pure.h"
#include "ruby/3/attr/returns_nonnull.h"
diff --git a/include/ruby/3/core/robject.h b/include/ruby/3/core/robject.h
index 82887a8c51..3f298214a9 100644
--- a/include/ruby/3/core/robject.h
+++ b/include/ruby/3/core/robject.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ROBJECT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ROBJECT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RObject.
*/
-#ifndef RUBY3_ROBJECT_H
-#define RUBY3_ROBJECT_H
#include "ruby/3/config.h"
#ifdef HAVE_STDINT_H
diff --git a/include/ruby/3/core/rregexp.h b/include/ruby/3/core/rregexp.h
index 1f30808e8a..0978c00c74 100644
--- a/include/ruby/3/core/rregexp.h
+++ b/include/ruby/3/core/rregexp.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RREGEXP_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RREGEXP_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RRegexp.
*/
-#ifndef RUBY3_RREGEXP_H
-#define RUBY3_RREGEXP_H
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/pure.h"
#include "ruby/3/cast.h"
diff --git a/include/ruby/3/core/rstring.h b/include/ruby/3/core/rstring.h
index 244b90e96c..8951dd0d30 100644
--- a/include/ruby/3/core/rstring.h
+++ b/include/ruby/3/core/rstring.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RSTRING_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RSTRING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RString.
*/
-#ifndef RUBY3_RSTRING_H
-#define RUBY3_RSTRING_H
#include "ruby/3/config.h"
#include "ruby/3/arithmetic/long.h"
#include "ruby/3/attr/artificial.h"
diff --git a/include/ruby/3/core/rstruct.h b/include/ruby/3/core/rstruct.h
index 55db1b3fc0..d474697e4e 100644
--- a/include/ruby/3/core/rstruct.h
+++ b/include/ruby/3/core/rstruct.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RSTRUCT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RSTRUCT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Routines to manipulate struct ::RStruct.
*/
-#ifndef RUBY3_RSTRUCT_H
-#define RUBY3_RSTRUCT_H
#include "ruby/3/attr/artificial.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/core/rtypeddata.h b/include/ruby/3/core/rtypeddata.h
index cc00fa2500..d46fd5c519 100644
--- a/include/ruby/3/core/rtypeddata.h
+++ b/include/ruby/3/core/rtypeddata.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RTYPEDDATA_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RTYPEDDATA_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines struct ::RTypedData.
*/
-#ifndef RUBY3_RTYPEDDATA_H
-#define RUBY3_RTYPEDDATA_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/ctype.h b/include/ruby/3/ctype.h
index 41fb6733df..76927bf9a1 100644
--- a/include/ruby/3/ctype.h
+++ b/include/ruby/3/ctype.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_CTYPE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_CTYPE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Our own, locale independent, character handling routines.
*/
-#ifndef RUBY3_CTYPE_H
-#define RUBY3_CTYPE_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/dllexport.h b/include/ruby/3/dllexport.h
index 20b3d2eb59..5d6ae28d41 100644
--- a/include/ruby/3/dllexport.h
+++ b/include/ruby/3/dllexport.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_DLLEXPORT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_DLLEXPORT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Tewaking visibility of C variables/functions.
*/
-#ifndef RUBY3_DLLEXPORT_H
-#define RUBY3_DLLEXPORT_H
#include "ruby/3/config.h"
#include "ruby/3/compiler_is.h"
diff --git a/include/ruby/3/dosish.h b/include/ruby/3/dosish.h
index 8e17fade6f..06a84b0168 100644
--- a/include/ruby/3/dosish.h
+++ b/include/ruby/3/dosish.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_DOSISH_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_DOSISH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Support for so-called dosish systems.
*/
-#ifndef RUBY3_DOSISH_H
-#define RUBY3_DOSISH_H
#ifdef __CYGWIN__
#undef _WIN32
#endif
diff --git a/include/ruby/3/error.h b/include/ruby/3/error.h
index e45b03d90a..49892199d4 100644
--- a/include/ruby/3/error.h
+++ b/include/ruby/3/error.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ERROR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ERROR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Declares ::rb_raise().
*/
-#ifndef RUBY3_ERROR_H
-#define RUBY3_ERROR_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/backward/2/attributes.h"
diff --git a/include/ruby/3/eval.h b/include/ruby/3/eval.h
index 01fd80dc75..d438581bd6 100644
--- a/include/ruby/3/eval.h
+++ b/include/ruby/3/eval.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_EVAL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_EVAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Declares ::rb_eval_string().
*/
-#ifndef RUBY3_EVAL_H
-#define RUBY3_EVAL_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/event.h b/include/ruby/3/event.h
index 30eb1d815b..83f6709031 100644
--- a/include/ruby/3/event.h
+++ b/include/ruby/3/event.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_EVENT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_EVENT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Debugging and tracing APIs.
*/
-#ifndef RUBY3_EVENT_H
-#define RUBY3_EVENT_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/fl_type.h b/include/ruby/3/fl_type.h
index 62b6f1b9c6..2adb6006c7 100644
--- a/include/ruby/3/fl_type.h
+++ b/include/ruby/3/fl_type.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_FL_TYPE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_FL_TYPE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines enum ::ruby_fl_type.
*/
-#ifndef RUBY3_FL_TYPE_H
-#define RUBY3_FL_TYPE_H
#include "ruby/3/config.h" /* for ENUM_OVER_INT */
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/flag_enum.h"
diff --git a/include/ruby/3/gc.h b/include/ruby/3/gc.h
index e6c66e73ea..c4ce87b319 100644
--- a/include/ruby/3/gc.h
+++ b/include/ruby/3/gc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_GC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_GC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Registering values to the GC.
*/
-#ifndef RUBY3_GC_H
-#define RUBY3_GC_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/glob.h b/include/ruby/3/glob.h
index 96d01a1dd6..e09db760f8 100644
--- a/include/ruby/3/glob.h
+++ b/include/ruby/3/glob.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_GLOB_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_GLOB_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Declares ::rb_glob().
*/
-#ifndef RUBY3_GLOB_H
-#define RUBY3_GLOB_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/globals.h b/include/ruby/3/globals.h
index d72e62d905..504058f1bc 100644
--- a/include/ruby/3/globals.h
+++ b/include/ruby/3/globals.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_GLOBALS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_GLOBALS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Ruby-level global variables / constants, visible from C.
*/
-#ifndef RUBY3_GLOBALS_H
-#define RUBY3_GLOBALS_H
#include "ruby/3/attr/pure.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/fl_type.h"
diff --git a/include/ruby/3/has/attribute.h b/include/ruby/3/has/attribute.h
index 36a1a1229c..c8ad7da9cf 100644
--- a/include/ruby/3/has/attribute.h
+++ b/include/ruby/3/has/attribute.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_ATTRIBUTE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_ATTRIBUTE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,10 +23,7 @@
#include "ruby/3/config.h"
/** Wraps (or simulates) `__has_attribute`. */
-#if defined(RUBY3_HAS_ATTRIBUTE)
-# /* Take that. */
-
-#elif defined(__has_attribute)
+#if defined(__has_attribute)
# define RUBY3_HAS_ATTRIBUTE(_) __has_attribute(_)
#elif RUBY3_COMPILER_IS(GCC)
@@ -150,3 +149,5 @@
# define RUBY3_HAS_ATTRIBUTE_weak 1
# endif
#endif
+
+#endif /* RUBY3_HAS_ATTRIBUTE_H */
diff --git a/include/ruby/3/has/builtin.h b/include/ruby/3/has/builtin.h
index 54dc2a5672..f1524061ae 100644
--- a/include/ruby/3/has/builtin.h
+++ b/include/ruby/3/has/builtin.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_BUILTIN_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_BUILTIN_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,10 +23,7 @@
#include "ruby/3/config.h"
/** Wraps (or simulates) `__has_builtin`. */
-#if defined(RUBY3_HAS_BUILTIN)
-# /* Take that. */
-
-#elif defined(__has_builtin) && ! RUBY3_COMPILER_IS(Intel)
+#if defined(__has_builtin) && ! RUBY3_COMPILER_IS(Intel)
# /* :TODO: Intel C Compiler has __has_builtin (since 19.1 maybe?), and is
# * reportedly broken. We have to skip them. However the situation can
# * change. They might improve someday. We need to revisit here later. */
@@ -89,3 +88,5 @@
# define RUBY3_HAS_BUILTIN___builtin_unreachable 1
# endif
#endif
+
+#endif /* RUBY3_HAS_BUILTIN_H */
diff --git a/include/ruby/3/has/c_attribute.h b/include/ruby/3/has/c_attribute.h
index 89186217d3..e883eb71e6 100644
--- a/include/ruby/3/has/c_attribute.h
+++ b/include/ruby/3/has/c_attribute.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_C_ATTRIBUTE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_C_ATTRIBUTE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,10 +22,7 @@
*/
/** Wraps (or simulates) `__has_c_attribute`. */
-#if defined(RUBY3_HAS_C_ATTRIBUTE)
-# /* Take that. */
-
-#elif defined(__cplusplus)
+#if defined(__cplusplus)
# /* Makes no sense. */
# define RUBY3_HAS_C_ATTRIBUTE(_) 0
@@ -35,3 +34,5 @@
# * lacks C2x attributes as well. Might change in future? */
# define RUBY3_HAS_C_ATTRIBUTE(_) 0
#endif
+
+#endif /* RUBY3_HAS_C_ATTRIBUTE_H */
diff --git a/include/ruby/3/has/cpp_attribute.h b/include/ruby/3/has/cpp_attribute.h
index 70bec4a267..42209c0955 100644
--- a/include/ruby/3/has/cpp_attribute.h
+++ b/include/ruby/3/has/cpp_attribute.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_CPP_ATTRIBUTE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_CPP_ATTRIBUTE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,10 +23,7 @@
#include "ruby/3/compiler_is.h"
/** @cond INTERNAL_MACRO */
-#if defined(RUBY3_HAS_CPP_ATTRIBUTE0)
-# /* Take that. */
-
-#elif defined(__has_cpp_attribute)
+#if defined(__has_cpp_attribute)
# define RUBY3_HAS_CPP_ATTRIBUTE0(_) __has_cpp_attribute(_)
#elif RUBY3_COMPILER_IS(MSVC)
@@ -66,15 +65,13 @@
/** @endcond */
/** Wraps (or simulates) `__has_cpp_attribute`. */
-#ifdef RUBY3_HAS_CPP_ATTRIBUTE
-# /* Take that. */
-
-#elif ! defined(__cplusplus)
+#if ! defined(__cplusplus)
# /* Makes no sense. */
# define RUBY3_HAS_CPP_ATTRIBUTE(_) 0
-
#else
# /* GCC needs workarounds. See https://gcc.godbolt.org/z/jdz3pa */
# define RUBY3_HAS_CPP_ATTRIBUTE(_) \
((RUBY3_HAS_CPP_ATTRIBUTE0(_) <= __cplusplus) ? RUBY3_HAS_CPP_ATTRIBUTE0(_) : 0)
#endif
+
+#endif /* RUBY3_HAS_CPP_ATTRIBUTE_H */
diff --git a/include/ruby/3/has/declspec_attribute.h b/include/ruby/3/has/declspec_attribute.h
index a7d97b400a..4774eb88f2 100644
--- a/include/ruby/3/has/declspec_attribute.h
+++ b/include/ruby/3/has/declspec_attribute.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_DECLSPEC_ATTRIBUTE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_DECLSPEC_ATTRIBUTE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,8 @@
*/
/** Wraps (or simulates) `__has_declspec_attribute`. */
-#if defined(RUBY3_HAS_DECLSPEC_ATTRIBUTE)
-# /* Take that. */
-
-#elif defined(__has_declspec_attribute)
+#if defined(__has_declspec_attribute)
# define RUBY3_HAS_DECLSPEC_ATTRIBUTE(_) __has_declspec_attribute(_)
-
#else
# define RUBY3_HAS_DECLSPEC_ATTRIBUTE(_) RUBY3_TOKEN_PASTE(RUBY3_HAS_DECLSPEC_ATTRIBUTE_, _)
# define RUBY3_HAS_DECLSPEC_ATTRIBUTE_align RUBY3_COMPILER_SINCE(MSVC, 8, 0, 0)
@@ -44,3 +42,5 @@
# undef RUBY3_HAS_DECLSPEC_ATTRIBUTE_nothrow
# endif
#endif
+
+#endif /* RUBY3_HAS_DECLSPEC_ATTRIBUTE_H */
diff --git a/include/ruby/3/has/extension.h b/include/ruby/3/has/extension.h
index ca3392a090..ed6f6d4d52 100644
--- a/include/ruby/3/has/extension.h
+++ b/include/ruby/3/has/extension.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_EXTENSION_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_EXTENSION_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,13 +23,11 @@
#include "ruby/3/has/feature.h"
/** Wraps (or simulates) `__has_extension`. */
-#if defined(RUBY3_HAS_EXTENSION)
-# /* Take that. */
-
-#elif defined(__has_extension)
+#if defined(__has_extension)
# define RUBY3_HAS_EXTENSION(_) __has_extension(_)
-
#else
# /* Pre-3.0 clang had __has_feature but not __has_extension. */
# define RUBY3_HAS_EXTENSION(_) RUBY3_HAS_FEATURE(_)
#endif
+
+#endif /* RUBY3_HAS_EXTENSION_H */
diff --git a/include/ruby/3/has/feature.h b/include/ruby/3/has/feature.h
index 977b8150bb..f64c756817 100644
--- a/include/ruby/3/has/feature.h
+++ b/include/ruby/3/has/feature.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_FEATURE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_FEATURE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__has_feature`. */
-#if defined(RUBY3_HAS_FEATURE)
-# /* Take that. */
-
-#elif defined(__has_feature)
+#if defined(__has_feature)
# define RUBY3_HAS_FEATURE(_) __has_feature(_)
-
#else
# define RUBY3_HAS_FEATURE(_) 0
#endif
+
+#endif /* RUBY3_HAS_FEATURE_H */
diff --git a/include/ruby/3/has/warning.h b/include/ruby/3/has/warning.h
index a66d76dfa7..3ec8e8f79e 100644
--- a/include/ruby/3/has/warning.h
+++ b/include/ruby/3/has/warning.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_HAS_WARNING_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_HAS_WARNING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,12 +22,10 @@
*/
/** Wraps (or simulates) `__has_warning`. */
-#if defined(RUBY3_HAS_WARNING)
-# /* Take that. */
-
-#elif defined(__has_warning)
+#if defined(__has_warning)
# define RUBY3_HAS_WARNING(_) __has_warning(_)
-
#else
# define RUBY3_HAS_WARNING(_) 0
#endif
+
+#endif /* RUBY3_HAS_WARNING_H */
diff --git a/include/ruby/3/intern/array.h b/include/ruby/3/intern/array.h
index 02e44c99ad..bf7e1d9fab 100644
--- a/include/ruby/3/intern/array.h
+++ b/include/ruby/3/intern/array.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_ARRAY_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_ARRAY_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cArray.
*/
-#ifndef RUBY3_INTERN_ARRAY_H
-#define RUBY3_INTERN_ARRAY_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/bignum.h b/include/ruby/3/intern/bignum.h
index 398d09f625..f4707f5b6d 100644
--- a/include/ruby/3/intern/bignum.h
+++ b/include/ruby/3/intern/bignum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_BIGNUM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_BIGNUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to so-called rb_cBignum.
*/
-#ifndef RUBY3_INTERN_BIGNUM_H
-#define RUBY3_INTERN_BIGNUM_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/intern/class.h b/include/ruby/3/intern/class.h
index a4778bdf27..36b873f4df 100644
--- a/include/ruby/3/intern/class.h
+++ b/include/ruby/3/intern/class.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_CLASS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_CLASS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cClass/::rb_cModule.
*/
-#ifndef RUBY3_INTERN_CLASS_H
-#define RUBY3_INTERN_CLASS_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/backward/2/stdarg.h"
diff --git a/include/ruby/3/intern/compar.h b/include/ruby/3/intern/compar.h
index 68e8661b56..22240680c5 100644
--- a/include/ruby/3/intern/compar.h
+++ b/include/ruby/3/intern/compar.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_COMPAR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_COMPAR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_mComparable.
*/
-#ifndef RUBY3_INTERN_COMPAR_H
-#define RUBY3_INTERN_COMPAR_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/complex.h b/include/ruby/3/intern/complex.h
index d9a0f15631..ba9fe6c288 100644
--- a/include/ruby/3/intern/complex.h
+++ b/include/ruby/3/intern/complex.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_COMPLEX_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_COMPLEX_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cComplex.
*/
-#ifndef RUBY3_INTERN_COMPLEX_H
-#define RUBY3_INTERN_COMPLEX_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/arithmetic/long.h" /* INT2FIX is here. */
diff --git a/include/ruby/3/intern/cont.h b/include/ruby/3/intern/cont.h
index 95374f909c..a3c340bb0a 100644
--- a/include/ruby/3/intern/cont.h
+++ b/include/ruby/3/intern/cont.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_CONT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_CONT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to rb_cFiber.
*/
-#ifndef RUBY3_INTERN_CONT_H
-#define RUBY3_INTERN_CONT_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/iterator.h"
diff --git a/include/ruby/3/intern/dir.h b/include/ruby/3/intern/dir.h
index 1a7bfbe7de..09bef100ac 100644
--- a/include/ruby/3/intern/dir.h
+++ b/include/ruby/3/intern/dir.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_DIR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_DIR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cDir.
*/
-#ifndef RUBY3_INTERN_DIR_H
-#define RUBY3_INTERN_DIR_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/enum.h b/include/ruby/3/intern/enum.h
index 075cd2066a..9dafad694a 100644
--- a/include/ruby/3/intern/enum.h
+++ b/include/ruby/3/intern/enum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_ENUM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_ENUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_mEnumerable.
*/
-#ifndef RUBY3_INTERN_ENUM_H
-#define RUBY3_INTERN_ENUM_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/enumerator.h b/include/ruby/3/intern/enumerator.h
index 31efa07bd1..acd01fca18 100644
--- a/include/ruby/3/intern/enumerator.h
+++ b/include/ruby/3/intern/enumerator.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_ENUMERATOR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_ENUMERATOR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cEnumerator.
*/
-#ifndef RUBY3_INTERN_ENUMERATOR_H
-#define RUBY3_INTERN_ENUMERATOR_H
#include "ruby/3/dllexport.h"
#include "ruby/3/intern/eval.h" /* rb_frame_this_func */
#include "ruby/3/iterator.h" /* rb_block_given_p */
diff --git a/include/ruby/3/intern/error.h b/include/ruby/3/intern/error.h
index a5b56db760..a8b854c36b 100644
--- a/include/ruby/3/intern/error.h
+++ b/include/ruby/3/intern/error.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_ERROR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_ERROR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_eException.
*/
-#ifndef RUBY3_INTERN_ERROR_H
-#define RUBY3_INTERN_ERROR_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/fl_type.h"
diff --git a/include/ruby/3/intern/eval.h b/include/ruby/3/intern/eval.h
index 158820d96a..3114d00bc0 100644
--- a/include/ruby/3/intern/eval.h
+++ b/include/ruby/3/intern/eval.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_EVAL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_EVAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Pre-1.9 era evaluator APIs (now considered miscellaneous).
*/
-#ifndef RUBY3_INTERN_EVAL_H
-#define RUBY3_INTERN_EVAL_H
#include "ruby/3/attr/noreturn.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/file.h b/include/ruby/3/intern/file.h
index a2d4a9996e..c87e59ea01 100644
--- a/include/ruby/3/intern/file.h
+++ b/include/ruby/3/intern/file.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_FILE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_FILE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cFile.
*/
-#ifndef RUBY3_INTERN_FILE_H
-#define RUBY3_INTERN_FILE_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/gc.h b/include/ruby/3/intern/gc.h
index dd96229ace..81ff74839a 100644
--- a/include/ruby/3/intern/gc.h
+++ b/include/ruby/3/intern/gc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_GC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_GC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_mGC.
*/
-#ifndef RUBY3_INTERN_GC_H
-#define RUBY3_INTERN_GC_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/backward/2/attributes.h"
diff --git a/include/ruby/3/intern/hash.h b/include/ruby/3/intern/hash.h
index d39e420a22..f8d0628b9b 100644
--- a/include/ruby/3/intern/hash.h
+++ b/include/ruby/3/intern/hash.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_HASH_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_HASH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cHash.
*/
-#ifndef RUBY3_INTERN_HASH_H
-#define RUBY3_INTERN_HASH_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/st.h"
diff --git a/include/ruby/3/intern/io.h b/include/ruby/3/intern/io.h
index 783f2515c2..f53f14c02a 100644
--- a/include/ruby/3/intern/io.h
+++ b/include/ruby/3/intern/io.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_IO_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_IO_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cIO.
*/
-#ifndef RUBY3_INTERN_IO_H
-#define RUBY3_INTERN_IO_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/load.h b/include/ruby/3/intern/load.h
index 0f26c9f136..1a1dfb001e 100644
--- a/include/ruby/3/intern/load.h
+++ b/include/ruby/3/intern/load.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_LOAD_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_LOAD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_f_require().
*/
-#ifndef RUBY3_INTERN_LOAD_H
-#define RUBY3_INTERN_LOAD_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/marshal.h b/include/ruby/3/intern/marshal.h
index 5c46d04fab..2028b4520a 100644
--- a/include/ruby/3/intern/marshal.h
+++ b/include/ruby/3/intern/marshal.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_MARSHAL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_MARSHAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to rb_mMarshal.
*/
-#ifndef RUBY3_INTERN_MARSHAL_H
-#define RUBY3_INTERN_MARSHAL_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/numeric.h b/include/ruby/3/intern/numeric.h
index 989ec7ee6a..ad8d984944 100644
--- a/include/ruby/3/intern/numeric.h
+++ b/include/ruby/3/intern/numeric.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_NUMERIC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_NUMERIC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cNumeric.
*/
-#ifndef RUBY3_INTERN_NUMERIC_H
-#define RUBY3_INTERN_NUMERIC_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/backward/2/attributes.h"
diff --git a/include/ruby/3/intern/object.h b/include/ruby/3/intern/object.h
index 543985a489..acfe63fa06 100644
--- a/include/ruby/3/intern/object.h
+++ b/include/ruby/3/intern/object.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_OBJECT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_OBJECT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cObject.
*/
-#ifndef RUBY3_INTERN_OBJECT_H
-#define RUBY3_INTERN_OBJECT_H
#include "ruby/3/attr/pure.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/parse.h b/include/ruby/3/intern/parse.h
index d89ef400c0..9831bdc511 100644
--- a/include/ruby/3/intern/parse.h
+++ b/include/ruby/3/intern/parse.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_PARSE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_PARSE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cSymbol.
*/
-#ifndef RUBY3_INTERN_PARSE_H
-#define RUBY3_INTERN_PARSE_H
#include "ruby/3/attr/const.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/proc.h b/include/ruby/3/intern/proc.h
index ce8304bb59..1b66a3b26b 100644
--- a/include/ruby/3/intern/proc.h
+++ b/include/ruby/3/intern/proc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_PROC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_PROC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cProc.
*/
-#ifndef RUBY3_INTERN_PROC_H
-#define RUBY3_INTERN_PROC_H
#include "ruby/3/dllexport.h"
#include "ruby/3/iterator.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/process.h b/include/ruby/3/intern/process.h
index efa830aa6c..1f9c6a45c9 100644
--- a/include/ruby/3/intern/process.h
+++ b/include/ruby/3/intern/process.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_PROCESS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_PROCESS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_mProcess.
*/
-#ifndef RUBY3_INTERN_PROCESS_H
-#define RUBY3_INTERN_PROCESS_H
#include "ruby/3/attr/noreturn.h"
#include "ruby/3/config.h" /* rb_pid_t is defined here. */
#include "ruby/3/dllexport.h"
diff --git a/include/ruby/3/intern/random.h b/include/ruby/3/intern/random.h
index 8493cf1d7d..52bfeb0673 100644
--- a/include/ruby/3/intern/random.h
+++ b/include/ruby/3/intern/random.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_RANDOM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_RANDOM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,8 +24,6 @@
* generator", ACM Trans. on Modeling and Computer Simulation, 8
* (1): pp 3-30, 1998. https://doi.org/10.1145/272991.272995
*/
-#ifndef RUBY3_INTERN_RANDOM_H
-#define RUBY3_INTERN_RANDOM_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/range.h b/include/ruby/3/intern/range.h
index 0fb6a20a3d..0ccb33abfb 100644
--- a/include/ruby/3/intern/range.h
+++ b/include/ruby/3/intern/range.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_RANGE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_RANGE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cRange.
*/
-#ifndef RUBY3_INTERN_RANGE_H
-#define RUBY3_INTERN_RANGE_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/rational.h b/include/ruby/3/intern/rational.h
index 3eccd7f1d5..fde0e37e19 100644
--- a/include/ruby/3/intern/rational.h
+++ b/include/ruby/3/intern/rational.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_RATIONAL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_RATIONAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cRational.
*/
-#ifndef RUBY3_INTERN_RATIONAL_H
-#define RUBY3_INTERN_RATIONAL_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/arithmetic/long.h" /* INT2FIX is here. */
diff --git a/include/ruby/3/intern/re.h b/include/ruby/3/intern/re.h
index 090fbe4511..cc1e2539ea 100644
--- a/include/ruby/3/intern/re.h
+++ b/include/ruby/3/intern/re.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_RE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_RE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cRegexp.
*/
-#ifndef RUBY3_INTERN_RE_H
-#define RUBY3_INTERN_RE_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/ruby.h b/include/ruby/3/intern/ruby.h
index f41a4d2ee7..730a032975 100644
--- a/include/ruby/3/intern/ruby.h
+++ b/include/ruby/3/intern/ruby.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_RUBY_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_RUBY_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Process-global APIs.
*/
-#ifndef RUBY3_INTERN_RUBY_H
-#define RUBY3_INTERN_RUBY_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/select.h b/include/ruby/3/intern/select.h
index a4be259cc2..c9c47d1a68 100644
--- a/include/ruby/3/intern/select.h
+++ b/include/ruby/3/intern/select.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_SELECT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_SELECT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,8 +22,6 @@
* @note Functions and structs defined in this header file are not
* necessarily ruby-specific. They don't need ::VALUE etc.
*/
-#ifndef RUBY3_INTERN_SELECT_H
-#define RUBY3_INTERN_SELECT_H
#include "ruby/3/config.h"
#ifdef HAVE_SYS_TYPES_H
diff --git a/include/ruby/3/intern/select/largesize.h b/include/ruby/3/intern/select/largesize.h
index 2bf88ffed4..b54ac116dd 100644
--- a/include/ruby/3/intern/select/largesize.h
+++ b/include/ruby/3/intern/select/largesize.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_SELECT_LARGESIZE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_SELECT_LARGESIZE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -53,8 +55,6 @@
*
* So `rb_fd_set` doesn't reject file descriptors bigger than `FD_SETSIZE`.
*/
-#ifndef RUBY3_INTERN_SELECT_LARGESIZE_H
-#define RUBY3_INTERN_SELECT_LARGESIZE_H
#include "ruby/3/attr/nonnull.h"
#include "ruby/3/attr/pure.h"
#include "ruby/3/dllexport.h"
diff --git a/include/ruby/3/intern/select/posix.h b/include/ruby/3/intern/select/posix.h
index 83d93e99d9..156962c0bb 100644
--- a/include/ruby/3/intern/select/posix.h
+++ b/include/ruby/3/intern/select/posix.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_SELECT_POSIX_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_SELECT_POSIX_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs to provide ::rb_fd_select().
*/
-#ifndef RUBY3_INTERN_SELECT_POSIX_H
-#define RUBY3_INTERN_SELECT_POSIX_H
#include "ruby/3/config.h"
#ifdef HAVE_SYS_SELECT_H
diff --git a/include/ruby/3/intern/select/win32.h b/include/ruby/3/intern/select/win32.h
index 8977624dc8..fb42b5e77d 100644
--- a/include/ruby/3/intern/select/win32.h
+++ b/include/ruby/3/intern/select/win32.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_SELECT_WIN32_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_SELECT_WIN32_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs to provide ::rb_fd_select().
*/
-#ifndef RUBY3_INTERN_SELECT_WIN32_H
-#define RUBY3_INTERN_SELECT_WIN32_H
#include "ruby/3/dosish.h" /* for rb_w32_select */
#include "ruby/3/attr/nonnull.h"
#include "ruby/3/attr/pure.h"
diff --git a/include/ruby/3/intern/signal.h b/include/ruby/3/intern/signal.h
index f4fa08732e..09a2f1df1b 100644
--- a/include/ruby/3/intern/signal.h
+++ b/include/ruby/3/intern/signal.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_SIGNAL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_SIGNAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Signal handling APIs.
*/
-#ifndef RUBY3_INTERN_SIGNAL_H
-#define RUBY3_INTERN_SIGNAL_H
#include "ruby/3/config.h" /* POSIX_SIGNAL / RETSIGTYPE */
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/sprintf.h b/include/ruby/3/intern/sprintf.h
index d65517af83..908d88c691 100644
--- a/include/ruby/3/intern/sprintf.h
+++ b/include/ruby/3/intern/sprintf.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_SPRINTF_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_SPRINTF_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Our own private printf(3).
*/
-#ifndef RUBY3_INTERN_SPRINTF_H
-#define RUBY3_INTERN_SPRINTF_H
#include "ruby/3/attr/format.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/string.h b/include/ruby/3/intern/string.h
index 5ac355af38..37e8d4d992 100644
--- a/include/ruby/3/intern/string.h
+++ b/include/ruby/3/intern/string.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_STRING_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_STRING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cString.
*/
-#ifndef RUBY3_INTERN_STRING_H
-#define RUBY3_INTERN_STRING_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/intern/struct.h b/include/ruby/3/intern/struct.h
index 25e80a28b8..cf99d15747 100644
--- a/include/ruby/3/intern/struct.h
+++ b/include/ruby/3/intern/struct.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_STRUCT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_STRUCT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cStruct.
*/
-#ifndef RUBY3_INTERN_STRUCT_H
-#define RUBY3_INTERN_STRUCT_H
#include "ruby/3/dllexport.h"
#include "ruby/3/intern/vm.h" /* rb_alloc_func_t */
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/thread.h b/include/ruby/3/intern/thread.h
index 51f20eeab2..afd63507f4 100644
--- a/include/ruby/3/intern/thread.h
+++ b/include/ruby/3/intern/thread.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_THREAD_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_THREAD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,10 +20,7 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cThread.
*/
-#ifndef RUBY3_INTERN_THREAD_H
-#define RUBY3_INTERN_THREAD_H
#include "ruby/3/config.h"
-
#include "ruby/3/cast.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/time.h b/include/ruby/3/intern/time.h
index d66d740679..a895bc0848 100644
--- a/include/ruby/3/intern/time.h
+++ b/include/ruby/3/intern/time.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_TIME_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_TIME_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -16,10 +18,8 @@
* Do not expect for instance `__VA_ARGS__` is always available.
* We assume C99 for ruby itself but we don't assume languages of
* extension libraries. They could be written in C++98.
- * @brief Public APIs related to ::rb_cStruct.
+ * @brief Public APIs related to ::rb_cTime.
*/
-#ifndef RUBY3_INTERN_TIME_H
-#define RUBY3_INTERN_TIME_H
#include "ruby/3/config.h"
#ifdef HAVE_TIME_H
diff --git a/include/ruby/3/intern/variable.h b/include/ruby/3/intern/variable.h
index 36408bf788..7183219fc0 100644
--- a/include/ruby/3/intern/variable.h
+++ b/include/ruby/3/intern/variable.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_VARIABLE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_VARIABLE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to names inside of a Ruby program.
*/
-#ifndef RUBY3_INTERN_VARIABLE_H
-#define RUBY3_INTERN_VARIABLE_H
#include "ruby/3/attr/noreturn.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/intern/vm.h b/include/ruby/3/intern/vm.h
index 53b2b9f8bc..985971c28a 100644
--- a/include/ruby/3/intern/vm.h
+++ b/include/ruby/3/intern/vm.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERN_VM_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERN_VM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Public APIs related to ::rb_cRubyVM.
*/
-#ifndef RUBY3_INTERN_VM_H
-#define RUBY3_INTERN_VM_H
#include "ruby/3/attr/noreturn.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/interpreter.h b/include/ruby/3/interpreter.h
index 25d4ec8581..d9a4aee2c0 100644
--- a/include/ruby/3/interpreter.h
+++ b/include/ruby/3/interpreter.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_INTERPRETER_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_INTERPRETER_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Interpreter embedding APIs.
*/
-#ifndef RUBY3_INTERPRETER_H
-#define RUBY3_INTERPRETER_H
#include "ruby/3/attr/noreturn.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
@@ -54,7 +54,6 @@ void ruby_show_version(void);
void ruby_show_copyright(void);
#endif
-
/*! A convenience macro to call ruby_init_stack(). Must be placed just after
* variable declarations */
#define RUBY_INIT_STACK \
diff --git a/include/ruby/3/iterator.h b/include/ruby/3/iterator.h
index dcd580d492..9c39efc300 100644
--- a/include/ruby/3/iterator.h
+++ b/include/ruby/3/iterator.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_ITERATOR_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_ITERATOR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Block related APIs.
*/
-#ifndef RUBY3_ITERATOR_H
-#define RUBY3_ITERATOR_H
#include "ruby/3/attr/noreturn.h"
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/memory.h b/include/ruby/3/memory.h
index 9001fd2ab3..2edab9a1fb 100644
--- a/include/ruby/3/memory.h
+++ b/include/ruby/3/memory.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_MEMORY_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_MEMORY_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Memory management stuff.
*/
-#ifndef RUBY3_MEMORY_H
-#define RUBY3_MEMORY_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/3/method.h b/include/ruby/3/method.h
index 379ea95c25..dc6e32078b 100644
--- a/include/ruby/3/method.h
+++ b/include/ruby/3/method.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_METHOD_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_METHOD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Creation and modification of Ruby methods.
*/
-#ifndef RUBY3_METHOD_H
-#define RUBY3_METHOD_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/backward/2/stdarg.h"
diff --git a/include/ruby/3/module.h b/include/ruby/3/module.h
index d82071a726..cbd45f8efe 100644
--- a/include/ruby/3/module.h
+++ b/include/ruby/3/module.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_MODULE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_MODULE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Creation and modification of Ruby modules.
*/
-#ifndef RUBY3_MODULE_H
-#define RUBY3_MODULE_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
diff --git a/include/ruby/3/newobj.h b/include/ruby/3/newobj.h
index 89f7e9c30d..2ad48a66f6 100644
--- a/include/ruby/3/newobj.h
+++ b/include/ruby/3/newobj.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_NEWOBJ_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_NEWOBJ_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #NEWOBJ.
*/
-#ifndef RUBY3_NEWOBJ_H
-#define RUBY3_NEWOBJ_H
#include "ruby/3/cast.h"
#include "ruby/3/core/rbasic.h"
#include "ruby/3/dllexport.h"
diff --git a/include/ruby/3/rgengc.h b/include/ruby/3/rgengc.h
index 217798fbec..4f321375f3 100644
--- a/include/ruby/3/rgengc.h
+++ b/include/ruby/3/rgengc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_RGENGC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_RGENGC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,8 +24,6 @@
* International Symposium on Memory Management (ISMM 2019), pp
* 115-121, 2019. https://doi.org/10.1145/3315573.3329986
*/
-#ifndef RUBY3_RGENGC_H
-#define RUBY3_RGENGC_H
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/pure.h"
#include "ruby/3/dllexport.h"
diff --git a/include/ruby/3/scan_args.h b/include/ruby/3/scan_args.h
index 9bc32fb1b1..bc4faddd56 100644
--- a/include/ruby/3/scan_args.h
+++ b/include/ruby/3/scan_args.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_SCAN_ARGS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_SCAN_ARGS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -21,8 +23,6 @@
* This is a beast. It statically analyses the argument spec string, and
* expands the assignment of variables into dedicated codes.
*/
-#ifndef RUBY3_SCAN_ARGS_H
-#define RUBY3_SCAN_ARGS_H
#include "ruby/3/attr/diagnose_if.h"
#include "ruby/3/attr/error.h"
#include "ruby/3/attr/forceinline.h"
diff --git a/include/ruby/3/special_consts.h b/include/ruby/3/special_consts.h
index c66dd95d6a..683cebf1ed 100644
--- a/include/ruby/3/special_consts.h
+++ b/include/ruby/3/special_consts.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_SPECIAL_CONSTS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_SPECIAL_CONSTS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,8 +24,6 @@
* SIGPPL Workshop on Programming and Programming Languages
* (PPL2008), pp. 9-16, 2008.
*/
-#ifndef RUBY3_SPECIAL_CONSTS_H
-#define RUBY3_SPECIAL_CONSTS_H
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/const.h"
#include "ruby/3/attr/constexpr.h"
@@ -164,7 +164,6 @@ RB_FLONUM_P(VALUE obj)
#endif
}
-
RUBY3_ATTR_CONST()
RUBY3_ATTR_CONSTEXPR(CXX11)
RUBY3_ATTR_ARTIFICIAL()
diff --git a/include/ruby/3/static_assert.h b/include/ruby/3/static_assert.h
index 78ce4def4b..b9c842f3b6 100644
--- a/include/ruby/3/static_assert.h
+++ b/include/ruby/3/static_assert.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_STATIC_ASSERT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_STATIC_ASSERT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,10 +24,7 @@
#include "ruby/3/has/extension.h"
/** @cond INTERNAL_MACRO */
-#if defined(RUBY3_STATIC_ASSERT0)
-# /* Take that. */
-
-#elif defined(__cplusplus) && defined(__cpp_static_assert)
+#if defined(__cplusplus) && defined(__cpp_static_assert)
# /* https://isocpp.org/std/standing-documents/sd-6-sg10-feature-test-recommendations */
# define RUBY3_STATIC_ASSERT0 static_assert
@@ -62,10 +61,7 @@
* @param expr Expression to assert.
* @note `name` shall not be a string literal.
*/
-#if defined(RUBY3_STATIC_ASSERT)
-# /* Take that. */
-
-#elif defined(__DOXYGEN__)
+#if defined(__DOXYGEN__)
# define RUBY3_STATIC_ASSERT static_assert
#elif defined(RUBY3_STATIC_ASSERT0)
@@ -76,3 +72,5 @@
# define RUBY3_STATIC_ASSERT(name, expr) \
typedef int static_assert_ ## name ## _check[1 - 2 * !(expr)]
#endif
+
+#endif /* RUBY3_STATIC_ASSERT_H */
diff --git a/include/ruby/3/stdalign.h b/include/ruby/3/stdalign.h
index 294a6410c4..ccc68b66df 100644
--- a/include/ruby/3/stdalign.h
+++ b/include/ruby/3/stdalign.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_STDALIGN_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_STDALIGN_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -48,10 +50,7 @@
* - You cannot `struct _Alignas`.
* - A `typedef` cannot have alignments.
*/
-#if defined(RUBY3_ALIGNAS)
-# /* OK, take that. */
-
-#elif defined(__cplusplus) && RUBY3_HAS_FEATURE(cxx_alignas)
+#if defined(__cplusplus) && RUBY3_HAS_FEATURE(cxx_alignas)
# define RUBY3_ALIGNAS alignas
#elif defined(__cplusplus) && (__cplusplus >= 201103L)
@@ -77,10 +76,7 @@
* Wraps (or simulates) `alignof`. Unlike #RUBY3_ALIGNAS, we can safely say
* both C/C++ definitions are effective.
*/
-#ifdef RUBY3_ALIGNOF
-# /* OK, take that. */
-
-#elif defined(__cplusplus) && RUBY3_HAS_EXTENSION(cxx_alignof)
+#if defined(__cplusplus) && RUBY3_HAS_EXTENSION(cxx_alignof)
# define RUBY3_ALIGNOF __extension__ alignof
#elif defined(__cplusplus) && (__cplusplus >= 201103L)
@@ -122,3 +118,5 @@
#else
# error :FIXME: add your compiler here to obtain an alignment.
#endif
+
+#endif /* RUBY3_STDALIGN_H */
diff --git a/include/ruby/3/stdbool.h b/include/ruby/3/stdbool.h
index 2c33c06839..9216f54e2d 100644
--- a/include/ruby/3/stdbool.h
+++ b/include/ruby/3/stdbool.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_STDBOOL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_STDBOOL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -45,3 +47,5 @@ typedef unsigned char _Bool;
# define false ((_Bool)+0)
# define __bool_true_false_are_defined
#endif
+
+#endif /* RUBY3_STDBOOL_H */
diff --git a/include/ruby/3/symbol.h b/include/ruby/3/symbol.h
index dc77cb2bc6..2d890901c4 100644
--- a/include/ruby/3/symbol.h
+++ b/include/ruby/3/symbol.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_SYMBOL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_SYMBOL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines #rb_intern
*/
-#ifndef RUBY3_SYMBOL_H
-#define RUBY3_SYMBOL_H
#include "ruby/3/config.h"
#ifdef HAVE_STDDEF_H
diff --git a/include/ruby/3/token_paste.h b/include/ruby/3/token_paste.h
index e15897dcc0..4e6dbb4834 100644
--- a/include/ruby/3/token_paste.h
+++ b/include/ruby/3/token_paste.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_TOKEN_PASTE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_TOKEN_PASTE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -26,10 +28,7 @@
* documented. Please improve this file when you are really sure about your
* compiler's behaviour. */
-#if defined(RUBY3_TOKEN_PASTE)
-# /* Take that. */
-
-#elif RUBY3_COMPILER_SINCE(GCC, 4, 2, 0)
+#if RUBY3_COMPILER_SINCE(GCC, 4, 2, 0)
# /* GCC is one of such compiler who cannot write `_Pragma` inside of a `#if`.
# * Cannot but globally kill everything. This is of course a very bad thing.
# * If you know how to reroute this please tell us. */
@@ -69,3 +68,5 @@
# /* No way. */
# define RUBY3_TOKEN_PASTE(x, y) TOKEN_PASTE(x, y)
#endif
+
+#endif /* RUBY3_TOKEN_PASTE_H */
diff --git a/include/ruby/3/value.h b/include/ruby/3/value.h
index b57c3df346..99189a4f0e 100644
--- a/include/ruby/3/value.h
+++ b/include/ruby/3/value.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_VALUE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_VALUE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines ::VALUE and ::ID.
*/
-#ifndef RUBY3_VALUE_H
-#define RUBY3_VALUE_H
#include "ruby/3/static_assert.h"
#include "ruby/backward/2/long_long.h"
#include "ruby/backward/2/limits.h"
diff --git a/include/ruby/3/value_type.h b/include/ruby/3/value_type.h
index 192d97b9fd..8598dfd7e8 100644
--- a/include/ruby/3/value_type.h
+++ b/include/ruby/3/value_type.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_VALUE_TYPE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_VALUE_TYPE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Defines enum ::ruby_value_type.
*/
-#ifndef RUBY3_VALUE_TYPE_H
-#define RUBY3_VALUE_TYPE_H
#include "ruby/3/assume.h"
#include "ruby/3/attr/artificial.h"
#include "ruby/3/attr/cold.h"
diff --git a/include/ruby/3/variable.h b/include/ruby/3/variable.h
index b1b9f922ff..942c9865f4 100644
--- a/include/ruby/3/variable.h
+++ b/include/ruby/3/variable.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_VARIABLE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_VARIABLE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief C-function backended Ruby-global variables.
*/
-#ifndef RUBY3_VARIABLE_H
-#define RUBY3_VARIABLE_H
#include "ruby/3/dllexport.h"
#include "ruby/3/value.h"
#include "ruby/3/attr/noreturn.h"
@@ -59,4 +59,4 @@ VALUE rb_iv_set(VALUE, const char*, VALUE);
RUBY3_SYMBOL_EXPORT_END()
-#endif /* RUBY3_RHASH_H */
+#endif /* RUBY3_VARIABLE_H */
diff --git a/include/ruby/3/warning_push.h b/include/ruby/3/warning_push.h
index 6edaaa37ee..c3384f2d75 100644
--- a/include/ruby/3/warning_push.h
+++ b/include/ruby/3/warning_push.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_WARNING_PUSH_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_WARNING_PUSH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -43,10 +45,7 @@
*/
#include "ruby/3/compiler_is.h"
-#ifdef RUBY3_WARNING_PUSH
-# /* Take that. */
-
-#elif RUBY3_COMPILER_SINCE(MSVC, 12, 0, 0)
+#if RUBY3_COMPILER_SINCE(MSVC, 12, 0, 0)
# /* Not sure exactly when but it seems VC++ 6.0 is a version with it.*/
# define RUBY3_WARNING_PUSH() __pragma(warning(push))
# define RUBY3_WARNING_POP() __pragma(warning(pop))
@@ -87,3 +86,5 @@
# define RUBY3_WARNING_IGNORED(flag) /* void */
#endif /* _MSC_VER */
/** @endcond */
+
+#endif /* RUBY3_WARNING_PUSH_H */
diff --git a/include/ruby/3/xmalloc.h b/include/ruby/3/xmalloc.h
index e488e25afc..ecf9addc9e 100644
--- a/include/ruby/3/xmalloc.h
+++ b/include/ruby/3/xmalloc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY3_XMALLOC_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY3_XMALLOC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -18,8 +20,6 @@
* extension libraries. They could be written in C++98.
* @brief Declares ::ruby_xmalloc().
*/
-#ifndef RUBY3_XMALLOC_H
-#define RUBY3_XMALLOC_H
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/assert.h b/include/ruby/assert.h
index 900ece8f40..54a7618720 100644
--- a/include/ruby/assert.h
+++ b/include/ruby/assert.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_ASSERT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_ASSERT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @date Wed May 18 00:21:44 JST 1994
@@ -18,8 +20,6 @@
* We assume C99 for ruby itself but we don't assume languages of
* extension libraries. They could be written in C++98.
*/
-#ifndef RUBY_ASSERT_H
-#define RUBY_ASSERT_H
#include "ruby/3/assume.h"
#include "ruby/3/attr/cold.h"
#include "ruby/3/attr/noreturn.h"
diff --git a/include/ruby/backward.h b/include/ruby/backward.h
index 04ce2b8c52..8380152db5 100644
--- a/include/ruby/backward.h
+++ b/include/ruby/backward.h
@@ -1,5 +1,13 @@
-#ifndef RUBY_RUBY_BACKWARD_H
+#ifndef RUBY_RUBY_BACKWARD_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_RUBY_BACKWARD_H 1
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/core/rbasic.h"
#include "ruby/3/value.h"
#include "ruby/3/interpreter.h"
diff --git a/include/ruby/backward/2/assume.h b/include/ruby/backward/2/assume.h
index 2be231093b..095a43876d 100644
--- a/include/ruby/backward/2/assume.h
+++ b/include/ruby/backward/2/assume.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_ASSUME_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_ASSUME_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -37,3 +39,5 @@
# define RB_LIKELY(x) (x)
# define RB_UNLIKELY(x) (x)
#endif
+
+#endif /* RUBY_BACKWARD2_ASSUME_H */
diff --git a/include/ruby/backward/2/attributes.h b/include/ruby/backward/2/attributes.h
index 0735385292..043646eb4b 100644
--- a/include/ruby/backward/2/attributes.h
+++ b/include/ruby/backward/2/attributes.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_ATTRIBUTES_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_ATTRIBUTES_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -26,8 +28,6 @@
* - A: Don't know. Don't blame me. Backward compatibility is the key here.
* I'm just preserving what they have been.
*/
-#ifndef RUBY_BACKWARD2_ATTRIBUTES_H
-#define RUBY_BACKWARD2_ATTRIBUTES_H
#include "ruby/3/config.h"
#include "ruby/3/attr/alloc_size.h"
#include "ruby/3/attr/cold.h"
diff --git a/include/ruby/backward/2/bool.h b/include/ruby/backward/2/bool.h
index 8c619b8215..b2cca2a206 100644
--- a/include/ruby/backward/2/bool.h
+++ b/include/ruby/backward/2/bool.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_BOOL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_BOOL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -31,3 +33,5 @@
#elif ! TRUE
# error TRUE must be true
#endif
+
+#endif /* RUBY_BACKWARD2_BOOL_H */
diff --git a/include/ruby/backward/2/extern.h b/include/ruby/backward/2/extern.h
index e7018342ea..697c593000 100644
--- a/include/ruby/backward/2/extern.h
+++ b/include/ruby/backward/2/extern.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_EXTERN_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_EXTERN_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -24,10 +26,7 @@
* @brief Synonym of #RUBY_EXTERN.
* @deprecated #EXTERN is deprecated, use #RUBY_EXTERN instead.
*/
-#ifdef EXTERN
-# /* Stop bothering then. */
-
-#elif defined __GNUC__
+#if defined __GNUC__
# define EXTERN \
_Pragma("message \"EXTERN is deprecated, use RUBY_EXTERN instead\""); \
RUBY_EXTERN
@@ -43,3 +42,5 @@
# define EXTERN <-<-"EXTERN is deprecated, use RUBY_EXTERN instead"->->
#endif
+
+#endif /* RUBY_BACKWARD2_EXTERN_H */
diff --git a/include/ruby/backward/2/gcc_version_since.h b/include/ruby/backward/2/gcc_version_since.h
index 4e2abc45f9..553b982147 100644
--- a/include/ruby/backward/2/gcc_version_since.h
+++ b/include/ruby/backward/2/gcc_version_since.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_GCC_VERSION_SINCE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_GCC_VERSION_SINCE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -31,3 +33,5 @@
((RUBY3_COMPILER_VERSION_MINOR == (y)) && \
(RUBY3_COMPILER_VERSION_PATCH == (z))))))
#endif
+
+#endif /* RUBY_BACKWARD2_GCC_VERSION_SINCE_H */
diff --git a/include/ruby/backward/2/inttypes.h b/include/ruby/backward/2/inttypes.h
index 7e9b525a52..c6419bc7b3 100644
--- a/include/ruby/backward/2/inttypes.h
+++ b/include/ruby/backward/2/inttypes.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_INTTYPES_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_INTTYPES_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -126,3 +128,5 @@
# define PRIxSIZE PRI_SIZE_PREFIX"x"
# define PRIXSIZE PRI_SIZE_PREFIX"X"
#endif
+
+#endif /* RUBY_BACKWARD2_INTTYPES_H */
diff --git a/include/ruby/backward/2/limits.h b/include/ruby/backward/2/limits.h
index 28eb1596a9..f003d86057 100644
--- a/include/ruby/backward/2/limits.h
+++ b/include/ruby/backward/2/limits.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_LIMITS_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_LIMITS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -94,3 +96,5 @@
# define SSIZE_MAX SHRT_MAX
# define SSIZE_MIN SHRT_MIN
#endif
+
+#endif /* RUBY_BACKWARD2_LIMITS_H */
diff --git a/include/ruby/backward/2/long_long.h b/include/ruby/backward/2/long_long.h
index 29b930625e..2a9b9e7f40 100644
--- a/include/ruby/backward/2/long_long.h
+++ b/include/ruby/backward/2/long_long.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_LONG_LONG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_LONG_LONG_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -25,10 +27,7 @@
*/
#include "ruby/3/config.h"
-#if defined(LONG_LONG)
-# /* Take that. */
-
-#elif RUBY3_HAS_WARNING("-Wc++11-long-long")
+#if RUBY3_HAS_WARNING("-Wc++11-long-long")
# define HAVE_TRUE_LONG_LONG 1
# define LONG_LONG \
RUBY3_WARNING_PUSH() \
@@ -60,3 +59,5 @@
# error Remember to attach a detailed description of your environment.
# error Thank you!
#endif
+
+#endif /* RUBY3_BACKWARD2_LONG_LONG_H */
diff --git a/include/ruby/backward/2/r_cast.h b/include/ruby/backward/2/r_cast.h
index ed529c8968..15f5339227 100644
--- a/include/ruby/backward/2/r_cast.h
+++ b/include/ruby/backward/2/r_cast.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_R_CAST_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_R_CAST_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -20,8 +22,6 @@
*
* Nobody is actively using this macro.
*/
-#ifndef RUBY_BACKWARD2_R_CAST_H
-#define RUBY_BACKWARD2_R_CAST_H
#define R_CAST(st) (struct st*)
#define RMOVED(obj) (R_CAST(RMoved)(obj))
#endif /* RUBY_BACKWARD2_R_CAST_H */
diff --git a/include/ruby/backward/2/rmodule.h b/include/ruby/backward/2/rmodule.h
index bb0fc047a6..6b79636ac7 100644
--- a/include/ruby/backward/2/rmodule.h
+++ b/include/ruby/backward/2/rmodule.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_RMODULE_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_RMODULE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -22,9 +24,8 @@
* who is implementing the internals) could have used those macros for a while.
* Kept public as-is here to keep some theoretical backwards compatibility.
*/
-#ifndef RMODULE_IV_TBL
#define RMODULE_IV_TBL(m) RCLASS_IV_TBL(m)
#define RMODULE_CONST_TBL(m) RCLASS_CONST_TBL(m)
#define RMODULE_M_TBL(m) RCLASS_M_TBL(m)
#define RMODULE_SUPER(m) RCLASS_SUPER(m)
-#endif
+#endif /* RUBY_BACKWARD2_RMODULE_H */
diff --git a/include/ruby/backward/2/stdalign.h b/include/ruby/backward/2/stdalign.h
index 2d970edc9d..bdea030a41 100644
--- a/include/ruby/backward/2/stdalign.h
+++ b/include/ruby/backward/2/stdalign.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_STDALIGN_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_STDALIGN_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -24,3 +26,5 @@
#undef RUBY_ALIGNOF
#define RUBY_ALIGNAS RUBY3_ALIGNAS
#define RUBY_ALIGNOF RUBY3_ALIGNOF
+
+#endif /* RUBY_BACKWARD2_STDALIGN_H */
diff --git a/include/ruby/backward/2/stdarg.h b/include/ruby/backward/2/stdarg.h
index 7b37bd4571..2270e66b77 100644
--- a/include/ruby/backward/2/stdarg.h
+++ b/include/ruby/backward/2/stdarg.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD2_STDARG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD2_STDARG_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -41,3 +43,5 @@
#else
#define ANYARGS
#endif
+
+#endif /* RUBY_BACKWARD2_STDARG_H */
diff --git a/include/ruby/backward/classext.h b/include/ruby/backward/classext.h
index 9d5747316a..61d05611bc 100644
--- a/include/ruby/backward/classext.h
+++ b/include/ruby/backward/classext.h
@@ -1,12 +1,19 @@
+#ifndef RUBY_BACKWARD_CLASSEXT_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD_CLASSEXT_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#if defined __GNUC__
#warning use of RClass internals is deprecated
#elif defined _MSC_VER
#pragma message("warning: use of RClass internals is deprecated")
#endif
-#ifndef RUBY_BACKWARD_CLASSEXT_H
-#define RUBY_BACKWARD_CLASSEXT_H 1
-
typedef struct rb_deprecated_classext_struct {
VALUE super;
} rb_deprecated_classext_t;
@@ -15,4 +22,4 @@ typedef struct rb_deprecated_classext_struct {
#define RCLASS_EXT(c) ((rb_deprecated_classext_t *)RCLASS(c)->ptr)
#define RCLASS_SUPER(c) (RCLASS(c)->super)
-#endif /* RUBY_BACKWARD_CLASSEXT_H */
+#endif /* RUBY_BACKWARD_CLASSEXT_H */
diff --git a/include/ruby/backward/cxxanyargs.hpp b/include/ruby/backward/cxxanyargs.hpp
index 8fda5fe906..c30ab46f43 100644
--- a/include/ruby/backward/cxxanyargs.hpp
+++ b/include/ruby/backward/cxxanyargs.hpp
@@ -1,4 +1,5 @@
-/// \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_BACKWARD_CXXANYARGS_HPP //-*-C++-*-vi:ft=cpp
+#define RUBY_BACKWARD_CXXANYARGS_HPP
/// @file
/// @author \@shyouhei
/// @copyright This file is a part of the programming language Ruby.
@@ -9,8 +10,6 @@
/// meant to be a backwards compatibility shim. Please stick to
/// C++ 98 and never use newer features, like `constexpr`.
/// @brief Provides old prototypes for C++ programs.
-#ifndef RUBY_BACKWARD_CXXANYARGS_HPP
-#define RUBY_BACKWARD_CXXANYARGS_HPP
#include "ruby/3/config.h"
#include "ruby/3/intern/class.h"
#include "ruby/3/intern/cont.h"
diff --git a/include/ruby/backward/rubyio.h b/include/ruby/backward/rubyio.h
index a6e3a7c78b..433f425988 100644
--- a/include/ruby/backward/rubyio.h
+++ b/include/ruby/backward/rubyio.h
@@ -1,6 +1,18 @@
+#ifndef RUBY_BACKWARD_RUBYIO_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD_RUBYIO_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#if defined __GNUC__
#warning use "ruby/io.h" instead of "rubyio.h"
#elif defined _MSC_VER
#pragma message("warning: use \"ruby/io.h\" instead of \"rubyio.h\"")
#endif
#include "ruby/io.h"
+
+#endif /* RUBY_BACKWARD_RUBYIO_H */
diff --git a/include/ruby/backward/rubysig.h b/include/ruby/backward/rubysig.h
index 7a1ca35f20..b1645cdeb0 100644
--- a/include/ruby/backward/rubysig.h
+++ b/include/ruby/backward/rubysig.h
@@ -1,23 +1,20 @@
-/**********************************************************************
-
- rubysig.h -
-
- $Author$
- $Date$
- created at: Wed Aug 16 01:15:38 JST 1995
-
- Copyright (C) 1993-2008 Yukihiro Matsumoto
-
-**********************************************************************/
-
+#ifndef RUBYSIG_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBYSIG_H
+/**
+ * @file
+ * @author $Author$
+ * @date Wed Aug 16 01:15:38 JST 1995
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#if defined __GNUC__
#warning rubysig.h is obsolete
#elif defined _MSC_VER
#pragma message("warning: rubysig.h is obsolete")
#endif
-#ifndef RUBYSIG_H
-#define RUBYSIG_H
#include "ruby/ruby.h"
#define RUBY_CRITICAL(statements) do {statements;} while (0)
@@ -26,4 +23,4 @@
#define ALLOW_INTS do {CHECK_INTS;} while (0)
#define CHECK_INTS rb_thread_check_ints()
-#endif
+#endif /* RUBYSIG_H */
diff --git a/include/ruby/backward/st.h b/include/ruby/backward/st.h
index 3e36d44cf8..ad627e5e99 100644
--- a/include/ruby/backward/st.h
+++ b/include/ruby/backward/st.h
@@ -1,6 +1,18 @@
+#ifndef RUBY_BACKWARD_ST_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD_ST_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#if defined __GNUC__
#warning use "ruby/st.h" instead of bare "st.h"
#elif defined _MSC_VER
#pragma message("warning: use \"ruby/st.h\" instead of bare \"st.h\"")
#endif
#include "ruby/st.h"
+
+#endif /* RUBY_BACKWARD_ST_H */
diff --git a/include/ruby/backward/util.h b/include/ruby/backward/util.h
index 11d32a2da8..1974fedbb5 100644
--- a/include/ruby/backward/util.h
+++ b/include/ruby/backward/util.h
@@ -1,6 +1,18 @@
+#ifndef RUBY_BACKWARD_UTIL_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_BACKWARD_UTIL_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#if defined __GNUC__
#warning use "ruby/util.h" instead of bare "util.h"
#elif defined _MSC_VER
#pragma message("warning: use \"ruby/util.h\" instead of bare \"util.h\"")
#endif
#include "ruby/util.h"
+
+#endif /* RUBY_BACKWARD_UTIL_H */
diff --git a/include/ruby/debug.h b/include/ruby/debug.h
index 0b0e82924b..86e147cd6c 100644
--- a/include/ruby/debug.h
+++ b/include/ruby/debug.h
@@ -1,19 +1,18 @@
-/**********************************************************************
-
- ruby/debug.h -
-
- $Author: ko1 $
- created at: Tue Nov 20 20:35:08 2012
-
- Copyright (C) 2012 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RB_DEBUG_H
+#ifndef RB_DEBUG_H /*-*-C++-*-vi:se ft=cpp:*/
#define RB_DEBUG_H 1
-
+/**
+ * @file
+ * @author $Author: ko1 $
+ * @date Tue Nov 20 20:35:08 2012
+ * @copyright Copyright (C) 2012 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/dllexport.h"
#include "ruby/3/event.h"
+#include "ruby/3/value.h"
RUBY3_SYMBOL_EXPORT_BEGIN()
diff --git a/include/ruby/defines.h b/include/ruby/defines.h
index 59eb311154..0d5a9b2c22 100644
--- a/include/ruby/defines.h
+++ b/include/ruby/defines.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_DEFINES_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_DEFINES_H 1
+/**
* @file
* @author $Author$
* @date Wed May 18 00:21:44 JST 1994
@@ -7,8 +9,6 @@
* modify this file, provided that the conditions mentioned in the
* file COPYING are met. Consult the file for details.
*/
-#ifndef RUBY_DEFINES_H
-#define RUBY_DEFINES_H 1
#include "ruby/3/config.h"
diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h
index 334acb35dc..79bf7fc60c 100644
--- a/include/ruby/encoding.h
+++ b/include/ruby/encoding.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- encoding.h -
-
- $Author: matz $
- created at: Thu May 24 11:49:41 JST 2007
-
- Copyright (C) 2007 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_ENCODING_H
+#ifndef RUBY_ENCODING_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_ENCODING_H 1
-
+/**
+ * @file
+ * @author $Author: matz $
+ * @date Thu May 24 11:49:41 JST 2007
+ * @copyright Copyright (C) 2007 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#include <stdarg.h>
#include "ruby/ruby.h"
diff --git a/include/ruby/intern.h b/include/ruby/intern.h
index 7b583d48be..60b7b450ed 100644
--- a/include/ruby/intern.h
+++ b/include/ruby/intern.h
@@ -1,19 +1,17 @@
-/**********************************************************************
-
- intern.h -
-
- $Author$
- created at: Thu Jun 10 14:22:17 JST 1993
-
- Copyright (C) 1993-2007 Yukihiro Matsumoto
- Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
- Copyright (C) 2000 Information-technology Promotion Agency, Japan
-
-**********************************************************************/
-
-#ifndef RUBY_INTERN_H
+#ifndef RUBY_INTERN_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_INTERN_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Thu Jun 10 14:22:17 JST 1993
+ * @copyright Copyright (C) 1993-2007 Yukihiro Matsumoto
+ * @copyright Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
+ * @copyright Copyright (C) 2000 Information-technology Promotion Agency, Japan
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#include "ruby/defines.h"
diff --git a/include/ruby/io.h b/include/ruby/io.h
index 5a80c76290..abf0d70c16 100644
--- a/include/ruby/io.h
+++ b/include/ruby/io.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- rubyio.h -
-
- $Author$
- created at: Fri Nov 12 16:47:09 JST 1993
-
- Copyright (C) 1993-2007 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_IO_H
+#ifndef RUBY_IO_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_IO_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Fri Nov 12 16:47:09 JST 1993
+ * @copyright Copyright (C) 1993-2007 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#include <stdio.h>
diff --git a/include/ruby/missing.h b/include/ruby/missing.h
index 4a5db6007a..a2d82f0746 100644
--- a/include/ruby/missing.h
+++ b/include/ruby/missing.h
@@ -1,4 +1,6 @@
-/** \noop-*-C++-*-vi:ft=cpp
+#ifndef RUBY_MISSING_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_MISSING_H 1
+/**
* @file
* @author $Author$
* @date Sat May 11 23:46:03 JST 2002
@@ -8,9 +10,6 @@
* file COPYING are met. Consult the file for details.
* @brief Prototype for *.c in ./missing, and for missing timeval struct.
*/
-#ifndef RUBY_MISSING_H
-#define RUBY_MISSING_H 1
-
#include "ruby/3/config.h"
#ifdef STDC_HEADERS
diff --git a/include/ruby/re.h b/include/ruby/re.h
index 67dbe7778b..dc14799ae7 100644
--- a/include/ruby/re.h
+++ b/include/ruby/re.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- re.h -
-
- $Author$
- created at: Thu Sep 30 14:18:32 JST 1993
-
- Copyright (C) 1993-2007 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_RE_H
+#ifndef RUBY_RE_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_RE_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Thu Sep 30 14:18:32 JST 1993
+ * @copyright Copyright (C) 1993-2007 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#include <sys/types.h>
#include <stdio.h>
diff --git a/include/ruby/regex.h b/include/ruby/regex.h
index 024bed4a4e..22dae3231d 100644
--- a/include/ruby/regex.h
+++ b/include/ruby/regex.h
@@ -1,16 +1,14 @@
-/**********************************************************************
-
- regex.h -
-
- $Author$
-
- Copyright (C) 1993-2007 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef ONIGURUMA_REGEX_H
+#ifndef ONIGURUMA_REGEX_H /*-*-C++-*-vi:se ft=cpp:*/
#define ONIGURUMA_REGEX_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @copyright Copyright (C) 1993-2007 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#if defined(__cplusplus)
extern "C" {
#if 0
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 2371425c35..573dc19889 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -1,19 +1,17 @@
-/**********************************************************************
-
- ruby/ruby.h -
-
- $Author$
- created at: Thu Jun 10 14:26:32 JST 1993
-
- Copyright (C) 1993-2008 Yukihiro Matsumoto
- Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
- Copyright (C) 2000 Information-technology Promotion Agency, Japan
-
-**********************************************************************/
-
-#ifndef RUBY_RUBY_H
+#ifndef RUBY_RUBY_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_RUBY_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Thu Jun 10 14:26:32 JST 1993
+ * @copyright Copyright (C) 1993-2008 Yukihiro Matsumoto
+ * @copyright Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
+ * @copyright Copyright (C) 2000 Information-technology Promotion Agency, Japan
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#ifdef HAVE_INTRINSICS_H
diff --git a/include/ruby/subst.h b/include/ruby/subst.h
index 1f0e6db5a4..cf48a3909c 100644
--- a/include/ruby/subst.h
+++ b/include/ruby/subst.h
@@ -1,5 +1,13 @@
-#ifndef RUBY_SUBST_H
+#ifndef RUBY_SUBST_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_SUBST_H 1
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#undef snprintf
#undef vsnprintf
diff --git a/include/ruby/thread.h b/include/ruby/thread.h
index 95e2c07ee5..8ff3ae77aa 100644
--- a/include/ruby/thread.h
+++ b/include/ruby/thread.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- thread.h -
-
- $Author: matz $
- created at: Tue Jul 10 17:35:43 JST 2012
-
- Copyright (C) 2007 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_THREAD_H
+#ifndef RUBY_THREAD_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_THREAD_H 1
-
+/**
+ * @file
+ * @author $Author: matz $
+ * @date Tue Jul 10 17:35:43 JST 2012
+ * @copyright Copyright (C) 2007 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/intern.h"
#include "ruby/3/dllexport.h"
diff --git a/include/ruby/thread_native.h b/include/ruby/thread_native.h
index 92405a6e88..0285c8ff40 100644
--- a/include/ruby/thread_native.h
+++ b/include/ruby/thread_native.h
@@ -1,16 +1,15 @@
-/**********************************************************************
-
- thread_native.h -
-
- $Author: ko1 $
- created at: Wed May 14 19:37:31 2014
-
- Copyright (C) 2014 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_THREAD_NATIVE_H
+#ifndef RUBY_THREAD_NATIVE_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_THREAD_NATIVE_H 1
+/**
+ * @file
+ * @author $Author: ko1 $
+ * @date Wed May 14 19:37:31 2014
+ * @copyright Copyright (C) 2014 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
/*
* This file contains wrapper APIs for native thread primitives
diff --git a/include/ruby/util.h b/include/ruby/util.h
index d5c735c97e..ff089bb426 100644
--- a/include/ruby/util.h
+++ b/include/ruby/util.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- util.h -
-
- $Author$
- created at: Thu Mar 9 11:55:53 JST 1995
-
- Copyright (C) 1993-2007 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_UTIL_H
+#ifndef RUBY_UTIL_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_UTIL_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Thu Mar 9 11:55:53 JST 1995
+ * @copyright Copyright (C) 1993-2007 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#include "ruby/3/dllexport.h"
#include "ruby/defines.h"
diff --git a/include/ruby/version.h b/include/ruby/version.h
index c560021b75..588e32021e 100644
--- a/include/ruby/version.h
+++ b/include/ruby/version.h
@@ -1,17 +1,17 @@
-/**********************************************************************
-
- ruby/version.h -
-
- $Author$
- created at: Wed May 13 12:56:56 JST 2009
-
- Copyright (C) 1993-2009 Yukihiro Matsumoto
- Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
- Copyright (C) 2000 Information-technology Promotion Agency, Japan
-
-**********************************************************************/
-
-/*
+#ifndef RUBY_VERSION_H /*-*-C++-*-vi:se ft=cpp:*/
+#define RUBY_VERSION_H 1
+/**
+ * @file
+ * @author $Author$
+ * @date Wed May 13 12:56:56 JST 2009
+ * @copyright Copyright (C) 1993-2009 Yukihiro Matsumoto
+ * @copyright Copyright (C) 2000 Network Applied Communication Laboratory, Inc.
+ * @copyright Copyright (C) 2000 Information-technology Promotion Agency, Japan
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ *
* This file contains only
* - never-changeable information, and
* - interfaces accessible from extension libraries.
@@ -20,9 +20,6 @@
* check the features with mkmf.rb instead.
*/
-#ifndef RUBY_VERSION_H
-#define RUBY_VERSION_H 1
-
/* The origin. */
#define RUBY_AUTHOR "Yukihiro Matsumoto"
#define RUBY_BIRTH_YEAR 1993
diff --git a/include/ruby/vm.h b/include/ruby/vm.h
index 10f6224985..79d0b6c846 100644
--- a/include/ruby/vm.h
+++ b/include/ruby/vm.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- ruby/vm.h -
-
- $Author$
- created at: Sat May 31 15:17:36 2008
-
- Copyright (C) 2008 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_VM_H
+#ifndef RUBY_VM_H /*-*-C++-*-vi:se ft=cpp:*/
#define RUBY_VM_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Sat May 31 15:17:36 2008
+ * @copyright Copyright (C) 2008 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/dllexport.h"
RUBY3_SYMBOL_EXPORT_BEGIN()
diff --git a/internal.h b/internal.h
index 3c65164f3d..c39fa18174 100644
--- a/internal.h
+++ b/internal.h
@@ -1,17 +1,15 @@
-/**********************************************************************
-
- internal.h -
-
- $Author$
- created at: Tue May 17 11:42:20 JST 2011
-
- Copyright (C) 2011 Yukihiro Matsumoto
-
-**********************************************************************/
-
-#ifndef RUBY_INTERNAL_H
+#ifndef RUBY_INTERNAL_H /*-*-C-*-vi:se ft=c:*/
#define RUBY_INTERNAL_H 1
-
+/**
+ * @file
+ * @author $Author$
+ * @date Tue May 17 11:42:20 JST 2011
+ * @copyright Copyright (C) 2011 Yukihiro Matsumoto
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/3/config.h"
#ifdef __cplusplus
diff --git a/internal/array.h b/internal/array.h
index b566f48435..8f346aad63 100644
--- a/internal/array.h
+++ b/internal/array.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_ARRAY_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_ARRAY_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Array.
*/
-#ifndef INTERNAL_ARRAY_H
-#define INTERNAL_ARRAY_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "internal/static_assert.h" /* for STATIC_ASSERT */
diff --git a/internal/bignum.h b/internal/bignum.h
index a49ecd8c0e..6850a14399 100644
--- a/internal/bignum.h
+++ b/internal/bignum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_BIGNUM_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_BIGNUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Bignums.
*/
-#ifndef INTERNAL_BIGNUM_H
-#define INTERNAL_BIGNUM_H
#include "ruby/3/config.h" /* for HAVE_LIBGMP */
#include <stddef.h> /* for size_t */
diff --git a/internal/bits.h b/internal/bits.h
index 28c668dd21..1dc5531d8c 100644
--- a/internal/bits.h
+++ b/internal/bits.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_BITS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_BITS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -24,8 +26,6 @@
* @see https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_rotr64
* @see https://stackoverflow.com/a/776523
*/
-#ifndef INTERNAL_BITS_H
-#define INTERNAL_BITS_H
#include "ruby/3/config.h"
#include <limits.h> /* for CHAR_BITS */
#include <stdint.h> /* for uintptr_t */
diff --git a/internal/class.h b/internal/class.h
index f5df0a6a70..7b9400b38b 100644
--- a/internal/class.h
+++ b/internal/class.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_CLASS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_CLASS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Class.
*/
-#ifndef INTERNAL_CLASS_H
-#define INTERNAL_CLASS_H
#include "id_table.h" /* for struct rb_id_table */
#include "internal/gc.h" /* for RB_OBJ_WRITE */
#include "internal/serial.h" /* for rb_serial_t */
diff --git a/internal/compar.h b/internal/compar.h
index aba1cdf25e..888a3b5e1e 100644
--- a/internal/compar.h
+++ b/internal/compar.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_COMPAR_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_COMPAR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Comparable.
*/
-#ifndef INTERNAL_COMPAR_H
-#define INTERNAL_COMPAR_H
#include "internal/vm.h" /* for rb_method_basic_definition_p */
#define STRING_P(s) (RB_TYPE_P((s), T_STRING) && CLASS_OF(s) == rb_cString)
diff --git a/internal/compile.h b/internal/compile.h
index 468d3d0a6b..435fbfe22a 100644
--- a/internal/compile.h
+++ b/internal/compile.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_COMPILE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_COMPILE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for the compiler.
*/
-#ifndef INTERNAL_COMPILE_H
-#define INTERNAL_COMPILE_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "ruby/ruby.h" /* for rb_event_flag_t */
diff --git a/internal/compilers.h b/internal/compilers.h
index 591b5de9ed..10b119b61b 100644
--- a/internal/compilers.h
+++ b/internal/compilers.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_COMPILERS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_COMPILERS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header absorbing C compipler differences.
*/
-#ifndef INTERNAL_COMPILERS_H
-#define INTERNAL_COMPILERS_H
#include "ruby/3/compiler_since.h"
#include "ruby/3/has/attribute.h"
#include "ruby/3/has/builtin.h"
diff --git a/internal/complex.h b/internal/complex.h
index f435f143ef..afabd36fbc 100644
--- a/internal/complex.h
+++ b/internal/complex.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_COMPLEX_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_COMPLEX_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,9 +9,7 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Complex.
*/
-#ifndef INTERNAL_COMPLEX_H
-#define INTERNAL_COMPLEX_H
-#include "ruby/ruby.h" /* for struct RBasic */
+#include "ruby/3/value.h" /* for struct RBasic */
struct RComplex {
struct RBasic basic;
diff --git a/internal/cont.h b/internal/cont.h
index 9b7dd9a9e4..81874aa5c7 100644
--- a/internal/cont.h
+++ b/internal/cont.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_CONT_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_CONT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Fiber.
*/
-#ifndef INTERNAL_CONT_H
-#define INTERNAL_CONT_H
#include "ruby/ruby.h" /* for VALUE */
struct rb_thread_struct; /* in vm_core.h */
diff --git a/internal/dir.h b/internal/dir.h
index fa165b67bd..ffbdb25208 100644
--- a/internal/dir.h
+++ b/internal/dir.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_DIR_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_DIR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Dir.
*/
-#ifndef INTERNAL_DIR_H
-#define INTERNAL_DIR_H
#include "ruby/ruby.h" /* for VALUE */
/* dir.c */
diff --git a/internal/enc.h b/internal/enc.h
index 79a52b94a8..0afc74db5d 100644
--- a/internal/enc.h
+++ b/internal/enc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_ENC_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_ENC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Encoding.
*/
-#ifndef INTERNAL_ENC_H
-#define INTERNAL_ENC_H
#include "ruby/encoding.h" /* for rb_encoding */
/* us_ascii.c */
diff --git a/internal/encoding.h b/internal/encoding.h
index 62a35093e7..af236daeaf 100644
--- a/internal/encoding.h
+++ b/internal/encoding.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_ENCODING_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_ENCODING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Encoding.
*/
-#ifndef INTERNAL_ENCODING_H
-#define INTERNAL_ENCODING_H
#include "ruby/ruby.h" /* for ID */
#include "ruby/encoding.h" /* for rb_encoding */
diff --git a/internal/enum.h b/internal/enum.h
index d14a7b367a..50890f0c9f 100644
--- a/internal/enum.h
+++ b/internal/enum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_ENUM_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_ENUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Enumerable.
*/
-#ifndef INTERNAL_ENUM_H
-#define INTERNAL_ENUM_H
#include "ruby/ruby.h" /* for VALUE */
/* enum.c */
diff --git a/internal/enumerator.h b/internal/enumerator.h
index f9b3fdac4f..2e20c37d9e 100644
--- a/internal/enumerator.h
+++ b/internal/enumerator.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_ENUMERATOR_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_ENUMERATOR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Enumerator.
*/
-#ifndef INTERNAL_ENUMERATOR_H
-#define INTERNAL_ENUMERATOR_H
#include "ruby/ruby.h" /* for VALUE */
#include "ruby/intern.h" /* for rb_enumerator_size_func */
diff --git a/internal/error.h b/internal/error.h
index 5b44f25624..5a9b6cd834 100644
--- a/internal/error.h
+++ b/internal/error.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_ERROR_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_ERROR_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Exception.
*/
-#ifndef INTERNAL_ERROR_H
-#define INTERNAL_ERROR_H
#include "ruby/3/config.h"
#include <stdarg.h> /* for va_list */
#include "internal/string.h" /* for rb_fstring_cstr */
diff --git a/internal/eval.h b/internal/eval.h
index 75c07692d4..8dae76b6f8 100644
--- a/internal/eval.h
+++ b/internal/eval.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_EVAL_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_EVAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -9,8 +11,6 @@
* @note There also is eval_intern.h, which is evaluator's internal
* header (related to this file, but not the same role).
*/
-#ifndef INTERNAL_EVAL_H
-#define INTERNAL_EVAL_H
#include "ruby/ruby.h" /* for ID */
#define id_signo ruby_static_id_signo
diff --git a/internal/file.h b/internal/file.h
index 4b87d0dddf..a93c1392f0 100644
--- a/internal/file.h
+++ b/internal/file.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_FILE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_FILE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for File.
*/
-#ifndef INTERNAL_FILE_H
-#define INTERNAL_FILE_H
#include "ruby/ruby.h" /* for VALUE */
#include "ruby/encoding.h" /* for rb_encodinng */
diff --git a/internal/fixnum.h b/internal/fixnum.h
index f6313855eb..5d081488f7 100644
--- a/internal/fixnum.h
+++ b/internal/fixnum.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_FIXNUM_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_FIXNUM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Fixnums.
*/
-#ifndef INTERNAL_FIXNUM_H
-#define INTERNAL_FIXNUM_H
#include "ruby/3/config.h" /* for HAVE_LONG_LONG */
#include <limits.h> /* for CHAR_BIT */
#include "internal/compilers.h" /* for __has_builtin */
diff --git a/internal/gc.h b/internal/gc.h
index 451f461de0..fb4b1bbde9 100644
--- a/internal/gc.h
+++ b/internal/gc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_GC_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_GC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for GC.
*/
-#ifndef INTERNAL_GC_H
-#define INTERNAL_GC_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
diff --git a/internal/hash.h b/internal/hash.h
index 4c2e663a65..f33d225953 100644
--- a/internal/hash.h
+++ b/internal/hash.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_HASH_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_HASH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Hash.
*/
-#ifndef INTERNAL_HASH_H
-#define INTERNAL_HASH_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "ruby/3/stdbool.h" /* for bool */
diff --git a/internal/imemo.h b/internal/imemo.h
index 3475606e90..0fbbac3a4c 100644
--- a/internal/imemo.h
+++ b/internal/imemo.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_IMEMO_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_IMEMO_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief IMEMO: Internal memo object.
*/
-#ifndef INTERNAL_IMEMO_H
-#define INTERNAL_IMEMO_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "internal/array.h" /* for rb_ary_tmp_new_fill */
diff --git a/internal/inits.h b/internal/inits.h
index e0d417455d..680c9cc1a5 100644
--- a/internal/inits.h
+++ b/internal/inits.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_INITS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_INITS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header aggregating init functions.
*/
-#ifndef INTERNAL_INITS_H
-#define INTERNAL_INITS_H
/* class.c */
void Init_class_hierarchy(void);
diff --git a/internal/io.h b/internal/io.h
index 6578d0b683..b184cec439 100644
--- a/internal/io.h
+++ b/internal/io.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_IO_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_IO_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for IO.
*/
-#ifndef INTERNAL_IO_H
-#define INTERNAL_IO_H
#include "ruby/ruby.h" /* for VALUE */
#include "ruby/io.h" /* for rb_io_t */
diff --git a/internal/load.h b/internal/load.h
index febf9eb200..37c1dee351 100644
--- a/internal/load.h
+++ b/internal/load.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_LOAD_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_LOAD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for require.
*/
-#ifndef INTERNAL_LOAD_H
-#define INTERNAL_LOAD_H
#include "ruby/ruby.h" /* for VALUE */
/* load.c */
diff --git a/internal/loadpath.h b/internal/loadpath.h
index b975d4992d..f89f6694cd 100644
--- a/internal/loadpath.h
+++ b/internal/loadpath.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_LOADPATH_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_LOADPATH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for $LOAD_PATH.
*/
-#ifndef INTERNAL_LOADPATH_H
-#define INTERNAL_LOADPATH_H
/* loadpath.c */
extern const char ruby_exec_prefix[];
diff --git a/internal/math.h b/internal/math.h
index bbf4f798dd..cd8d553790 100644
--- a/internal/math.h
+++ b/internal/math.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_MATH_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_MATH_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Math.
*/
-#ifndef INTERNAL_MATH_H
-#define INTERNAL_MATH_H
#include "ruby/ruby.h" /* for VALUE */
/* math.c */
diff --git a/internal/missing.h b/internal/missing.h
index 866b8aa472..cff5f94729 100644
--- a/internal/missing.h
+++ b/internal/missing.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_MISSING_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_MISSING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header corresponding missing.
*/
-#ifndef INTERNAL_MISSING_H
-#define INTERNAL_MISSING_H
#include "ruby/3/config.h" /* for HAVE_SETPROCTITLE */
/* missing/setproctitle.c */
diff --git a/internal/mjit.h b/internal/mjit.h
index 47f620bc39..0f8540592b 100644
--- a/internal/mjit.h
+++ b/internal/mjit.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_MJIT_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_MJIT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for MJIT.
*/
-#ifndef INTERNAL_MJIT_H
-#define INTERNAL_MJIT_H
#include "ruby/3/stdbool.h" /* for bool */
#include "ruby/ruby.h" /* for VALUE */
diff --git a/internal/numeric.h b/internal/numeric.h
index cd5347f5d2..219e739e7d 100644
--- a/internal/numeric.h
+++ b/internal/numeric.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_NUMERIC_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_NUMERIC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Numeric.
*/
-#ifndef INTERNAL_NUMERIC_H
-#define INTERNAL_NUMERIC_H
#include "internal/bignum.h" /* for BIGNUM_POSITIVE_P */
#include "internal/bits.h" /* for RUBY_BIT_ROTL */
#include "internal/fixnum.h" /* for FIXNUM_POSITIVE_P */
diff --git a/internal/object.h b/internal/object.h
index a2d053bbb4..a05abbf971 100644
--- a/internal/object.h
+++ b/internal/object.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_OBJECT_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_OBJECT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Object.
*/
-#ifndef INTERNAL_OBJECT_H
-#define INTERNAL_OBJECT_H
#include "ruby/ruby.h" /* for VALUE */
/* object.c */
diff --git a/internal/parse.h b/internal/parse.h
index bcfe0c2d0e..a37a39f84d 100644
--- a/internal/parse.h
+++ b/internal/parse.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_PARSE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_PARSE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for the parser.
*/
-#ifndef INTERNAL_PARSE_H
-#define INTERNAL_PARSE_H
#include "ruby/ruby.h" /* for VALUE */
struct rb_iseq_struct; /* in vm_core.h */
diff --git a/internal/proc.h b/internal/proc.h
index aebaf28fb0..3d4c611584 100644
--- a/internal/proc.h
+++ b/internal/proc.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_PROC_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_PROC_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Proc.
*/
-#ifndef INTERNAL_PROC_H
-#define INTERNAL_PROC_H
#include "ruby/ruby.h" /* for rb_block_call_func_t */
#include "ruby/st.h" /* for st_index_t */
struct rb_block; /* in vm_core.h */
diff --git a/internal/process.h b/internal/process.h
index 5c8af817a8..b47f857bb4 100644
--- a/internal/process.h
+++ b/internal/process.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_PROCESS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_PROCESS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Process.
*/
-#ifndef INTERNAL_PROCESS_H
-#define INTERNAL_PROCESS_H
#include "ruby/3/config.h" /* for rb_pid_t */
#include <stddef.h> /* for size_t */
diff --git a/internal/random.h b/internal/random.h
index 008b644700..a92e65b8ba 100644
--- a/internal/random.h
+++ b/internal/random.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_RANDOM_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_RANDOM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Random.
*/
-#ifndef INTERNAL_RANDOM_H
-#define INTERNAL_RANDOM_H
#include <stddef.h> /* for size_t */
/* random.c */
diff --git a/internal/range.h b/internal/range.h
index 948072ebf0..0b60f42298 100644
--- a/internal/range.h
+++ b/internal/range.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_RANGE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_RANGE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Range.
*/
-#ifndef INTERNAL_RANGE_H
-#define INTERNAL_RANGE_H
#include "internal/struct.h" /* for RSTRUCT */
/* range.c */
diff --git a/internal/rational.h b/internal/rational.h
index 1e64b4a799..8006470df7 100644
--- a/internal/rational.h
+++ b/internal/rational.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_RATIONAL_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_RATIONAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Rational.
*/
-#ifndef INTERNAL_RATIONAL_H
-#define INTERNAL_RATIONAL_H
#include "ruby/3/config.h" /* for HAVE_LIBGMP */
#include "ruby/ruby.h" /* for struct RBasic */
#include "internal/gc.h" /* for RB_OBJ_WRITE */
diff --git a/internal/re.h b/internal/re.h
index b769ce30b3..f771c4e8a0 100644
--- a/internal/re.h
+++ b/internal/re.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_RE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_RE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Regexp.
*/
-#ifndef INTERNAL_RE_H
-#define INTERNAL_RE_H
#include "ruby/3/stdbool.h" /* for bool */
#include "ruby/ruby.h" /* for VALUE */
diff --git a/internal/sanitizers.h b/internal/sanitizers.h
index 7ef5959916..81ee7e3ea5 100644
--- a/internal/sanitizers.h
+++ b/internal/sanitizers.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_SANITIZERS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_SANITIZERS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for ASAN / MSAN / etc.
*/
-#ifndef INTERNAL_SANITIZERS_H
-#define INTERNAL_SANITIZERS_H
#include "ruby/3/config.h"
#include "internal/compilers.h" /* for __has_feature */
diff --git a/internal/serial.h b/internal/serial.h
index 143d7c6819..518cef4e93 100644
--- a/internal/serial.h
+++ b/internal/serial.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_SERIAL_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_SERIAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for rb_serial_t.
*/
-#ifndef INTERNAL_SERIAL_H
-#define INTERNAL_SERIAL_H
#include "ruby/3/config.h" /* for HAVE_LONG_LONG */
#include "ruby/defines.h" /* for LONG_LONG */
diff --git a/internal/signal.h b/internal/signal.h
index 352052550f..6b4672f15b 100644
--- a/internal/signal.h
+++ b/internal/signal.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_SIGNAL_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_SIGNAL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for SignalException.
*/
-#ifndef INTERNAL_SIGNAL_H
-#define INTERNAL_SIGNAL_H
/* signal.c */
extern int ruby_enable_coredump;
diff --git a/internal/static_assert.h b/internal/static_assert.h
index 7b20b252d2..cc6a59713f 100644
--- a/internal/static_assert.h
+++ b/internal/static_assert.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_STATIC_ASSERT_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_STATIC_ASSERT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -11,3 +13,5 @@
#ifndef STATIC_ASSERT
# define STATIC_ASSERT RUBY3_STATIC_ASSERT
#endif
+
+#endif /* INTERNAL_STATIC_ASSERT_H */
diff --git a/internal/string.h b/internal/string.h
index 7635fa9ebf..f550719f96 100644
--- a/internal/string.h
+++ b/internal/string.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_STRING_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_STRING_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for String.
*/
-#ifndef INTERNAL_STRING_H
-#define INTERNAL_STRING_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "internal/compilers.h" /* for __has_builtin */
diff --git a/internal/struct.h b/internal/struct.h
index 66efbf3712..2fdd6631de 100644
--- a/internal/struct.h
+++ b/internal/struct.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_STRUCT_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_STRUCT_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Struct.
*/
-#ifndef INTERNAL_STRUCT_H
-#define INTERNAL_STRUCT_H
#include "ruby/3/stdbool.h" /* for bool */
#include "internal/gc.h" /* for RB_OBJ_WRITE */
#include "ruby/ruby.h" /* for struct RBasic */
diff --git a/internal/symbol.h b/internal/symbol.h
index 8a354ffbab..691df66228 100644
--- a/internal/symbol.h
+++ b/internal/symbol.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_SYMBOL_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_SYMBOL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Symbol.
*/
-#ifndef INTERNAL_SYMBOL_H
-#define INTERNAL_SYMBOL_H
#include "ruby/ruby.h" /* for VALUE */
#include "ruby/encoding.h" /* for rb_encoding */
#include "internal/compilers.h" /* for __has_builtin */
diff --git a/internal/thread.h b/internal/thread.h
index b5cae53e6d..ac09923be0 100644
--- a/internal/thread.h
+++ b/internal/thread.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_THREAD_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_THREAD_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Thread.
*/
-#ifndef INTERNAL_THREAD_H
-#define INTERNAL_THREAD_H
#include "ruby/ruby.h" /* for VALUE */
#include "ruby/intern.h" /* for rb_blocking_function_t */
diff --git a/internal/time.h b/internal/time.h
index 3566dfe564..d7dc34e3dd 100644
--- a/internal/time.h
+++ b/internal/time.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_TIME_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_TIME_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Time.
*/
-#ifndef INTERNAL_TIME_H
-#define INTERNAL_TIME_H
#include "ruby/3/config.h" /* for SIGNEDNESS_OF_TIME_T */
#include "internal/bits.h" /* for SIGNED_INTEGER_MAX */
#include "ruby/ruby.h" /* for VALUE */
diff --git a/internal/transcode.h b/internal/transcode.h
index 5f0a7845b7..452e13a1a6 100644
--- a/internal/transcode.h
+++ b/internal/transcode.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_TRANSCODE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_TRANSCODE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for Encoding::Converter.
*/
-#ifndef INTERNAL_TRANSCODE_H
-#define INTERNAL_TRANSCODE_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "ruby/ruby.h" /* for VALUE */
diff --git a/internal/util.h b/internal/util.h
index ba35c789a2..fdb3f3020a 100644
--- a/internal/util.h
+++ b/internal/util.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_UTIL_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_UTIL_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -8,8 +10,6 @@
* @brief Internal header corresponding util.c.
* @warning DO NOT ADD RANDOM GARBAGE HERE THIS FILE IS FOR util.c
*/
-#ifndef INTERNAL_UTIL_H /* -*- C -*- */
-#define INTERNAL_UTIL_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
diff --git a/internal/variable.h b/internal/variable.h
index fb0b4a47e8..a3b8f7963d 100644
--- a/internal/variable.h
+++ b/internal/variable.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_VARIABLE_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_VARIABLE_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for variables.
*/
-#ifndef INTERNAL_VARIABLE_H
-#define INTERNAL_VARIABLE_H
#include "ruby/3/config.h"
#include <stddef.h> /* for size_t */
#include "constant.h" /* for rb_const_entry_t */
diff --git a/internal/vm.h b/internal/vm.h
index 85fa82332b..1c76913e5c 100644
--- a/internal/vm.h
+++ b/internal/vm.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_VM_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_VM_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header for RubyVM.
*/
-#ifndef INTERNAL_VM_H
-#define INTERNAL_VM_H
#include "ruby/3/stdbool.h" /* for bool */
#include "internal/serial.h" /* for rb_serial_t */
#include "internal/static_assert.h" /* for STATIC_ASSERT */
diff --git a/internal/warnings.h b/internal/warnings.h
index a1705a6867..ae41dcba23 100644
--- a/internal/warnings.h
+++ b/internal/warnings.h
@@ -1,4 +1,6 @@
-/** \noop-*-C-*-vi:ft=c
+#ifndef INTERNAL_WARNINGS_H /*-*-C-*-vi:se ft=c:*/
+#define INTERNAL_WARNINGS_H
+/**
* @file
* @author Ruby developers <ruby-core@ruby-lang.org>
* @copyright This file is a part of the programming language Ruby.
@@ -7,8 +9,6 @@
* file COPYING are met. Consult the file for details.
* @brief Internal header to suppres / mandate warnings.
*/
-#ifndef INTERNAL_WARNINGS_H
-#define INTERNAL_WARNINGS_H
#include "ruby/3/warning_push.h"
#define COMPILER_WARNING_PUSH RUBY3_WARNING_PUSH()
#define COMPILER_WARNING_POP RUBY3_WARNING_POP()
diff --git a/iseq.h b/iseq.h
index 8e4b796be7..4e427f557c 100644
--- a/iseq.h
+++ b/iseq.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_ISEQ_H
+#define RUBY_ISEQ_H 1
/**********************************************************************
iseq.h -
@@ -8,9 +10,6 @@
Copyright (C) 2004-2008 Koichi Sasada
**********************************************************************/
-
-#ifndef RUBY_ISEQ_H
-#define RUBY_ISEQ_H 1
#include "internal/gc.h"
#include "vm_core.h"
diff --git a/method.h b/method.h
index 01a25d368c..3aa4deb2f8 100644
--- a/method.h
+++ b/method.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_METHOD_H
+#define RUBY_METHOD_H 1
/**********************************************************************
method.h -
@@ -8,8 +10,6 @@
Copyright (C) 2009 Koichi Sasada
**********************************************************************/
-#ifndef RUBY_METHOD_H
-#define RUBY_METHOD_H 1
#include "internal.h"
#include "internal/imemo.h"
diff --git a/missing/crypt.h b/missing/crypt.h
index 7c2642f593..ff135eee93 100644
--- a/missing/crypt.h
+++ b/missing/crypt.h
@@ -1,3 +1,5 @@
+#ifndef CRYPT_H
+#define CRYPT_H 1
/*
* Copyright (c) 1989, 1993
* The Regents of the University of California. All rights reserved.
@@ -30,9 +32,6 @@
* SUCH DAMAGE.
*/
-#ifndef CRYPT_H
-#define CRYPT_H 1
-
/* ===== Configuration ==================== */
#ifdef CHAR_BITS
diff --git a/missing/file.h b/missing/file.h
index 241d716563..5e25c4761c 100644
--- a/missing/file.h
+++ b/missing/file.h
@@ -1,7 +1,6 @@
-/* This is file FILE.H */
-
#ifndef _FILE_H_
#define _FILE_H_
+/* This is file FILE.H */
#include <fcntl.h>
diff --git a/mjit.h b/mjit.h
index f6bbc45a3c..94e0b7bd85 100644
--- a/mjit.h
+++ b/mjit.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_MJIT_H
+#define RUBY_MJIT_H 1
/**********************************************************************
mjit.h - Interface to MRI method JIT compiler for Ruby's main thread
@@ -6,9 +8,6 @@
**********************************************************************/
-#ifndef RUBY_MJIT_H
-#define RUBY_MJIT_H 1
-
#include "ruby/3/config.h"
#if USE_MJIT
diff --git a/node.h b/node.h
index 217b344550..40a5dd5de8 100644
--- a/node.h
+++ b/node.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_NODE_H
+#define RUBY_NODE_H 1
/**********************************************************************
node.h -
@@ -9,9 +11,6 @@
**********************************************************************/
-#ifndef RUBY_NODE_H
-#define RUBY_NODE_H 1
-
#if defined(__cplusplus)
extern "C" {
#if 0
diff --git a/ruby_assert.h b/ruby_assert.h
index 139256fed8..52b56771cc 100644
--- a/ruby_assert.h
+++ b/ruby_assert.h
@@ -1,3 +1,13 @@
+#ifndef RUBY_TOPLEVEL_ASSERT_H /*-*-C-*-vi:se ft=c:*/
+#define RUBY_TOPLEVEL_ASSERT_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
#include "ruby/assert.h"
#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
@@ -8,3 +18,4 @@
#undef assert
#define assert RUBY_ASSERT
#endif
+#endif /* RUBY_TOPLEVEL_ASSERT_H */
diff --git a/symbol.h b/symbol.h
index 45cf1b21c9..dee541f347 100644
--- a/symbol.h
+++ b/symbol.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_SYMBOL_H
+#define RUBY_SYMBOL_H 1
/**********************************************************************
symbol.h -
@@ -9,9 +11,6 @@
**********************************************************************/
-#ifndef RUBY_SYMBOL_H
-#define RUBY_SYMBOL_H 1
-
#include "id.h"
#include "ruby/encoding.h"
diff --git a/thread_pthread.h b/thread_pthread.h
index f2b7e598f7..27b22103c6 100644
--- a/thread_pthread.h
+++ b/thread_pthread.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_THREAD_PTHREAD_H
+#define RUBY_THREAD_PTHREAD_H
/**********************************************************************
thread_pthread.h -
@@ -8,9 +10,6 @@
**********************************************************************/
-#ifndef RUBY_THREAD_PTHREAD_H
-#define RUBY_THREAD_PTHREAD_H
-
#ifdef HAVE_PTHREAD_NP_H
#include <pthread_np.h>
#endif
diff --git a/thread_win32.h b/thread_win32.h
index 60083da0a1..4fd5f8b10f 100644
--- a/thread_win32.h
+++ b/thread_win32.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_THREAD_WIN32_H
+#define RUBY_THREAD_WIN32_H
/**********************************************************************
thread_win32.h -
@@ -9,8 +11,6 @@
**********************************************************************/
/* interface */
-#ifndef RUBY_THREAD_WIN32_H
-#define RUBY_THREAD_WIN32_H
# ifdef __CYGWIN__
# undef _WIN32
@@ -33,4 +33,3 @@ typedef struct rb_global_vm_lock_struct {
} rb_global_vm_lock_t;
#endif /* RUBY_THREAD_WIN32_H */
-
diff --git a/transcode_data.h b/transcode_data.h
index 2007eb06d3..9455ec93c9 100644
--- a/transcode_data.h
+++ b/transcode_data.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_TRANSCODE_DATA_H
+#define RUBY_TRANSCODE_DATA_H 1
/**********************************************************************
transcode_data.h -
@@ -11,9 +13,6 @@
#include "ruby/ruby.h"
-#ifndef RUBY_TRANSCODE_DATA_H
-#define RUBY_TRANSCODE_DATA_H 1
-
RUBY_SYMBOL_EXPORT_BEGIN
#define WORDINDEX_SHIFT_BITS 2
diff --git a/transient_heap.h b/transient_heap.h
index 7b5c42ca8e..363e7a2da2 100644
--- a/transient_heap.h
+++ b/transient_heap.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_TRANSIENT_HEAP_H
+#define RUBY_TRANSIENT_HEAP_H
/**********************************************************************
transient_heap.h - declarations of transient_heap related APIs.
@@ -6,9 +8,6 @@
**********************************************************************/
-#ifndef RUBY_TRANSIENT_HEAP_H
-#define RUBY_TRANSIENT_HEAP_H
-
#include "internal.h"
#if USE_TRANSIENT_HEAP
diff --git a/variable.h b/variable.h
index 67fe480149..ec62023a8b 100644
--- a/variable.h
+++ b/variable.h
@@ -1,3 +1,13 @@
+#ifndef RUBY_TOPLEVEL_VARIABLE_H /*-*-C-*-vi:se ft=c:*/
+#define RUBY_TOPLEVEL_VARIABLE_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
/* per-object */
@@ -7,3 +17,5 @@ struct gen_ivtbl {
};
struct st_table *rb_ivar_generic_ivtbl(void);
+
+#endif /* RUBY_TOPLEVEL_VARIABLE_H */
diff --git a/version.h b/version.h
index 6868ea5067..5f1bd21d5f 100644
--- a/version.h
+++ b/version.h
@@ -1,3 +1,13 @@
+#ifndef RUBY_TOPLEVEL_VERSION_H /*-*-C-*-vi:se ft=c:*/
+#define RUBY_TOPLEVEL_VERSION_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
# define RUBY_VERSION_MAJOR RUBY_API_VERSION_MAJOR
# define RUBY_VERSION_MINOR RUBY_API_VERSION_MINOR
#define RUBY_VERSION_TEENY 0
@@ -75,3 +85,5 @@
RUBY_BIRTH_YEAR_STR"-" \
RUBY_RELEASE_YEAR_STR" " \
RUBY_AUTHOR
+
+#endif /* RUBY_TOPLEVEL_VERSION_H */
diff --git a/vm_callinfo.h b/vm_callinfo.h
index b3de14dcab..8b575f11c6 100644
--- a/vm_callinfo.h
+++ b/vm_callinfo.h
@@ -1,3 +1,14 @@
+#ifndef RUBY_VM_CALLINFO_H /*-*-C-*-vi:se ft=c:*/
+#define RUBY_VM_CALLINFO_H
+/**
+ * @file
+ * @author Ruby developers <ruby-core@ruby-lang.org>
+ * @copyright This file is a part of the programming language Ruby.
+ * Permission is hereby granted, to either redistribute and/or
+ * modify this file, provided that the conditions mentioned in the
+ * file COPYING are met. Consult the file for details.
+ */
+
#include "debug_counter.h"
enum vm_call_flag_bits {
@@ -426,3 +437,5 @@ vm_ccs_p(const struct rb_class_cc_entries *ccs)
// gc.c
void rb_vm_ccs_free(struct rb_class_cc_entries *ccs);
+
+#endif /* RUBY_VM_CALLINFO_H */
diff --git a/vm_core.h b/vm_core.h
index 9186ab3146..47455a6f7b 100644
--- a/vm_core.h
+++ b/vm_core.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_VM_CORE_H
+#define RUBY_VM_CORE_H
/**********************************************************************
vm_core.h -
@@ -9,9 +11,6 @@
**********************************************************************/
-#ifndef RUBY_VM_CORE_H
-#define RUBY_VM_CORE_H
-
/*
* Enable check mode.
* 1: enable local assertions.
diff --git a/vm_debug.h b/vm_debug.h
index 8e0350d147..93ee2e4297 100644
--- a/vm_debug.h
+++ b/vm_debug.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_DEBUG_H
+#define RUBY_DEBUG_H
/**********************************************************************
vm_debug.h - YARV Debug function interface
@@ -9,9 +11,6 @@
**********************************************************************/
-#ifndef RUBY_DEBUG_H
-#define RUBY_DEBUG_H
-
#include "ruby/ruby.h"
#include "node.h"
diff --git a/vm_exec.h b/vm_exec.h
index 86a70fe8ad..1be3f64576 100644
--- a/vm_exec.h
+++ b/vm_exec.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_VM_EXEC_H
+#define RUBY_VM_EXEC_H
/**********************************************************************
vm.h -
@@ -9,9 +11,6 @@
**********************************************************************/
-#ifndef RUBY_VM_EXEC_H
-#define RUBY_VM_EXEC_H
-
typedef long OFFSET;
typedef unsigned long lindex_t;
typedef VALUE GENTRY;
diff --git a/vm_insnhelper.h b/vm_insnhelper.h
index e20a6effa4..ca8f4b02b6 100644
--- a/vm_insnhelper.h
+++ b/vm_insnhelper.h
@@ -1,3 +1,5 @@
+#ifndef RUBY_INSNHELPER_H
+#define RUBY_INSNHELPER_H
/**********************************************************************
insnhelper.h - helper macros to implement each instructions
@@ -9,9 +11,6 @@
**********************************************************************/
-#ifndef RUBY_INSNHELPER_H
-#define RUBY_INSNHELPER_H
-
RUBY_SYMBOL_EXPORT_BEGIN
RUBY_EXTERN VALUE ruby_vm_const_missing_count;
diff --git a/vm_opts.h b/vm_opts.h
index 3df9ce837b..02d60e71fd 100644
--- a/vm_opts.h
+++ b/vm_opts.h
@@ -1,4 +1,5 @@
-/*-*-c-*-*/
+#ifndef RUBY_VM_OPTS_H/*-*-c-*-*/
+#define RUBY_VM_OPTS_H
/**********************************************************************
vm_opts.h - VM optimize option
@@ -9,10 +10,6 @@
**********************************************************************/
-
-#ifndef RUBY_VM_OPTS_H
-#define RUBY_VM_OPTS_H
-
/* Compile options.
* You can change these options at runtime by VM::CompileOption.
* Following definitions are default values.