summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authornagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-03-28 14:18:47 +0000
committernagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-03-28 14:18:47 +0000
commitd3c464d9056c633a94c72402d78f5d0de22608b2 (patch)
tree4005f84f50b98ce318537c8d5d727294afa9d787 /include
parenta9b42f1744a4879d046b237c04fd2b468e5d3200 (diff)
merge revision(s) 53455: [Backport #11962]
* ruby.h: undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P and HAVE_BUILTIN___BUILTIN_TYPES_COMPATIBLE_P on C++. [ruby-core:72736] [Bug #11962] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@54315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include')
-rw-r--r--include/ruby/ruby.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index f178299323..6e430da179 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -26,6 +26,13 @@ extern "C" {
#include RUBY_EXTCONF_H
#endif
+#if defined(__cplusplus)
+/* __builtin_choose_expr and __builtin_types_compatible aren't available
+ * on C++. See https://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html */
+# undef HAVE_BUILTIN___BUILTIN_CHOOSE_EXPR_CONSTANT_P
+# undef HAVE_BUILTIN___BUILTIN_TYPES_COMPATIBLE_P
+#endif
+
#include "defines.h"
#define NORETURN_STYLE_NEW 1