Blame SOURCES/ruby-2.3.0-undef-BUILTIN_CHOOSE_EXPR_CONSTANT_P.patch

364bab
From 98e565ec78cb4a07ffde8589ac4581fca31e9c17 Mon Sep 17 00:00:00 2001
364bab
From: mrkn <mrkn@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
364bab
Date: Thu, 7 Jan 2016 13:35:32 +0000
364bab
Subject: [PATCH] * ruby.h: undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P
364bab
   and HAVE_BUILTIN___BUILTIN_TYPES_COMPATIBLE_P on C++.   [ruby-core:72736]
364bab
 [Bug #11962]
364bab
364bab
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
364bab
---
364bab
 ChangeLog           | 6 ++++++
364bab
 include/ruby/ruby.h | 7 +++++++
364bab
 2 files changed, 13 insertions(+)
364bab
364bab
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
364bab
index 7aabf5b..82dca14 100644
364bab
--- a/include/ruby/ruby.h
364bab
+++ b/include/ruby/ruby.h
364bab
@@ -26,6 +26,13 @@ extern "C" {
364bab
 #include RUBY_EXTCONF_H
364bab
 #endif
364bab
 
364bab
+#if defined(__cplusplus)
364bab
+/* __builtin_choose_expr and __builtin_types_compatible aren't available
364bab
+ * on C++.  See https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html */
364bab
+# undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P
364bab
+# undef HAVE_BUILTIN___BUILTIN_TYPES_COMPATIBLE_P
364bab
+#endif
364bab
+
364bab
 #include "defines.h"
364bab
 
364bab
 #define NORETURN_STYLE_NEW 1