This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
add PERL_USE_3ARG_SIGHANDLER macro
[perl5.git] / embed.h
diff --git a/embed.h b/embed.h
index 6bbbbe4..0bfaaa8 100644 (file)
--- a/embed.h
+++ b/embed.h
 #define _is_uni_FOO(a,b)       Perl__is_uni_FOO(aTHX_ a,b)
 #define _is_uni_perl_idcont(a) Perl__is_uni_perl_idcont(aTHX_ a)
 #define _is_uni_perl_idstart(a)        Perl__is_uni_perl_idstart(aTHX_ a)
-#define _is_utf8_FOO(a,b,c,d,e,f,g,h)  Perl__is_utf8_FOO(aTHX_ a,b,c,d,e,f,g,h)
-#define _is_utf8_FOO_with_len(a,b,c)   Perl__is_utf8_FOO_with_len(aTHX_ a,b,c)
-#define _is_utf8_idcont(a)     Perl__is_utf8_idcont(aTHX_ a)
-#define _is_utf8_idstart(a)    Perl__is_utf8_idstart(aTHX_ a)
-#define _is_utf8_mark(a)       Perl__is_utf8_mark(aTHX_ a)
-#define _is_utf8_perl_idcont_with_len(a,b)     Perl__is_utf8_perl_idcont_with_len(aTHX_ a,b)
-#define _is_utf8_perl_idstart_with_len(a,b)    Perl__is_utf8_perl_idstart_with_len(aTHX_ a,b)
-#define _is_utf8_xidcont(a)    Perl__is_utf8_xidcont(aTHX_ a)
-#define _is_utf8_xidstart(a)   Perl__is_utf8_xidstart(aTHX_ a)
+#define _is_utf8_FOO(a,b,c)    Perl__is_utf8_FOO(aTHX_ a,b,c)
+#define _is_utf8_perl_idcont(a,b)      Perl__is_utf8_perl_idcont(aTHX_ a,b)
+#define _is_utf8_perl_idstart(a,b)     Perl__is_utf8_perl_idstart(aTHX_ a,b)
 #define _to_uni_fold_flags(a,b,c,d)    Perl__to_uni_fold_flags(aTHX_ a,b,c,d)
-#define _to_utf8_fold_flags(a,b,c,d,e,f,g)     Perl__to_utf8_fold_flags(aTHX_ a,b,c,d,e,f,g)
-#define _to_utf8_lower_flags(a,b,c,d,e,f,g)    Perl__to_utf8_lower_flags(aTHX_ a,b,c,d,e,f,g)
-#define _to_utf8_title_flags(a,b,c,d,e,f,g)    Perl__to_utf8_title_flags(aTHX_ a,b,c,d,e,f,g)
-#define _to_utf8_upper_flags(a,b,c,d,e,f,g)    Perl__to_utf8_upper_flags(aTHX_ a,b,c,d,e,f,g)
+#define _to_utf8_fold_flags(a,b,c,d,e) Perl__to_utf8_fold_flags(aTHX_ a,b,c,d,e)
+#define _to_utf8_lower_flags(a,b,c,d,e)        Perl__to_utf8_lower_flags(aTHX_ a,b,c,d,e)
+#define _to_utf8_title_flags(a,b,c,d,e)        Perl__to_utf8_title_flags(aTHX_ a,b,c,d,e)
+#define _to_utf8_upper_flags(a,b,c,d,e)        Perl__to_utf8_upper_flags(aTHX_ a,b,c,d,e)
 #define _utf8n_to_uvchr_msgs_helper    Perl__utf8n_to_uvchr_msgs_helper
 #define amagic_call(a,b,c,d)   Perl_amagic_call(aTHX_ a,b,c,d)
 #define amagic_deref_call(a,b) Perl_amagic_deref_call(aTHX_ a,b)
 #define init_stacks()          Perl_init_stacks(aTHX)
 #define init_tm(a)             Perl_init_tm(aTHX_ a)
 #define intro_my()             Perl_intro_my(aTHX)
-#ifndef NO_MATHOMS
-#define isALNUM_lazy(a)                Perl_isALNUM_lazy(aTHX_ a)
-#endif
 #define isC9_STRICT_UTF8_CHAR  Perl_isC9_STRICT_UTF8_CHAR
-#ifndef NO_MATHOMS
-#define isIDFIRST_lazy(a)      Perl_isIDFIRST_lazy(aTHX_ a)
-#endif
 #define isSTRICT_UTF8_CHAR     Perl_isSTRICT_UTF8_CHAR
 #define isUTF8_CHAR            Perl_isUTF8_CHAR
 #define is_c9strict_utf8_string_loclen Perl_is_c9strict_utf8_string_loclen
 #define is_safe_syscall(a,b,c,d)       Perl_is_safe_syscall(aTHX_ a,b,c,d)
 #define is_strict_utf8_string_loclen   Perl_is_strict_utf8_string_loclen
 #ifndef NO_MATHOMS
-#define is_uni_alnum(a)                Perl_is_uni_alnum(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_alnum_lc(a)     Perl_is_uni_alnum_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_alnumc(a)       Perl_is_uni_alnumc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_alnumc_lc(a)    Perl_is_uni_alnumc_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_alpha(a)                Perl_is_uni_alpha(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_alpha_lc(a)     Perl_is_uni_alpha_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_ascii(a)                Perl_is_uni_ascii(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_ascii_lc(a)     Perl_is_uni_ascii_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_blank(a)                Perl_is_uni_blank(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_blank_lc(a)     Perl_is_uni_blank_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_cntrl(a)                Perl_is_uni_cntrl(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_cntrl_lc(a)     Perl_is_uni_cntrl_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_digit(a)                Perl_is_uni_digit(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_digit_lc(a)     Perl_is_uni_digit_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_graph(a)                Perl_is_uni_graph(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_graph_lc(a)     Perl_is_uni_graph_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_idfirst(a)      Perl_is_uni_idfirst(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_idfirst_lc(a)   Perl_is_uni_idfirst_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_lower(a)                Perl_is_uni_lower(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_lower_lc(a)     Perl_is_uni_lower_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_print(a)                Perl_is_uni_print(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_print_lc(a)     Perl_is_uni_print_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_punct(a)                Perl_is_uni_punct(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_punct_lc(a)     Perl_is_uni_punct_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_space(a)                Perl_is_uni_space(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_space_lc(a)     Perl_is_uni_space_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_upper(a)                Perl_is_uni_upper(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_upper_lc(a)     Perl_is_uni_upper_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_xdigit(a)       Perl_is_uni_xdigit(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_uni_xdigit_lc(a)    Perl_is_uni_xdigit_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_alnum(a)       Perl_is_utf8_alnum(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_alnumc(a)      Perl_is_utf8_alnumc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_alpha(a)       Perl_is_utf8_alpha(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_ascii(a)       Perl_is_utf8_ascii(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_blank(a)       Perl_is_utf8_blank(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
 #define is_utf8_char           Perl_is_utf8_char
 #endif
 #define is_utf8_char_helper    Perl_is_utf8_char_helper
-#ifndef NO_MATHOMS
-#define is_utf8_cntrl(a)       Perl_is_utf8_cntrl(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_digit(a)       Perl_is_utf8_digit(aTHX_ a)
-#endif
 #define is_utf8_fixed_width_buf_loclen_flags   Perl_is_utf8_fixed_width_buf_loclen_flags
-#ifndef NO_MATHOMS
-#define is_utf8_graph(a)       Perl_is_utf8_graph(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_idcont(a)      Perl_is_utf8_idcont(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_idfirst(a)     Perl_is_utf8_idfirst(aTHX_ a)
-#endif
 #define is_utf8_invariant_string_loc   Perl_is_utf8_invariant_string_loc
-#ifndef NO_MATHOMS
-#define is_utf8_lower(a)       Perl_is_utf8_lower(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_mark(a)                Perl_is_utf8_mark(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_perl_space(a)  Perl_is_utf8_perl_space(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_perl_word(a)   Perl_is_utf8_perl_word(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_posix_digit(a) Perl_is_utf8_posix_digit(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_print(a)       Perl_is_utf8_print(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_punct(a)       Perl_is_utf8_punct(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_space(a)       Perl_is_utf8_space(aTHX_ a)
-#endif
 #define is_utf8_string_flags   Perl_is_utf8_string_flags
 #define is_utf8_string_loclen  Perl_is_utf8_string_loclen
 #define is_utf8_string_loclen_flags    Perl_is_utf8_string_loclen_flags
-#ifndef NO_MATHOMS
-#define is_utf8_upper(a)       Perl_is_utf8_upper(aTHX_ a)
-#endif
 #define is_utf8_valid_partial_char_flags       Perl_is_utf8_valid_partial_char_flags
-#ifndef NO_MATHOMS
-#define is_utf8_xdigit(a)      Perl_is_utf8_xdigit(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_xidcont(a)     Perl_is_utf8_xidcont(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
-#define is_utf8_xidfirst(a)    Perl_is_utf8_xidfirst(aTHX_ a)
-#endif
 #define isinfnan               Perl_isinfnan
 #define leave_adjust_stacks(a,b,c,d)   Perl_leave_adjust_stacks(aTHX_ a,b,c,d)
 #define leave_scope(a)         Perl_leave_scope(aTHX_ a)
 #define thread_locale_init     Perl_thread_locale_init
 #define thread_locale_term     Perl_thread_locale_term
 #define to_uni_lower(a,b,c)    Perl_to_uni_lower(aTHX_ a,b,c)
-#ifndef NO_MATHOMS
-#define to_uni_lower_lc(a)     Perl_to_uni_lower_lc(aTHX_ a)
-#endif
 #define to_uni_title(a,b,c)    Perl_to_uni_title(aTHX_ a,b,c)
-#ifndef NO_MATHOMS
-#define to_uni_title_lc(a)     Perl_to_uni_title_lc(aTHX_ a)
-#endif
 #define to_uni_upper(a,b,c)    Perl_to_uni_upper(aTHX_ a,b,c)
 #ifndef NO_MATHOMS
-#define to_uni_upper_lc(a)     Perl_to_uni_upper_lc(aTHX_ a)
-#endif
-#ifndef NO_MATHOMS
 #define unpack_str(a,b,c,d,e,f,g,h)    Perl_unpack_str(aTHX_ a,b,c,d,e,f,g,h)
 #endif
 #define unpackstring(a,b,c,d,e)        Perl_unpackstring(aTHX_ a,b,c,d,e)
 #define whichsig_sv(a)         Perl_whichsig_sv(aTHX_ a)
 #define wrap_keyword_plugin(a,b)       Perl_wrap_keyword_plugin(aTHX_ a,b)
 #define wrap_op_checker(a,b,c) Perl_wrap_op_checker(aTHX_ a,b,c)
-#if !(defined(HAS_SIGACTION) && defined(SA_SIGINFO))
+#if !(defined(PERL_USE_3ARG_SIGHANDLER))
 #define csighandler            Perl_csighandler
 #endif
 #if !defined(EBCDIC)
 #define cx_pushsub(a,b,c,d)    Perl_cx_pushsub(aTHX_ a,b,c,d)
 #define cx_pushwhen(a)         Perl_cx_pushwhen(aTHX_ a)
 #define cx_topblock(a)         Perl_cx_topblock(aTHX_ a)
+#define gimme_V()              Perl_gimme_V(aTHX)
 #endif
 #if defined(DEBUGGING)
 #define pad_setsv(a,b)         Perl_pad_setsv(aTHX_ a,b)
 #define pad_sv(a)              Perl_pad_sv(aTHX_ a)
 #endif
-#if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
-#define csighandler            Perl_csighandler
-#endif
 #if defined(HAVE_INTERP_INTERN)
 #define sys_intern_clear()     Perl_sys_intern_clear(aTHX)
 #define sys_intern_init()      Perl_sys_intern_init(aTHX)
 #define warn_nocontext         Perl_warn_nocontext
 #define warner_nocontext       Perl_warner_nocontext
 #endif
+#if defined(PERL_USE_3ARG_SIGHANDLER)
+#define csighandler            Perl_csighandler
+#endif
 #if defined(UNLINK_ALL_VERSIONS)
 #define unlnk(a)               Perl_unlnk(aTHX_ a)
 #endif
 #define PerlIO_unread(a,b,c)   Perl_PerlIO_unread(aTHX_ a,b,c)
 #define PerlIO_write(a,b,c)    Perl_PerlIO_write(aTHX_ a,b,c)
 #endif
-#if defined(USE_QUADMATH)
-#define quadmath_format_needed Perl_quadmath_format_needed
-#define quadmath_format_single Perl_quadmath_format_single
-#endif
 #if defined(WIN32) || defined(__SYMBIAN32__) || defined(VMS)
 #define do_aspawn(a,b,c)       Perl_do_aspawn(aTHX_ a,b,c)
 #define do_spawn(a)            Perl_do_spawn(aTHX_ a)
 #define skipspace_flags(a,b)   Perl_skipspace_flags(aTHX_ a,b)
 #define sv_magicext_mglob(a)   Perl_sv_magicext_mglob(aTHX_ a)
 #define sv_only_taint_gmagic   Perl_sv_only_taint_gmagic
-#define swash_fetch(a,b,c)     Perl_swash_fetch(aTHX_ a,b,c)
-#define swash_init(a,b,c,d,e)  Perl_swash_init(aTHX_ a,b,c,d,e)
 #define utf16_to_utf8(a,b,c,d) Perl_utf16_to_utf8(aTHX_ a,b,c,d)
 #define utf16_to_utf8_reversed(a,b,c,d)        Perl_utf16_to_utf8_reversed(aTHX_ a,b,c,d)
 #define validate_proto(a,b,c,d)        Perl_validate_proto(aTHX_ a,b,c,d)
 #define _invlist_array_init    S__invlist_array_init
 #define get_invlist_previous_index_addr        S_get_invlist_previous_index_addr
 #define invlist_clear(a)       S_invlist_clear(aTHX_ a)
-#define invlist_extend(a,b)    S_invlist_extend(aTHX_ a,b)
 #define invlist_max            S_invlist_max
 #define invlist_previous_index S_invlist_previous_index
 #define invlist_replace_list_destroys_src(a,b) S_invlist_replace_list_destroys_src(aTHX_ a,b)
-#define invlist_set_len(a,b,c) S_invlist_set_len(aTHX_ a,b,c)
 #define invlist_set_previous_index     S_invlist_set_previous_index
 #define invlist_trim           S_invlist_trim
 #    endif
 #define dump_trie_interim_list(a,b,c,d,e)      S_dump_trie_interim_list(aTHX_ a,b,c,d,e)
 #define dump_trie_interim_table(a,b,c,d,e)     S_dump_trie_interim_table(aTHX_ a,b,c,d,e)
 #define dumpuntil(a,b,c,d,e,f,g,h)     S_dumpuntil(aTHX_ a,b,c,d,e,f,g,h)
-#define put_charclass_bitmap_innards(a,b,c,d,e,f)      S_put_charclass_bitmap_innards(aTHX_ a,b,c,d,e,f)
+#define put_charclass_bitmap_innards(a,b,c,d,e,f,g)    S_put_charclass_bitmap_innards(aTHX_ a,b,c,d,e,f,g)
 #define put_charclass_bitmap_innards_common(a,b,c,d,e,f)       S_put_charclass_bitmap_innards_common(aTHX_ a,b,c,d,e,f)
 #define put_charclass_bitmap_innards_invlist(a,b)      S_put_charclass_bitmap_innards_invlist(aTHX_ a,b)
 #define put_code_point(a,b)    S_put_code_point(aTHX_ a,b)
 #define sv_setsv_cow(a,b)      Perl_sv_setsv_cow(aTHX_ a,b)
 #  endif
 #  if defined(PERL_CORE) || defined (PERL_EXT)
-#define is_utf8_non_invariant_string   S_is_utf8_non_invariant_string
+#define is_utf8_non_invariant_string   Perl_is_utf8_non_invariant_string
 #define sv_or_pv_pos_u2b(a,b,c,d)      S_sv_or_pv_pos_u2b(aTHX_ a,b,c,d)
 #  endif
 #  if defined(PERL_CORE) || defined(PERL_EXT)
 #define isSCRIPT_RUN(a,b,c)    Perl_isSCRIPT_RUN(aTHX_ a,b,c)
 #define variant_under_utf8_count       S_variant_under_utf8_count
 #  endif
+#  if defined(PERL_IN_GV_C) || defined(PERL_IN_UNIVERSAL_C)
+#define gv_stashsvpvn_cached(a,b,c,d)  Perl_gv_stashsvpvn_cached(aTHX_ a,b,c,d)
+#  endif
 #  if defined(PERL_IN_PP_C) || defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UNIVERSAL_C)
 #define get_regex_charset_name S_get_regex_charset_name
 #  endif
 #  if defined(PERL_IN_REGCOMP_C)
-#define _make_exactf_invlist(a,b)      S__make_exactf_invlist(aTHX_ a,b)
 #define add_above_Latin1_folds(a,b,c)  S_add_above_Latin1_folds(aTHX_ a,b,c)
-#define add_cp_to_invlist(a,b) S_add_cp_to_invlist(aTHX_ a,b)
 #define add_data               S_add_data
 #define add_multi_match(a,b,c) S_add_multi_match(aTHX_ a,b,c)
 #define change_engine_size(a,b)        S_change_engine_size(aTHX_ a,b)
 #define edit_distance          S_edit_distance
 #define get_ANYOFM_contents(a) S_get_ANYOFM_contents(aTHX_ a)
 #define get_ANYOF_cp_list_for_ssc(a,b) S_get_ANYOF_cp_list_for_ssc(aTHX_ a,b)
-#define get_invlist_iter_addr  S_get_invlist_iter_addr
 #define grok_bslash_N(a,b,c,d,e,f,g)   S_grok_bslash_N(aTHX_ a,b,c,d,e,f,g)
 #define handle_named_backref(a,b,c,d)  S_handle_named_backref(aTHX_ a,b,c,d)
 #define handle_possible_posix(a,b,c,d,e)       S_handle_possible_posix(aTHX_ a,b,c,d,e)
 #define handle_regex_sets(a,b,c,d,e)   S_handle_regex_sets(aTHX_ a,b,c,d,e)
 #define handle_user_defined_property(a,b,c,d,e,f,g,h,i,j)      Perl_handle_user_defined_property(aTHX_ a,b,c,d,e,f,g,h,i,j)
 #define invlist_contents(a,b)  S_invlist_contents(aTHX_ a,b)
-#define invlist_highest                S_invlist_highest
 #define invlist_is_iterating   S_invlist_is_iterating
-#define invlist_iterfinish     S_invlist_iterfinish
-#define invlist_iterinit       S_invlist_iterinit
-#define invlist_iternext       S_invlist_iternext
 #define is_ssc_worth_it                S_is_ssc_worth_it
 #define join_exact(a,b,c,d,e,f,g)      S_join_exact(aTHX_ a,b,c,d,e,f,g)
+#define make_exactf_invlist(a,b)       S_make_exactf_invlist(aTHX_ a,b)
 #define make_trie(a,b,c,d,e,f,g,h)     S_make_trie(aTHX_ a,b,c,d,e,f,g,h)
 #define new_regcurly           S_new_regcurly
 #define nextchar(a)            S_nextchar(aTHX_ a)
 #define ssc_union(a,b,c)       S_ssc_union(aTHX_ a,b,c)
 #define study_chunk(a,b,c,d,e,f,g,h,i,j,k)     S_study_chunk(aTHX_ a,b,c,d,e,f,g,h,i,j,k)
 #  endif
-#  if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C)
+#  if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C) || defined(PERL_IN_OP_C)
 #define _invlist_dump(a,b,c,d) Perl__invlist_dump(aTHX_ a,b,c,d)
 #  endif
+#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_DOOP_C)
+#define add_cp_to_invlist(a,b) S_add_cp_to_invlist(aTHX_ a,b)
+#define get_invlist_iter_addr  S_get_invlist_iter_addr
+#define invlist_extend(a,b)    S_invlist_extend(aTHX_ a,b)
+#define invlist_highest                S_invlist_highest
+#define invlist_iterfinish     S_invlist_iterfinish
+#define invlist_iterinit       S_invlist_iterinit
+#define invlist_iternext       S_invlist_iternext
+#define invlist_set_len(a,b,c) S_invlist_set_len(aTHX_ a,b,c)
+#  endif
 #  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PERL_C) || defined(PERL_IN_UTF8_C)
 #define _invlistEQ(a,b,c)      Perl__invlistEQ(aTHX_ a,b,c)
 #define _new_invlist_C_array(a)        Perl__new_invlist_C_array(aTHX_ a)
 #endif
 #define regprop(a,b,c,d,e)     Perl_regprop(aTHX_ a,b,c,d,e)
 #  endif
-#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UTF8_C) || defined(PERL_IN_PP_C)
+#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C)  || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UTF8_C)           || defined(PERL_IN_PP_C) || defined(PERL_IN_OP_C)               || defined(PERL_IN_DOOP_C)
 #define _invlist_contains_cp   S__invlist_contains_cp
 #define _invlist_len           S__invlist_len
 #define _invlist_search                Perl__invlist_search
 #define grok_bslash_x(a,b,c,d,e,f,g,h) Perl_grok_bslash_x(aTHX_ a,b,c,d,e,f,g,h)
 #define regcurly               S_regcurly
 #  endif
-#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_UTF8_C)
+#  if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_UTF8_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_DOOP_C)
 #define _add_range_to_invlist(a,b,c)   Perl__add_range_to_invlist(aTHX_ a,b,c)
 #define _invlist_intersection_maybe_complement_2nd(a,b,c,d)    Perl__invlist_intersection_maybe_complement_2nd(aTHX_ a,b,c,d)
 #define _invlist_invert(a)     Perl__invlist_invert(aTHX_ a)
 #define init_named_cv(a,b)     Perl_init_named_cv(aTHX_ a,b)
 #define init_uniprops()                Perl_init_uniprops(aTHX)
 #define invert(a)              Perl_invert(aTHX_ a)
+#define invmap_dump(a,b)       Perl_invmap_dump(aTHX_ a,b)
 #define io_close(a,b,c,d)      Perl_io_close(aTHX_ a,b,c,d)
 #define isinfnansv(a)          Perl_isinfnansv(aTHX_ a)
 #define jmaybe(a)              Perl_jmaybe(aTHX_ a)
 #define my_nl_langinfo         S_my_nl_langinfo
 #    endif
 #  endif
-#  if !(defined(HAS_SIGACTION) && defined(SA_SIGINFO))
-#define sighandler             Perl_sighandler
-#  endif
 #  if !(defined(PERL_DEFAULT_DO_EXEC3_IMPLEMENTATION))
 #define do_exec(a)             Perl_do_exec(aTHX_ a)
 #  endif
+#  if !(defined(PERL_USE_3ARG_SIGHANDLER))
+#define sighandler             Perl_sighandler
+#  endif
 #  if !(defined(_MSC_VER))
 #define magic_regdatum_set(a,b)        Perl_magic_regdatum_set(aTHX_ a,b)
 #  endif
 #  if !defined(WIN32)
 #define do_exec3(a,b,c)                Perl_do_exec3(aTHX_ a,b,c)
 #  endif
+#  if 0        /* Not currently used, but may be needed in the future */
+#    if defined(PERL_IN_UTF8_C)
+#define warn_on_first_deprecated_use(a,b,c,d,e)        S_warn_on_first_deprecated_use(aTHX_ a,b,c,d,e)
+#    endif
+#  endif
 #  if defined (HAS_SOCKETPAIR) ||     (defined (HAS_SOCKET) && defined(SOCK_DGRAM) &&  defined(AF_INET) && defined(PF_INET))
 #define PerlSock_socketpair_cloexec(a,b,c,d)   Perl_PerlSock_socketpair_cloexec(aTHX_ a,b,c,d)
 #  endif
 #  if defined(HAS_PIPE)
 #define PerlProc_pipe_cloexec(a)       Perl_PerlProc_pipe_cloexec(aTHX_ a)
 #  endif
-#  if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
-#define sighandler             Perl_sighandler
-#  endif
 #  if defined(HAS_SOCKET)
 #define PerlSock_accept_cloexec(a,b,c) Perl_PerlSock_accept_cloexec(aTHX_ a,b,c)
 #define PerlSock_socket_cloexec(a,b,c) Perl_PerlSock_socket_cloexec(aTHX_ a,b,c)
 #define openn_setup(a,b,c,d,e,f)       S_openn_setup(aTHX_ a,b,c,d,e,f)
 #  endif
 #  if defined(PERL_IN_DOOP_C)
-#define do_trans_complex(a)    S_do_trans_complex(aTHX_ a)
-#define do_trans_complex_utf8(a)       S_do_trans_complex_utf8(aTHX_ a)
-#define do_trans_count(a)      S_do_trans_count(aTHX_ a)
-#define do_trans_count_utf8(a) S_do_trans_count_utf8(aTHX_ a)
-#define do_trans_simple(a)     S_do_trans_simple(aTHX_ a)
-#define do_trans_simple_utf8(a)        S_do_trans_simple_utf8(aTHX_ a)
+#define do_trans_complex(a,b)  S_do_trans_complex(aTHX_ a,b)
+#define do_trans_count(a,b)    S_do_trans_count(aTHX_ a,b)
+#define do_trans_count_invmap(a,b)     S_do_trans_count_invmap(aTHX_ a,b)
+#define do_trans_invmap(a,b)   S_do_trans_invmap(aTHX_ a,b)
+#define do_trans_simple(a,b)   S_do_trans_simple(aTHX_ a,b)
 #  endif
 #  if defined(PERL_IN_DUMP_C)
 #define deb_curcv(a)           S_deb_curcv(aTHX_ a)
 #define gv_magicalize(a,b,c,d,e)       S_gv_magicalize(aTHX_ a,b,c,d,e)
 #define gv_magicalize_isa(a)   S_gv_magicalize_isa(aTHX_ a)
 #define gv_stashpvn_internal(a,b,c)    S_gv_stashpvn_internal(aTHX_ a,b,c)
-#define gv_stashsvpvn_cached(a,b,c,d)  S_gv_stashsvpvn_cached(aTHX_ a,b,c,d)
 #define maybe_multimagic_gv(a,b,c)     S_maybe_multimagic_gv(aTHX_ a,b,c)
 #define parse_gv_stash_name(a,b,c,d,e,f,g,h)   S_parse_gv_stash_name(aTHX_ a,b,c,d,e,f,g,h)
 #define require_tie_mod(a,b,c,d,e)     S_require_tie_mod(aTHX_ a,b,c,d,e)
 #define yywarn(a,b)            S_yywarn(aTHX_ a,b)
 #  endif
 #  if defined(PERL_IN_UNIVERSAL_C)
-#define isa_lookup(a,b,c,d)    S_isa_lookup(aTHX_ a,b,c,d)
+#define isa_lookup(a,b,c,d,e)  S_isa_lookup(aTHX_ a,b,c,d,e)
+#define sv_derived_from_svpvn(a,b,c,d,e)       S_sv_derived_from_svpvn(aTHX_ a,b,c,d,e)
 #  endif
 #  if defined(PERL_IN_UTF8_C)
 #define _to_utf8_case(a,b,c,d,e,f,g,h,i)       S__to_utf8_case(aTHX_ a,b,c,d,e,f,g,h,i)
-#define check_and_deprecate(a,b,c,d,e,f)       S_check_and_deprecate(aTHX_ a,b,c,d,e,f)
 #define check_locale_boundary_crossing(a,b,c,d)        S_check_locale_boundary_crossing(aTHX_ a,b,c,d)
 #define does_utf8_overflow     S_does_utf8_overflow
 #define isFF_OVERLONG          S_isFF_OVERLONG
-#define is_utf8_common(a,b)    S_is_utf8_common(aTHX_ a,b)
-#define is_utf8_common_with_len(a,b,c) S_is_utf8_common_with_len(aTHX_ a,b,c)
+#define is_utf8_common(a,b,c)  S_is_utf8_common(aTHX_ a,b,c)
 #define is_utf8_overlong_given_start_byte_ok   S_is_utf8_overlong_given_start_byte_ok
 #define new_msg_hv(a,b,c)      S_new_msg_hv(aTHX_ a,b,c)
-#define swash_scan_list_line(a,b,c,d,e,f,g)    S_swash_scan_list_line(aTHX_ a,b,c,d,e,f,g)
-#define swatch_get(a,b,c)      S_swatch_get(aTHX_ a,b,c)
 #define to_lower_latin1                S_to_lower_latin1
 #define turkic_fc(a,b,c,d)     S_turkic_fc(aTHX_ a,b,c,d)
 #define turkic_lc(a,b,c,d)     S_turkic_lc(aTHX_ a,b,c,d)
 #define turkic_uc(a,b,c,d)     S_turkic_uc(aTHX_ a,b,c,d)
 #define unexpected_non_continuation_text(a,b,c,d)      S_unexpected_non_continuation_text(aTHX_ a,b,c,d)
-#define warn_on_first_deprecated_use(a,b,c,d,e)        S_warn_on_first_deprecated_use(aTHX_ a,b,c,d,e)
 #  endif
 #  if defined(PERL_IN_UTF8_C) || defined(PERL_IN_PP_C)
 #define _to_upper_title_latin1(a,b,c,d)        Perl__to_upper_title_latin1(aTHX_ a,b,c,d)
 #  if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C)
 #define pidgone(a,b)           S_pidgone(aTHX_ a,b)
 #  endif
+#  if defined(PERL_USE_3ARG_SIGHANDLER)
+#define sighandler             Perl_sighandler
+#  endif
 #  if defined(USE_C_BACKTRACE)
 #define get_c_backtrace(a,b)   Perl_get_c_backtrace(aTHX_ a,b)
 #  endif
 #define PerlIO_restore_errno(a)        Perl_PerlIO_restore_errno(aTHX_ a)
 #define PerlIO_save_errno(a)   Perl_PerlIO_save_errno(aTHX_ a)
 #  endif
+#  if defined(USE_QUADMATH)
+#define quadmath_format_needed Perl_quadmath_format_needed
+#define quadmath_format_valid  Perl_quadmath_format_valid
+#  endif
 #  if defined(_MSC_VER)
 #define magic_regdatum_set(a,b)        Perl_magic_regdatum_set(aTHX_ a,b)
 #  endif