summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2022-02-19 16:02:29 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2022-02-19 23:32:52 +0900
commit131154f878b7f63277bd97520500414047a814fa (patch)
tree86550107529a3a5357517b0679c37bc1cb6705ff /include
parent6e6ee1e6b3ce70a325043c502918c1eb9529b4a2 (diff)
Define `HAVE___BUILTIN_UNREACHABLE` instead of `UNREACHABLE`
`UNREACHABLE` in ruby/internal/has/builtin.h is only used as just a flag now, and redefined in ruby/backward/2/assume.h then.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/5577
Diffstat (limited to 'include')
-rw-r--r--include/ruby/backward/2/assume.h1
-rw-r--r--include/ruby/internal/has/builtin.h6
2 files changed, 1 insertions, 6 deletions
diff --git a/include/ruby/backward/2/assume.h b/include/ruby/backward/2/assume.h
index 265421df79..10d2f826f6 100644
--- a/include/ruby/backward/2/assume.h
+++ b/include/ruby/backward/2/assume.h
@@ -25,7 +25,6 @@
#include "ruby/internal/has/builtin.h"
#undef ASSUME /* Kill config.h definition */
-#undef UNREACHABLE /* Kill config.h definition */
#define ASSUME RBIMPL_ASSUME /**< @old{RBIMPL_ASSUME} */
#define UNREACHABLE RBIMPL_UNREACHABLE() /**< @old{RBIMPL_UNREACHABLE} */
#define UNREACHABLE_RETURN RBIMPL_UNREACHABLE_RETURN /**< @old{RBIMPL_UNREACHABLE_RETURN} */
diff --git a/include/ruby/internal/has/builtin.h b/include/ruby/internal/has/builtin.h
index c7b1ba44a7..243ba2a34c 100644
--- a/include/ruby/internal/has/builtin.h
+++ b/include/ruby/internal/has/builtin.h
@@ -78,10 +78,6 @@
# define RBIMPL_HAS_BUILTIN___builtin_unreachable RBIMPL_COMPILER_SINCE(GCC, 4, 5, 0)
# /* Note that "0, 0, 0" might be inaccurate. */
-#elif RBIMPL_COMPILER_IS(MSVC)
-# /* MSVC has UNREACHABLE, but that is not __builtin_unreachable. */
-# define RBIMPL_HAS_BUILTIN(_) 0
-
#else
# /* Take config.h definition when available */
# define RBIMPL_HAS_BUILTIN(_) ((RBIMPL_HAS_BUILTIN_ ## _)+0)
@@ -111,7 +107,7 @@
# define RBIMPL_HAS_BUILTIN___builtin_rotateright64 0
# define RBIMPL_HAS_BUILTIN___builtin_popcountll HAVE_BUILTIN___BUILTIN_POPCOUNTLL
# define RBIMPL_HAS_BUILTIN___builtin_sub_overflow HAVE_BUILTIN___BUILTIN_SUB_OVERFLOW
-# if defined(UNREACHABLE)
+# if defined(HAVE___BUILTIN_UNREACHABLE)
# define RBIMPL_HAS_BUILTIN___builtin_unreachable 1
# else
# define RBIMPL_HAS_BUILTIN___builtin_unreachable 0