aboutsummaryrefslogtreecommitdiffstats
path: root/include/ruby/defines.h
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-04-05 10:29:38 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-04-05 10:29:38 +0000
commitbff997e02b5b5f96d742be84c6e15f85aa728d29 (patch)
tree9345ddb7f926663b3a0335de757fc67febf7059d /include/ruby/defines.h
parent5f77f2345c03009d4172cea386ee52b0379f9fcf (diff)
downloadruby-bff997e02b5b5f96d742be84c6e15f85aa728d29.tar.gz
defines.h: RUBY_SYMBOL_EXPORT_{BEGIN,END}
* include/ruby/defines.h (RUBY_SYMBOL_EXPORT_{BEGIN,END}): visibility control macros. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include/ruby/defines.h')
-rw-r--r--include/ruby/defines.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/include/ruby/defines.h b/include/ruby/defines.h
index c741b0ec28..99305b2c4b 100644
--- a/include/ruby/defines.h
+++ b/include/ruby/defines.h
@@ -88,10 +88,13 @@ extern "C" {
#define ANYARGS
#endif
-#if defined __GNUC__ && __GNUC__ >= 4
-#pragma GCC visibility push(default)
+#ifndef RUBY_SYMBOL_EXPORT_BEGIN
+# define RUBY_SYMBOL_EXPORT_BEGIN /* begin */
+# define RUBY_SYMBOL_EXPORT_END /* end */
#endif
+RUBY_SYMBOL_EXPORT_BEGIN
+
#define xmalloc ruby_xmalloc
#define xmalloc2 ruby_xmalloc2
#define xcalloc ruby_xcalloc
@@ -281,9 +284,7 @@ void rb_ia64_flushrs(void);
RUBY_ALIAS_FUNCTION_TYPE(VALUE, prot, name, args)
#endif
-#if defined __GNUC__ && __GNUC__ >= 4
-#pragma GCC visibility pop
-#endif
+RUBY_SYMBOL_EXPORT_END
#if defined(__cplusplus)
#if 0