summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2020-04-08 22:27:50 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2020-04-08 22:30:14 +0900
commitec1b3464da9ed2d891beb344efc5881532f2ac3a (patch)
treef4a246b718a8d5d736a621c8514ea6d948738dd5 /include
parent8d622a58c6fb6b64d7eb193aaff4f1a2ab01826c (diff)
RUBY3_HAS_BUILTIN: icc has broken __has_builtin
It turned out that compilation errors in icc were due to their having broken __has_builtin. Let's just skip such situations.
Diffstat (limited to 'include')
-rw-r--r--include/ruby/3/has/builtin.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/include/ruby/3/has/builtin.h b/include/ruby/3/has/builtin.h
index b095ffde6f..b30fbdd1be 100644
--- a/include/ruby/3/has/builtin.h
+++ b/include/ruby/3/has/builtin.h
@@ -26,7 +26,10 @@
#if defined(RUBY3_HAS_BUILTIN)
# /* Take that. */
-#elif defined(__has_builtin)
+#elif 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. */
# define RUBY3_HAS_BUILTIN(_) __has_builtin(_)
#elif RUBY3_COMPILER_IS(GCC)