Ruby 3.5.0dev (2025-02-22 revision 412997300569c1853c09813e4924b6df3d7e8669)
Deprecated List
Global _ (args)
Nobody practically needs this macro any longer.
Global __ (args)
Nobody practically needs this macro any longer.
Global ALLOC

Use RB_ALLOC instead.

Global ALLOC_N

Use RB_ALLOC_N instead.

Global ALLOCA_N (type, n)
This macro is dangerous (does not bother stack overflow at all). RB_ALLOCV is the modern way to do the same thing.
Global ALLOCV

Use RB_ALLOCV instead.

Global ALLOCV_END

Use RB_ALLOCV_END instead.

Global ALLOCV_N

Use RB_ALLOCV_N instead.

Global ASSUME

Use RBIMPL_ASSUME instead.

Global BUILTIN_TYPE

Use RB_BUILTIN_TYPE instead.

Global Check_SafeStr (v)
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global Check_TypedStruct (v, t)

Use rb_check_typeddata instead.

Global CHR2FIX

Use RB_CHR2FIX instead.

Global CLASS_OF

Use rb_class_of instead.

Global CLONESETUP

Use rb_clone_setup instead.

Global CONST_ID

Use RUBY_CONST_ID instead.

Global CONST_ID_CACHE

Use RUBY_CONST_ID_CACHE instead.

Global DBL2NUM

Use rb_float_new instead.

Global DUPSETUP

Use rb_dup_setup instead.

Global DYNAMIC_SYM_P

Use RB_DYNAMIC_SYM_P instead.

Global ECONV_AFTER_OUTPUT

Use RUBY_ECONV_AFTER_OUTPUT instead.

Global ECONV_CR_NEWLINE_DECORATOR

Use RUBY_ECONV_CR_NEWLINE_DECORATOR instead.

Global ECONV_CRLF_NEWLINE_DECORATOR

Use RUBY_ECONV_CRLF_NEWLINE_DECORATOR instead.

Global ECONV_DECORATOR_MASK

Use RUBY_ECONV_DECORATOR_MASK instead.

Global ECONV_DEFAULT_NEWLINE_DECORATOR

Use RUBY_ECONV_DEFAULT_NEWLINE_DECORATOR instead.

Global ECONV_ERROR_HANDLER_MASK

Use RUBY_ECONV_ERROR_HANDLER_MASK instead.

Global ECONV_INVALID_MASK

Use RUBY_ECONV_INVALID_MASK instead.

Global ECONV_INVALID_REPLACE

Use RUBY_ECONV_INVALID_REPLACE instead.

Global ECONV_LF_NEWLINE_DECORATOR

Use RUBY_ECONV_LF_NEWLINE_DECORATOR instead.

Global ECONV_NEWLINE_DECORATOR_MASK

Use RUBY_ECONV_NEWLINE_DECORATOR_MASK instead.

Global ECONV_NEWLINE_DECORATOR_READ_MASK

Use RUBY_ECONV_NEWLINE_DECORATOR_READ_MASK instead.

Global ECONV_NEWLINE_DECORATOR_WRITE_MASK

Use RUBY_ECONV_NEWLINE_DECORATOR_WRITE_MASK instead.

Global ECONV_PARTIAL_INPUT

Use RUBY_ECONV_PARTIAL_INPUT instead.

Global ECONV_STATEFUL_DECORATOR_MASK

Use RUBY_ECONV_STATEFUL_DECORATOR_MASK instead.

Global ECONV_UNDEF_HEX_CHARREF

Use RUBY_ECONV_UNDEF_HEX_CHARREF instead.

Global ECONV_UNDEF_MASK

Use RUBY_ECONV_UNDEF_MASK instead.

Global ECONV_UNDEF_REPLACE

Use RUBY_ECONV_UNDEF_REPLACE instead.

Global ECONV_UNIVERSAL_NEWLINE_DECORATOR

Use RUBY_ECONV_UNIVERSAL_NEWLINE_DECORATOR instead.

Global ECONV_XML_ATTR_CONTENT_DECORATOR

Use RUBY_ECONV_XML_ATTR_CONTENT_DECORATOR instead.

Global ECONV_XML_ATTR_QUOTE_DECORATOR

Use RUBY_ECONV_XML_ATTR_QUOTE_DECORATOR instead.

Global ECONV_XML_TEXT_DECORATOR

Use RUBY_ECONV_XML_TEXT_DECORATOR instead.

Global ELTS_SHARED

Use RUBY_ELTS_SHARED instead.

Global ENC_CODERANGE (obj)

Use RB_ENC_CODERANGE instead.

Global ENC_CODERANGE_7BIT

Use RUBY_ENC_CODERANGE_7BIT instead.

Global ENC_CODERANGE_AND (a, b)

Use RB_ENC_CODERANGE_AND instead.

Global ENC_CODERANGE_ASCIIONLY (obj)

Use RB_ENC_CODERANGE_ASCIIONLY instead.

Global ENC_CODERANGE_BROKEN

Use RUBY_ENC_CODERANGE_BROKEN instead.

Global ENC_CODERANGE_CLEAN_P (cr)

Use RB_ENC_CODERANGE_CLEAN_P instead.

Global ENC_CODERANGE_CLEAR (obj)

Use RB_ENC_CODERANGE_CLEAR instead.

Global ENC_CODERANGE_MASK

Use RUBY_ENC_CODERANGE_MASK instead.

Global ENC_CODERANGE_SET (obj, cr)

Use RB_ENC_CODERANGE_SET instead.

Global ENC_CODERANGE_UNKNOWN

Use RUBY_ENC_CODERANGE_UNKNOWN instead.

Global ENC_CODERANGE_VALID

Use RUBY_ENC_CODERANGE_VALID instead.

Global ENCODING_CODERANGE_SET (obj, encindex, cr)

Use RB_ENCODING_CODERANGE_SET instead.

Global ENCODING_GET (obj)

Use RB_ENCODING_GET instead.

Global ENCODING_GET_INLINED (obj)

Use RB_ENCODING_GET_INLINED instead.

Global ENCODING_INLINE_MAX

Use RUBY_ENCODING_INLINE_MAX instead.

Global ENCODING_IS_ASCII8BIT (obj)

Use RB_ENCODING_IS_ASCII8BIT instead.

Global ENCODING_MASK

Use RUBY_ENCODING_MASK instead.

Global ENCODING_MAXNAMELEN

Use RUBY_ENCODING_MAXNAMELEN instead.

Global ENCODING_SET (obj, i)

Use RB_ENCODING_SET instead.

Global ENCODING_SET_INLINED (obj, i)

Use RB_ENCODING_SET_INLINED instead.

Global ENCODING_SHIFT

Use RUBY_ENCODING_SHIFT instead.

Global FIX2INT

Use RB_FIX2INT instead.

Global FIX2LONG

Use RB_FIX2LONG instead.

Global FIX2SHORT

Use RB_FIX2SHORT instead.

Global FIX2UINT

Use RB_FIX2UINT instead.

Global FIX2ULONG

Use RB_FIX2ULONG instead.

Global FIXABLE

Use RB_FIXABLE instead.

Global FIXNUM_FLAG

Use RUBY_FIXNUM_FLAG instead.

Global FIXNUM_MAX

Use RUBY_FIXNUM_MAX instead.

Global FIXNUM_MIN

Use RUBY_FIXNUM_MIN instead.

Global FIXNUM_P

Use RB_FIXNUM_P instead.

Global FL_ABLE

Use RB_FL_ABLE instead.

Global FL_ALL

Use RB_FL_ALL instead.

Global FL_ALL_RAW

Use RB_FL_ALL_RAW instead.

Global FL_ANY

Use RB_FL_ANY instead.

Global FL_ANY_RAW

Use RB_FL_ANY_RAW instead.

Global FL_EXIVAR

Use RUBY_FL_EXIVAR instead.

Global FL_FINALIZE

Use RUBY_FL_FINALIZE instead.

Global FL_FREEZE

Use RUBY_FL_FREEZE instead.

Global FL_PROMOTED

Use RUBY_FL_PROMOTED instead.

Global FL_REVERSE

Use RB_FL_REVERSE instead.

Global FL_REVERSE_RAW

Use RB_FL_REVERSE_RAW instead.

Global FL_SEEN_OBJ_ID

Use RUBY_FL_SEEN_OBJ_ID instead.

Global FL_SET

Use RB_FL_SET instead.

Global FL_SET_RAW

Use RB_FL_SET_RAW instead.

Global FL_SHAREABLE

Use RUBY_FL_SHAREABLE instead.

Global FL_SINGLETON

Use RUBY_FL_SINGLETON instead.

Global FL_TAINT

Use RUBY_FL_TAINT instead.

Global FL_TEST

Use RB_FL_TEST instead.

Global FL_TEST_RAW

Use RB_FL_TEST_RAW instead.

Global FL_UNSET

Use RB_FL_UNSET instead.

Global FL_UNSET_RAW

Use RB_FL_UNSET_RAW instead.

Global FL_UNTRUSTED

Use RUBY_FL_UNTRUSTED instead.

Global FL_USER0

Use RUBY_FL_USER0 instead.

Global FL_USER1

Use RUBY_FL_USER1 instead.

Global FL_USER10

Use RUBY_FL_USER10 instead.

Global FL_USER11

Use RUBY_FL_USER11 instead.

Global FL_USER12

Use RUBY_FL_USER12 instead.

Global FL_USER13

Use RUBY_FL_USER13 instead.

Global FL_USER14

Use RUBY_FL_USER14 instead.

Global FL_USER15

Use RUBY_FL_USER15 instead.

Global FL_USER16

Use RUBY_FL_USER16 instead.

Global FL_USER17

Use RUBY_FL_USER17 instead.

Global FL_USER18

Use RUBY_FL_USER18 instead.

Global FL_USER19

Use RUBY_FL_USER19 instead.

Global FL_USER2

Use RUBY_FL_USER2 instead.

Global FL_USER3

Use RUBY_FL_USER3 instead.

Global FL_USER4

Use RUBY_FL_USER4 instead.

Global FL_USER5

Use RUBY_FL_USER5 instead.

Global FL_USER6

Use RUBY_FL_USER6 instead.

Global FL_USER7

Use RUBY_FL_USER7 instead.

Global FL_USER8

Use RUBY_FL_USER8 instead.

Global FL_USER9

Use RUBY_FL_USER9 instead.

Global FL_USHIFT

Use RUBY_FL_USHIFT instead.

Global FL_WB_PROTECTED

Use RUBY_FL_WB_PROTECTED instead.

Global FLONUM_FLAG

Use RUBY_FLONUM_FLAG instead.

Global FLONUM_MASK

Use RUBY_FLONUM_MASK instead.

Global FLONUM_P

Use RB_FLONUM_P instead.

Global HAVE_NATIVETHREAD
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global HAVE_RB_DATA_TYPE_T_FUNCTION
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global HAVE_RB_DATA_TYPE_T_PARENT
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global HAVE_RB_DEFINE_ALLOC_FUNC
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global HAVE_RB_REG_NEW_STR
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global HAVE_RB_SCAN_ARGS_OPTIONAL_HASH
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global HAVE_TYPE_RB_DATA_TYPE_T
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global ID2SYM

Use RB_ID2SYM instead.

Global IMMEDIATE_MASK

Use RUBY_IMMEDIATE_MASK instead.

Global IMMEDIATE_P

Use RB_IMMEDIATE_P instead.

Global INT2FIX

Use RB_INT2FIX instead.

Global INT2NUM

Use RB_INT2NUM instead.

Global ISALNUM

Use rb_isalnum instead.

Global ISALPHA

Use rb_isalpha instead.

Global ISASCII

Use rb_isascii instead.

Global ISBLANK

Use rb_isblank instead.

Global ISCNTRL

Use rb_iscntrl instead.

Global ISDIGIT

Use rb_isdigit instead.

Global ISGRAPH

Use rb_isgraph instead.

Global ISLOWER

Use rb_islower instead.

Global ISPRINT

Use rb_isprint instead.

Global ISPUNCT

Use rb_ispunct instead.

Global ISSPACE

Use rb_isspace instead.

Global ISUPPER

Use rb_isupper instead.

Global ISXDIGIT

Use rb_isxdigit instead.

Global LL2NUM

Use RB_LL2NUM instead.

Global LONG2FIX

Use RB_INT2FIX instead.

Global LONG2NUM

Use RB_LONG2NUM instead.

Global LONG_LONG
Just use long long directly.
Global MBCLEN_CHARFOUND_LEN (ret)

Use ONIGENC_MBCLEN_CHARFOUND_LEN instead.

Global MBCLEN_CHARFOUND_P (ret)

Use ONIGENC_MBCLEN_CHARFOUND_P instead.

Global MBCLEN_INVALID_P (ret)

Use ONIGENC_MBCLEN_INVALID_P instead.

Global MBCLEN_NEEDMORE_LEN (ret)

Use ONIGENC_MBCLEN_NEEDMORE_LEN instead.

Global MBCLEN_NEEDMORE_P (ret)

Use ONIGENC_MBCLEN_NEEDMORE_P instead.

Global NEGFIXABLE

Use RB_NEGFIXABLE instead.

Global NIL_P

Use RB_NIL_P instead.

Global NUM2CHR

Use RB_NUM2CHR instead.

Global NUM2DBL

Use rb_num2dbl instead.

Global NUM2INT

Use RB_NUM2INT instead.

Global NUM2LL

Use RB_NUM2LL instead.

Global NUM2LONG

Use RB_NUM2LONG instead.

Global NUM2SHORT

Use RB_NUM2SHORT instead.

Global NUM2SIZET

Use RB_NUM2SIZE instead.

Global NUM2SSIZET

Use RB_NUM2SSIZE instead.

Global NUM2UINT

Use RB_NUM2UINT instead.

Global NUM2ULL

Use RB_NUM2ULL instead.

Global NUM2ULONG

Use RB_NUM2ULONG instead.

Global NUM2USHORT

Use RB_NUM2USHORT instead.

Global OBJ_FREEZE

Use RB_OBJ_FREEZE instead.

Global OBJ_FREEZE_RAW

Use RB_OBJ_FREEZE_RAW instead.

Global OBJ_FROZEN

Use RB_OBJ_FROZEN instead.

Global OBJ_FROZEN_RAW

Use RB_OBJ_FROZEN_RAW instead.

Global OBJ_INFECT

Use RB_OBJ_INFECT instead.

Global OBJ_INFECT_RAW

Use RB_OBJ_INFECT_RAW instead.

Global OBJ_INIT_COPY (obj, orig)

Use RB_OBJ_INIT_COPY instead.

Global OBJ_PROMOTED

Use RB_OBJ_PROMOTED instead.

Global OBJ_PROMOTED_RAW

Use RB_OBJ_PROMOTED_RAW instead.

Global OBJ_TAINT

Use RB_OBJ_TAINT instead.

Global OBJ_TAINT_RAW

Use RB_OBJ_TAINT_RAW instead.

Global OBJ_TAINTABLE

Use RB_OBJ_TAINT_RAW instead.

Global OBJ_TAINTED

Use RB_OBJ_TAINTED instead.

Global OBJ_TAINTED_RAW

Use RB_OBJ_TAINTED_RAW instead.

Global OBJ_UNTRUST

Use RB_OBJ_TAINT instead.

Global OBJ_UNTRUSTED

Use RB_OBJ_TAINTED instead.

Global OBJ_WB_UNPROTECT

Use RB_OBJ_WB_UNPROTECT instead.

Global OBJSETUP

Use rb_obj_setup instead.

Global PATH_ENV
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global POSFIXABLE

Use RB_POSFIXABLE instead.

Global Qfalse

Use RUBY_Qfalse instead.

Global Qnil

Use RUBY_Qnil instead.

Global Qtrue

Use RUBY_Qtrue instead.

Global Qundef

Use RUBY_Qundef instead.

Global RARRAY_AREF (a, i)
Global rb_ary_new2

Use rb_ary_new_capa instead.

Global rb_ary_new3

Use rb_ary_new_from_args instead.

Global rb_ary_new4

Use rb_ary_new_from_values instead.

Global RB_BLOCK_CALL_FUNC_STRICT
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global rb_check_frozen_internal
Global rb_clone_setup (VALUE clone, VALUE obj)
Not sure exactly when but at some time, the implementation of Object#clone stopped using this function. It remained untouched for a while, and then @shyouhei realised that they are no longer doing the same thing. It seems nobody seriously uses this function any longer. Let's just abandon it.
Global rb_complex_polar (VALUE abs, VALUE arg)

Use rb_complex_new_polar instead.

Global rb_data_object_alloc (VALUE klass, void *data, RUBY_DATA_FUNC dmark, RUBY_DATA_FUNC dfree)
This function was renamed to rb_data_object_wrap().
Global rb_data_typed_object_alloc (VALUE klass, void *datap, const rb_data_type_t *type)
This function was renamed to rb_data_typed_object_wrap().
Global rb_defout
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global rb_dup_setup (VALUE dup, VALUE obj)
Not sure exactly when but at some time, the implementation of Object#dup stopped using this function. It remained untouched for a while, and then @shyouhei realised that they are no longer the same thing. It seems nobody seriously uses this function any longer. Let's just abandon it.
Global rb_enc_codepoint (const char *p, const char *e, rb_encoding *enc)
Use rb_enc_codepoint_len() instead.
Global RB_EVENT_HOOKS_HAVE_CALLBACK_DATA
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global rb_exc_new2

Use rb_exc_new_cstr instead.

Global rb_exc_new3

Use rb_exc_new_str instead.

Global rb_funcall2
This is an old name of rb_funcallv(). Provided here for backwards compatibility to 2.x programs (introduced in 2.1). It is not a good name. Please don't use it any longer.
Global rb_funcall3
This is an old name of rb_funcallv_public(). Provided here for backwards compatibility to 2.x programs (introduced in 2.1). It is not a good name. Please don't use it any longer.
Global rb_get_path_no_checksafe (VALUE)
This function is an alias of rb_get_path() now. The part that did "no_checksafe" was deleted. It remains here because of no harm.
Global rb_gvar_undef_getter
Global rb_gvar_undef_marker
Global rb_gvar_undef_setter
Global rb_gvar_var_getter
Global rb_gvar_var_marker
Global rb_gvar_var_setter
Global RB_INTEGER_TYPE_P

Use rb_integer_type_p instead.

Global rb_io_taint_check (VALUE obj)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global rb_io_wait_readable (int fd)
We now prefer rb_io_maybe_wait_readable() over this one.
Global rb_io_wait_writable (int fd)
We now prefer rb_io_maybe_wait_writable() over this one.
Global rb_iterate (VALUE(*func1)(VALUE), VALUE data1, rb_block_call_func_t proc, VALUE data2)
This is an old API. Use rb_block_call() instead.
Global rb_memcmp
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global rb_mul_size_overflow (size_t a, size_t b, size_t max, size_t *c)
This function was an implementation detail of old RB_ALLOCV_N(). We no longer use it. @shyouhei suspects that there are no actual usage now. However it was not marked as private before. We cannot delete it any longer.
Global RB_NUM_COERCE_FUNCS_NEED_OPID
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_INFECT (VALUE dst, VALUE src)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_INFECT_RAW (VALUE dst, VALUE src)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_TAINT (VALUE obj)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_TAINT_RAW (VALUE obj)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_TAINTABLE (VALUE obj)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_TAINTED (VALUE obj)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RB_OBJ_TAINTED_RAW (VALUE obj)
This function once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global rb_output_fs
Assigning anything other than RUBY_Qnil to this variable is deprecated.
Global rb_output_rs
Assigning anything other than RUBY_Qnil to this variable is deprecated.
Global rb_postponed_job_register (unsigned int flags, rb_postponed_job_func_t func, void *data)
This interface implies that arbitrarily many func's can be enqueued over the lifetime of the program, whilst in reality the registration slots for postponed jobs are a finite resource. This is made clearer by the rb_postponed_job_preregister and rb_postponed_job_trigger functions, and a future version of Ruby might delete this function.
Global rb_postponed_job_register_one (unsigned int flags, rb_postponed_job_func_t func, void *data)
This is deprecated for the same reason as rb_postponed_job_register
Global rb_rs
Assigning anything other than RUBY_Qnil to this variable is deprecated.
Global rb_str_buf_cat2

Use rb_usascii_str_new_cstr instead.

Global rb_str_buf_new2

Use rb_str_buf_new_cstr instead.

Global rb_str_cat2

Use rb_str_cat_cstr instead.

Global rb_str_new2

Use rb_str_new_cstr instead.

Global rb_str_new3

Use rb_str_new_shared instead.

Global rb_str_new4

Use rb_str_new_frozen instead.

Global rb_str_new5

Use rb_str_new_with_class instead.

Global rb_usascii_str_new2

Use rb_usascii_str_new_cstr instead.

Global rb_wait_for_single_fd (int fd, int events, struct timeval *tv)
We now prefer rb_io_maybe_wait() over this one.
Struct RData
Global REALLOC_N

Use RB_REALLOC_N instead.

Global Regexp
Use re_pattern_buffer instead.
Global RFLOAT_VALUE

Use rb_float_value instead.

Global RGENGC_WB_PROTECTED_NODE_CREF
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RHASH_IFNONE (h)
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RSTRUCT_PTR (st)
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global ruby::backward::cxxanyargs::define_method::driver0< T, F >::engine< N, U >::define (T mid, notimpl_type func)
Pass correctly typed function instead.
Global ruby::backward::cxxanyargs::define_method::driver0< T, F >::engine< N, U >::define (T mid, type func)
Pass correctly typed function instead.
Global ruby::backward::cxxanyargs::define_method::driver< T, F >::engine< N, U >::define (VALUE klass, T mid, type func)
Pass correctly typed function instead.
Global ruby::backward::cxxanyargs::rb_block_call (VALUE q, ID w, int e, const VALUE *r, type *t, VALUE y)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_catch (const char *q, type *w, VALUE e)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_catch_obj (VALUE q, type *w, VALUE e)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_define_hooked_variable (const char *q, VALUE *w, type *e, void_type *r)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_define_virtual_variable (const char *q, type *w, void_type *e)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_ensure (type *q, VALUE w, type *e, VALUE r)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_fiber_new (type *q, VALUE w)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_hash_foreach (VALUE q, int_type *w, VALUE e)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_iterate (onearg_type *q, VALUE w, type *e, VALUE r)
This function is obsoleted since long before 2.x era. Do not use it any longer. rb_block_call() is provided instead.
Global ruby::backward::cxxanyargs::rb_ivar_foreach (VALUE q, int_type *w, VALUE e)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_proc_new (type *q, VALUE w)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_rescue (type *q, VALUE w, type *e, VALUE r)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_rescue2 (type *q, VALUE w, type *e, VALUE r,...)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::rb_thread_create (type *q, void *w)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::st_foreach (st_table *q, int_type *w, st_data_t e)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::st_foreach_check (st_table *q, int_type *w, st_data_t e, st_data_t)
Use granular typed overload instead.
Global ruby::backward::cxxanyargs::st_foreach_safe (st_table *q, int_type *w, st_data_t e)
Use granular typed overload instead.
Global ruby::backward::rb_iterate_deprecated (VALUE(*iter)(VALUE), VALUE data1, rb_block_call_func_t bl, VALUE data2)
This is an old API. Use rb_block_call() instead.
Global RUBY_BLOCK_CALL_FUNC_TAKES_BLOCKARG
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_
It seems even in the old days it made no sense...?
Global RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS_AFTER
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_CONST_ID (var, str)
Does anyone use it? Preserved for backward compat.
Global RUBY_CONST_ID_CACHE (result, str)
Does anyone use it? Preserved for backward compat.
Global RUBY_EVENT_SWITCH

Use RUBY_INTERNAL_EVENT_SWITCH instead.

Global RUBY_FL_DUPPED
This flag once was a thing back in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_FL_TAINT
This flag once was a thing back in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_FL_UNTRUSTED
This flag once was a thing back in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_FL_WB_PROTECTED
This flag once was a thing back in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_INTEGER_UNIFICATION
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_UNTYPED_DATA_FUNC (f)
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global RUBY_VM
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global SafeStringValue (v)
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global scan_hex (s, l, e)

Use ruby_scan_hex instead.

Global scan_oct (s, l, e)

Use ruby_scan_oct instead.

Global SIZET2NUM

Use RB_SIZE2NUM instead.

Global SPECIAL_CONST_P

Use RB_SPECIAL_CONST_P instead.

Global SSIZET2NUM

Use RB_SSIZE2NUM instead.

Global ST2FIX

Use RB_ST2FIX instead.

Global STATIC_SYM_P

Use RB_STATIC_SYM_P instead.

Global STRCASECMP

Use st_locale_insensitive_strcasecmp instead.

Global STRNCASECMP

Use st_locale_insensitive_strncasecmp instead.

Global STRTOUL

Use ruby_strtoul instead.

Global SYM2ID

Use RB_SYM2ID instead.

Global SYMBOL_FLAG

Use RUBY_SYMBOL_FLAG instead.

Global SYMBOL_P

Use RB_SYMBOL_P instead.

Global T_ARRAY

Use RUBY_T_ARRAY instead.

Global T_BIGNUM

Use RUBY_T_BIGNUM instead.

Global T_CLASS

Use RUBY_T_CLASS instead.

Global T_COMPLEX

Use RUBY_T_COMPLEX instead.

Global T_DATA

Use RUBY_T_DATA instead.

Global T_FALSE

Use RUBY_T_FALSE instead.

Global T_FILE

Use RUBY_T_FILE instead.

Global T_FIXNUM

Use RUBY_T_FIXNUM instead.

Global T_FLOAT

Use RUBY_T_FLOAT instead.

Global T_HASH

Use RUBY_T_HASH instead.

Global T_ICLASS

Use RUBY_T_ICLASS instead.

Global T_IMEMO

Use RUBY_T_IMEMO instead.

Global T_MASK

Use RUBY_T_MASK instead.

Global T_MATCH

Use RUBY_T_MATCH instead.

Global T_MODULE

Use RUBY_T_MODULE instead.

Global T_MOVED

Use RUBY_T_MOVED instead.

Global T_NIL

Use RUBY_T_NIL instead.

Global T_NODE

Use RUBY_T_NODE instead.

Global T_NONE

Use RUBY_T_NONE instead.

Global T_OBJECT

Use RUBY_T_OBJECT instead.

Global T_RATIONAL

Use RUBY_T_RATIONAL instead.

Global T_REGEXP

Use RUBY_T_REGEXP instead.

Global T_STRING

Use RUBY_T_STRING instead.

Global T_STRUCT

Use RUBY_T_STRUCT instead.

Global T_SYMBOL

Use RUBY_T_SYMBOL instead.

Global T_TRUE

Use RUBY_T_TRUE instead.

Global T_UNDEF

Use RUBY_T_UNDEF instead.

Global T_ZOMBIE

Use RUBY_T_ZOMBIE instead.

Global TOLOWER

Use rb_tolower instead.

Global TOUPPER

Use rb_toupper instead.

Global TYPE (_)

Use rb_type instead.

Global UINT2NUM

Use RB_UINT2NUM instead.

Global ULL2NUM

Use RB_ULL2NUM instead.

Global ULONG2NUM

Use RB_ULONG2NUM instead.

Global UNREACHABLE

Use RBIMPL_UNREACHABLE instead.

Global UNREACHABLE_RETURN

Use RBIMPL_UNREACHABLE_RETURN instead.

Global USE_RGENGC
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global USE_RGENGC_LOGGING_WB_UNPROTECT
This macro seems broken. Setting this to anything other than zero just doesn't compile. We need to KonMari.
Global USE_SYMBOL_AS_METHOD_NAME
This macro once was a thing in the old days, but makes no sense any longer today. Exists here for backwards compatibility only. You can safely forget about it.
Global USHORT2NUM

Use RB_INT2FIX instead.

Global xcalloc

Use ruby_xcalloc instead.

Global xfree

Use ruby_xfree instead.

Global xmalloc

Use ruby_xmalloc instead.

Global xmalloc2

Use ruby_xmalloc2 instead.

Global xrealloc

Use ruby_xrealloc instead.

Global xrealloc2

Use ruby_xrealloc2 instead.

Global ZALLOC

Use RB_ZALLOC instead.

Global ZALLOC_N

Use RB_ZALLOC_N instead.