diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-04-05 10:29:38 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-04-05 10:29:38 +0000 |
commit | bff997e02b5b5f96d742be84c6e15f85aa728d29 (patch) | |
tree | 9345ddb7f926663b3a0335de757fc67febf7059d | |
parent | 5f77f2345c03009d4172cea386ee52b0379f9fcf (diff) | |
download | ruby-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
-rw-r--r-- | configure.in | 2 | ||||
-rw-r--r-- | cont.c | 8 | ||||
-rw-r--r-- | dln.h | 8 | ||||
-rw-r--r-- | gc.h | 8 | ||||
-rw-r--r-- | include/ruby/backward/rubysig.h | 8 | ||||
-rw-r--r-- | include/ruby/debug.h | 8 | ||||
-rw-r--r-- | include/ruby/defines.h | 11 | ||||
-rw-r--r-- | include/ruby/encoding.h | 8 | ||||
-rw-r--r-- | include/ruby/intern.h | 8 | ||||
-rw-r--r-- | include/ruby/io.h | 8 | ||||
-rw-r--r-- | include/ruby/missing.h | 13 | ||||
-rw-r--r-- | include/ruby/oniguruma.h | 8 | ||||
-rw-r--r-- | include/ruby/re.h | 8 | ||||
-rw-r--r-- | include/ruby/regex.h | 8 | ||||
-rw-r--r-- | include/ruby/ruby.h | 8 | ||||
-rw-r--r-- | include/ruby/st.h | 8 | ||||
-rw-r--r-- | include/ruby/thread.h | 8 | ||||
-rw-r--r-- | include/ruby/util.h | 8 | ||||
-rw-r--r-- | include/ruby/version.h | 8 | ||||
-rw-r--r-- | include/ruby/vm.h | 8 | ||||
-rw-r--r-- | include/ruby/win32.h | 8 | ||||
-rw-r--r-- | internal.h | 8 | ||||
-rw-r--r-- | iseq.h | 8 | ||||
-rw-r--r-- | node.h | 8 | ||||
-rw-r--r-- | regenc.h | 8 | ||||
-rw-r--r-- | regint.h | 8 | ||||
-rw-r--r-- | regparse.h | 8 | ||||
-rw-r--r-- | transcode_data.h | 8 | ||||
-rw-r--r-- | vm_backtrace.c | 8 | ||||
-rw-r--r-- | vm_core.h | 24 | ||||
-rw-r--r-- | vm_debug.h | 8 |
31 files changed, 75 insertions, 191 deletions
diff --git a/configure.in b/configure.in index 1e9048dbf8..ed29b423f1 100644 --- a/configure.in +++ b/configure.in @@ -769,6 +769,8 @@ if test "$GCC" = yes; then AC_SUBST(WERRORFLAG, "-Werror") if test "$visibility_option" = yes; then RUBY_APPEND_OPTION(XCFLAGS, -fvisibility=hidden) + AC_DEFINE(RUBY_SYMBOL_EXPORT_BEGIN, [_Pragma("GCC visibility push(default)")]) + AC_DEFINE(RUBY_SYMBOL_EXPORT_END, [_Pragma("GCC visibility pop")]) else RUBY_TRY_LDFLAGS([-Wl,-unexported_symbol,_Init_*], [visibility_option=ld], [visibility_option=no]) fi @@ -1540,9 +1540,7 @@ Init_Cont(void) rb_define_method(rb_cFiber, "resume", rb_fiber_m_resume, -1); } -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN void ruby_Init_Continuation_body(void) @@ -1563,6 +1561,4 @@ ruby_Init_Fiber_as_Coroutine(void) rb_define_singleton_method(rb_cFiber, "current", rb_fiber_s_current, 0); } -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END @@ -28,9 +28,7 @@ # define _(args) () #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN DEPRECATED(char *dln_find_exe(const char*,const char*)); DEPRECATED(char *dln_find_file(const char*,const char*)); @@ -43,8 +41,6 @@ extern char *dln_argv0; void *dln_load(const char*); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif @@ -83,9 +83,7 @@ int ruby_get_stack_grow_direction(volatile VALUE *addr); #endif #define IS_STACK_DIR_UPPER() STACK_DIR_UPPER(1,0) -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* exports for objspace module */ size_t rb_objspace_data_type_memsize(VALUE obj); @@ -97,8 +95,6 @@ void rb_objspace_each_objects( int (*callback)(void *start, void *end, size_t stride, void *data), void *data); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* RUBY_GC_H */ diff --git a/include/ruby/backward/rubysig.h b/include/ruby/backward/rubysig.h index f46679ae67..945a09a8c8 100644 --- a/include/ruby/backward/rubysig.h +++ b/include/ruby/backward/rubysig.h @@ -27,9 +27,7 @@ extern "C" { #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN struct rb_blocking_region_buffer; DEPRECATED(RUBY_EXTERN struct rb_blocking_region_buffer *rb_thread_blocking_region_begin(void)); @@ -42,9 +40,7 @@ DEPRECATED(RUBY_EXTERN void rb_thread_blocking_region_end(struct rb_blocking_reg #define ALLOW_INTS do {CHECK_INTS;} while (0) #define CHECK_INTS rb_thread_check_ints() -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/debug.h b/include/ruby/debug.h index 4ef45a8327..67e15a8d2f 100644 --- a/include/ruby/debug.h +++ b/include/ruby/debug.h @@ -19,9 +19,7 @@ extern "C" { #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* Note: This file contains experimental APIs. */ /* APIs can be replaced at Ruby 2.0.1 or later */ @@ -79,9 +77,7 @@ typedef enum { void rb_add_event_hook2(rb_event_hook_func_t func, rb_event_flag_t events, VALUE data, rb_event_hook_flag_t hook_flag); void rb_thread_add_event_hook2(VALUE thval, rb_event_hook_func_t func, rb_event_flag_t events, VALUE data, rb_event_hook_flag_t hook_flag); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 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 diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h index 41640ec7e0..1233053063 100644 --- a/include/ruby/encoding.h +++ b/include/ruby/encoding.h @@ -22,9 +22,7 @@ extern "C" { #include <stdarg.h> #include "ruby/oniguruma.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #define ENCODING_INLINE_MAX 1023 #define ENCODING_SHIFT (FL_USHIFT+10) @@ -340,9 +338,7 @@ void rb_econv_binmode(rb_econv_t *ec); #define ECONV_AFTER_OUTPUT 0x00020000 /* end of flags for rb_econv_convert */ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/intern.h b/include/ruby/intern.h index de430a9eaf..7377718222 100644 --- a/include/ruby/intern.h +++ b/include/ruby/intern.h @@ -34,9 +34,7 @@ extern "C" { #include "ruby/st.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* * Functions and variables that are used by more than one source file of @@ -909,9 +907,7 @@ int rb_frame_method_id_and_class(ID *idp, VALUE *klassp); VALUE rb_make_backtrace(void); VALUE rb_make_exception(int, VALUE*); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/io.h b/include/ruby/io.h index b5ea2e9c95..bcdee3b0c0 100644 --- a/include/ruby/io.h +++ b/include/ruby/io.h @@ -49,9 +49,7 @@ extern "C" { # define RB_WAITFD_OUT 0x004 #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN typedef struct { char *ptr; /* off + len <= capa */ @@ -199,9 +197,7 @@ void rb_io_read_check(rb_io_t*); int rb_io_read_pending(rb_io_t*); DEPRECATED(void rb_read_check(FILE*)); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/missing.h b/include/ruby/missing.h index 9b502cd3d8..5dba4edda7 100644 --- a/include/ruby/missing.h +++ b/include/ruby/missing.h @@ -34,6 +34,11 @@ extern "C" { #endif #endif +#ifndef RUBY_SYMBOL_EXPORT_BEGIN +# define RUBY_SYMBOL_EXPORT_BEGIN /* begin */ +# define RUBY_SYMBOL_EXPORT_END /* end */ +#endif + #if !defined(HAVE_STRUCT_TIMEVAL) struct timeval { time_t tv_sec; /* seconds */ @@ -62,9 +67,7 @@ struct timezone { #define RUBY_EXTERN extern #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #ifndef HAVE_ACOSH RUBY_EXTERN double acosh(double); @@ -229,9 +232,7 @@ RUBY_EXTERN int ruby_close(int); RUBY_EXTERN void setproctitle(const char *fmt, ...); #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/oniguruma.h b/include/ruby/oniguruma.h index e3763adc59..b96773e11e 100644 --- a/include/ruby/oniguruma.h +++ b/include/ruby/oniguruma.h @@ -98,9 +98,7 @@ extern "C" { #define ONIG_EXTERN extern #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #include <stddef.h> /* for size_t */ @@ -825,9 +823,7 @@ const char* onig_version P_((void)); ONIG_EXTERN const char* onig_copyright P_((void)); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #ifdef __cplusplus #if 0 diff --git a/include/ruby/re.h b/include/ruby/re.h index 4039ba1800..41b3e492f8 100644 --- a/include/ruby/re.h +++ b/include/ruby/re.h @@ -24,9 +24,7 @@ extern "C" { #include "ruby/regex.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN typedef struct re_pattern_buffer Regexp; @@ -61,9 +59,7 @@ void rb_match_busy(VALUE); VALUE rb_reg_quote(VALUE); regex_t *rb_reg_prepare_re(VALUE re, VALUE str); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/regex.h b/include/ruby/regex.h index aeb6418d0a..024bed4a4e 100644 --- a/include/ruby/regex.h +++ b/include/ruby/regex.h @@ -24,9 +24,7 @@ extern "C" { #include "oniguruma.h" #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #ifndef ONIG_RUBY_M17N @@ -36,9 +34,7 @@ ONIG_EXTERN OnigEncoding OnigEncDefaultCharEncoding; #endif /* ifndef ONIG_RUBY_M17N */ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h index 3822942d07..5bd71121f6 100644 --- a/include/ruby/ruby.h +++ b/include/ruby/ruby.h @@ -55,9 +55,7 @@ extern "C" { #include <stdarg.h> -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* Make alloca work the best possible way. */ #ifdef __GNUC__ @@ -1708,9 +1706,7 @@ void ruby_sig_finalize(void); /*! @} */ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/st.h b/include/ruby/st.h index 466bbcf5f6..ef838b7aeb 100644 --- a/include/ruby/st.h +++ b/include/ruby/st.h @@ -14,9 +14,7 @@ extern "C" { #include "ruby/defines.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #if SIZEOF_LONG == SIZEOF_VOIDP typedef unsigned long st_data_t; @@ -130,9 +128,7 @@ st_index_t st_hash_end(st_index_t h); st_index_t st_hash_start(st_index_t h); #define st_hash_start(h) ((st_index_t)(h)) -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/thread.h b/include/ruby/thread.h index fb9057c70f..550f678e54 100644 --- a/include/ruby/thread.h +++ b/include/ruby/thread.h @@ -21,9 +21,7 @@ extern "C" { #include "ruby/intern.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1); @@ -35,9 +33,7 @@ void *rb_thread_call_without_gvl2(void *(*func)(void *), void *data1, #define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_AFTER 0x01 #define RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/util.h b/include/ruby/util.h index 02aa643916..5be5f2e0b4 100644 --- a/include/ruby/util.h +++ b/include/ruby/util.h @@ -45,9 +45,7 @@ extern "C" { #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #define scan_oct(s,l,e) ((int)ruby_scan_oct((s),(l),(e))) unsigned long ruby_scan_oct(const char *, size_t, size_t *); @@ -85,9 +83,7 @@ double ruby_strtod(const char *, char **); void ruby_each_words(const char *, void (*)(const char*, int, void*), void *); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/version.h b/include/ruby/version.h index 9ecf6fe2a5..4ffcc7a9ad 100644 --- a/include/ruby/version.h +++ b/include/ruby/version.h @@ -43,9 +43,7 @@ extern "C" { #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* * Interfaces from extension libraries. @@ -63,9 +61,7 @@ RUBY_EXTERN const char ruby_description[]; RUBY_EXTERN const char ruby_copyright[]; RUBY_EXTERN const char ruby_engine[]; -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/vm.h b/include/ruby/vm.h index 1146bf5426..73345264bd 100644 --- a/include/ruby/vm.h +++ b/include/ruby/vm.h @@ -19,9 +19,7 @@ extern "C" { #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* Place holder. * @@ -54,9 +52,7 @@ int ruby_vm_destruct(ruby_vm_t *vm); */ void ruby_vm_at_exit(void(*func)(ruby_vm_t *)); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 diff --git a/include/ruby/win32.h b/include/ruby/win32.h index a2eec0cf19..56fa3e5c0c 100644 --- a/include/ruby/win32.h +++ b/include/ruby/win32.h @@ -8,9 +8,7 @@ extern "C" { #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* * Copyright (c) 1993, Intergraph Corporation @@ -735,9 +733,7 @@ in asynchronous_func_t. typedef uintptr_t (*asynchronous_func_t)(uintptr_t self, int argc, uintptr_t* argv); uintptr_t rb_w32_asynchronize(asynchronous_func_t func, uintptr_t self, int argc, uintptr_t* argv, uintptr_t intrval); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #ifdef __MINGW_ATTRIB_PURE /* License: Ruby's */ diff --git a/internal.h b/internal.h index b19d321086..b832a95c89 100644 --- a/internal.h +++ b/internal.h @@ -365,9 +365,7 @@ int rb_backtrace_p(VALUE obj); VALUE rb_backtrace_to_str_ary(VALUE obj); VALUE rb_vm_backtrace_object(); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN const char *rb_objspace_data_type_name(VALUE obj); /* Temporary. This API will be removed (renamed). */ @@ -393,9 +391,7 @@ void rb_gc_mark_global_tbl(void); void rb_mark_generic_ivar(VALUE); void rb_mark_generic_ivar_tbl(void); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 @@ -12,9 +12,7 @@ #ifndef RUBY_COMPILE_H #define RUBY_COMPILE_H -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* compile.c */ VALUE rb_iseq_compile_node(VALUE self, NODE *node); @@ -132,8 +130,6 @@ VALUE rb_iseq_defined_string(enum defined_type type); #define DEFAULT_SPECIAL_VAR_COUNT 2 -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* RUBY_COMPILE_H */ @@ -466,9 +466,7 @@ typedef struct RNode { roomof(type, VALUE)), \ MEMO_FOR(type, value)) -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN VALUE rb_parser_new(void); VALUE rb_parser_end_seen_p(VALUE); @@ -525,9 +523,7 @@ void *rb_parser_realloc(struct parser_params *, void *, size_t); void *rb_parser_calloc(struct parser_params *, size_t, size_t); void rb_parser_free(struct parser_params *, void *); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #if defined(__cplusplus) #if 0 @@ -40,9 +40,7 @@ #endif #include "ruby/oniguruma.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN typedef struct { OnigCodePoint from; @@ -220,8 +218,6 @@ extern int ONIG_ENC_REGISTER(const char *, OnigEncodingType*); #define ENC_ALIAS(name, orig) #define ENC_DUMMY(name) -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* ONIGURUMA_REGENC_H */ @@ -262,9 +262,7 @@ typedef unsigned int uintptr_t; #include "regenc.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #ifdef MIN #undef MIN @@ -907,8 +905,6 @@ extern int onigenc_property_list_init P_((ONIGENC_INIT_PROPERTY_LIST_FUNC_TYPE)) extern size_t onig_memsize P_((const regex_t *reg)); extern size_t onig_region_memsize P_((const struct re_registers *regs)); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* ONIGURUMA_REGINT_H */ diff --git a/regparse.h b/regparse.h index 4f45e2b72c..c92babfebe 100644 --- a/regparse.h +++ b/regparse.h @@ -32,9 +32,7 @@ #include "regint.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* node type */ #define NT_STR 0 @@ -360,8 +358,6 @@ extern int onig_print_names(FILE*, regex_t*); #endif #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* ONIGURUMA_REGPARSE_H */ diff --git a/transcode_data.h b/transcode_data.h index dcaee61033..fcb05cc39f 100644 --- a/transcode_data.h +++ b/transcode_data.h @@ -14,9 +14,7 @@ #ifndef RUBY_TRANSCODE_DATA_H #define RUBY_TRANSCODE_DATA_H 1 -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #define WORDINDEX_SHIFT_BITS 2 #define WORDINDEX2INFO(widx) ((widx) << WORDINDEX_SHIFT_BITS) @@ -120,8 +118,6 @@ void rb_register_transcoder(const rb_transcoder *); # define TRANS_INIT(name) void Init_ ## name(void) #endif -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* RUBY_TRANSCODE_DATA_H */ diff --git a/vm_backtrace.c b/vm_backtrace.c index 5f1cdabb70..1cc0d07f12 100644 --- a/vm_backtrace.c +++ b/vm_backtrace.c @@ -996,13 +996,9 @@ Init_vm_backtrace(void) /* debugger API */ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END struct rb_debug_inspector_struct { rb_thread_t *th; @@ -633,9 +633,7 @@ typedef enum { ((x) & VM_DEFINECLASS_FLAG_HAS_SUPERCLASS) /* iseq.c */ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN /* node -> iseq */ VALUE rb_iseq_new(NODE*, VALUE, VALUE, VALUE, VALUE, enum iseq_type); @@ -658,9 +656,7 @@ RUBY_EXTERN VALUE rb_cISeq; RUBY_EXTERN VALUE rb_cRubyVM; RUBY_EXTERN VALUE rb_cEnv; RUBY_EXTERN VALUE rb_mRubyVMFrozenCore; -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #define GetProcPtr(obj, ptr) \ GetCoreDataFromValue((obj), rb_proc_t, (ptr)) @@ -816,14 +812,10 @@ extern void rb_vmdebug_debug_print_post(rb_thread_t *th, rb_control_frame_t *cfp void rb_vm_bugreport(void); /* functions about thread/vm execution */ -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN VALUE rb_iseq_eval(VALUE iseqval); VALUE rb_iseq_eval_main(VALUE iseqval); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END int rb_thread_method_id_and_class(rb_thread_t *th, ID *idp, VALUE *klassp); VALUE rb_vm_invoke_proc(rb_thread_t *th, rb_proc_t *proc, @@ -996,9 +988,7 @@ void rb_threadptr_exec_event_hooks_and_pop_frame(struct rb_trace_arg_struct *tra #define EXEC_EVENT_HOOK_AND_POP_FRAME(th_, flag_, self_, id_, klass_, data_) \ EXEC_EVENT_HOOK_ORIG(th_, flag_, self_, id_, klass_, data_, 1) -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN int rb_thread_check_trap_pending(void); @@ -1006,8 +996,6 @@ extern VALUE rb_get_coverages(void); extern void rb_set_coverages(VALUE); extern void rb_reset_coverages(void); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* RUBY_VM_CORE_H */ diff --git a/vm_debug.h b/vm_debug.h index 424390fade..32e060732c 100644 --- a/vm_debug.h +++ b/vm_debug.h @@ -15,9 +15,7 @@ #include "ruby/ruby.h" #include "node.h" -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility push(default) -#endif +RUBY_SYMBOL_EXPORT_BEGIN #define dpv(h,v) ruby_debug_print_value(-1, 0, (h), (v)) #define dp(v) ruby_debug_print_value(-1, 0, "", (v)) @@ -34,8 +32,6 @@ void ruby_debug_breakpoint(void); void ruby_debug_gc_check_func(void); void ruby_set_debug_option(const char *str); -#if defined __GNUC__ && __GNUC__ >= 4 -#pragma GCC visibility pop -#endif +RUBY_SYMBOL_EXPORT_END #endif /* RUBY_DEBUG_H */ |