This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
sv_2pv_nolen, sv_2pvbyte_nolen and sv_2pvutf8_nolen can all be replaced
[perl5.git] / embed.h
diff --git a/embed.h b/embed.h
index a8a8f3a..e41c68a 100644 (file)
--- a/embed.h
+++ b/embed.h
 #define do_eof                 Perl_do_eof
 #define do_exec                        Perl_do_exec
 #endif
-#if defined(WIN32) || defined(SYMBIAN)
+#if defined(WIN32) || defined(__SYMBIAN32__)
 #define do_aspawn              Perl_do_aspawn
 #define do_spawn               Perl_do_spawn
 #define do_spawn_nowait                Perl_do_spawn_nowait
 #define is_utf8_char           Perl_is_utf8_char
 #define is_utf8_string         Perl_is_utf8_string
 #define is_utf8_string_loc     Perl_is_utf8_string_loc
+#define is_utf8_string_loclen  Perl_is_utf8_string_loclen
 #define is_utf8_alnum          Perl_is_utf8_alnum
 #define is_utf8_alnumc         Perl_is_utf8_alnumc
 #define is_utf8_idfirst                Perl_is_utf8_idfirst
 #define magic_set              Perl_magic_set
 #define magic_setamagic                Perl_magic_setamagic
 #define magic_setarylen                Perl_magic_setarylen
+#define magic_freearylen_p     Perl_magic_freearylen_p
 #define magic_setbm            Perl_magic_setbm
 #define magic_setdbline                Perl_magic_setdbline
 #define magic_setdefelem       Perl_magic_setdefelem
 #define sortsv                 Perl_sortsv
 #define mg_clear               Perl_mg_clear
 #define mg_copy                        Perl_mg_copy
+#ifdef PERL_CORE
+#define mg_localize            Perl_mg_localize
+#endif
 #define mg_find                        Perl_mg_find
 #define mg_free                        Perl_mg_free
 #define mg_get                 Perl_mg_get
 #define newSVnv                        Perl_newSVnv
 #define newSVpv                        Perl_newSVpv
 #define newSVpvn               Perl_newSVpvn
+#define newSVhek               Perl_newSVhek
 #define newSVpvn_share         Perl_newSVpvn_share
 #define newSVpvf               Perl_newSVpvf
 #define vnewSVpvf              Perl_vnewSVpvf
 #define scan_version           Perl_scan_version
 #define new_version            Perl_new_version
 #define upg_version            Perl_upg_version
+#define vverify                        Perl_vverify
 #define vnumify                        Perl_vnumify
 #define vnormal                        Perl_vnormal
 #define vstringify             Perl_vstringify
 #define call_pv                        Perl_call_pv
 #define call_sv                        Perl_call_sv
 #define despatch_signals       Perl_despatch_signals
+#define doref                  Perl_doref
 #define eval_pv                        Perl_eval_pv
 #define eval_sv                        Perl_eval_sv
 #define get_sv                 Perl_get_sv
 #define require_pv             Perl_require_pv
 #define pack_cat               Perl_pack_cat
 #define packlist               Perl_packlist
+#ifdef PERL_USES_PL_PIDSTATUS
 #ifdef PERL_CORE
 #define pidgone                        Perl_pidgone
 #endif
+#endif
 #define pmflag                 Perl_pmflag
 #ifdef PERL_CORE
 #define pmruntime              Perl_pmruntime
 #endif
 #define push_scope             Perl_push_scope
 #ifdef PERL_CORE
-#define ref                    Perl_ref
 #define refkids                        Perl_refkids
 #endif
 #define regdump                        Perl_regdump
 #endif
 #endif
 #define savepv                 Perl_savepv
-#define savesharedpv           Perl_savesharedpv
 #define savepvn                        Perl_savepvn
+#define savesharedpv           Perl_savesharedpv
+#define savesvpv               Perl_savesvpv
 #define savestack_grow         Perl_savestack_grow
 #define savestack_grow_cnt     Perl_savestack_grow_cnt
 #define save_aelem             Perl_save_aelem
 #endif
 #ifdef PERL_CORE
 #define setdefout              Perl_setdefout
+#endif
 #define share_hek              Perl_share_hek
+#if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
+#ifdef PERL_CORE
+#define sighandler             Perl_sighandler
+#endif
+#define csighandler            Perl_csighandler
+#else
+#ifdef PERL_CORE
 #define sighandler             Perl_sighandler
 #endif
 #define csighandler            Perl_csighandler
+#endif
 #define stack_grow             Perl_stack_grow
 #define start_subparse         Perl_start_subparse
 #ifdef PERL_CORE
 #define sv_setref_pvn          Perl_sv_setref_pvn
 #define sv_setpv               Perl_sv_setpv
 #define sv_setpvn              Perl_sv_setpvn
-#define sv_taint               Perl_sv_taint
 #define sv_tainted             Perl_sv_tainted
 #define sv_unmagic             Perl_sv_unmagic
-#define sv_unref               Perl_sv_unref
 #define sv_unref_flags         Perl_sv_unref_flags
 #define sv_untaint             Perl_sv_untaint
 #define sv_upgrade             Perl_sv_upgrade
 #define do_sv_dump             Perl_do_sv_dump
 #define magic_dump             Perl_magic_dump
 #define reginitcolors          Perl_reginitcolors
-#define sv_2pv_nolen           Perl_sv_2pv_nolen
-#define sv_2pvutf8_nolen       Perl_sv_2pvutf8_nolen
-#define sv_2pvbyte_nolen       Perl_sv_2pvbyte_nolen
 #define sv_utf8_downgrade      Perl_sv_utf8_downgrade
 #define sv_utf8_encode         Perl_sv_utf8_encode
 #define sv_utf8_decode         Perl_sv_utf8_decode
-#define sv_force_normal                Perl_sv_force_normal
 #define sv_force_normal_flags  Perl_sv_force_normal_flags
 #define tmps_grow              Perl_tmps_grow
 #define sv_rvweaken            Perl_sv_rvweaken
 #define ss_dup                 Perl_ss_dup
 #define any_dup                        Perl_any_dup
 #define he_dup                 Perl_he_dup
+#define hek_dup                        Perl_hek_dup
 #define re_dup                 Perl_re_dup
 #define fp_dup                 Perl_fp_dup
 #define dirp_dup               Perl_dirp_dup
 #define ptr_table_free         Perl_ptr_table_free
 #  if defined(HAVE_INTERP_INTERN)
 #define sys_intern_dup         Perl_sys_intern_dup
+#  endif
+#endif
+#if defined(HAVE_INTERP_INTERN)
 #define sys_intern_clear       Perl_sys_intern_clear
 #define sys_intern_init                Perl_sys_intern_init
-#  endif
 #endif
 #define custom_op_name         Perl_custom_op_name
 #define custom_op_desc         Perl_custom_op_desc
-#if defined(PERL_COPY_ON_WRITE)
+#if defined(PERL_OLD_COPY_ON_WRITE)
 #ifdef PERL_CORE
 #define sv_release_IVX         Perl_sv_release_IVX
 #endif
 #define hsplit                 S_hsplit
 #define hfreeentries           S_hfreeentries
 #define new_he                 S_new_he
-#define del_he                 S_del_he
 #define save_hek_flags         S_save_hek_flags
 #define hv_magic_check         S_hv_magic_check
 #define unshare_hek_or_pvn     S_unshare_hek_or_pvn
 #define share_hek_flags                S_share_hek_flags
 #define hv_notallowed          S_hv_notallowed
+#define hv_auxinit             S_hv_auxinit
+#define hv_delete_common       S_hv_delete_common
+#define hv_fetch_common                S_hv_fetch_common
 #endif
 #endif
 #if defined(PERL_IN_MG_C) || defined(PERL_DECL_PROT)
 #define save_magic             S_save_magic
 #define magic_methpack         S_magic_methpack
 #define magic_methcall         S_magic_methcall
+#define restore_magic          S_restore_magic
+#define unwind_handler_stack   S_unwind_handler_stack
 #endif
 #endif
 #if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
 #define ck_anoncode            Perl_ck_anoncode
 #define ck_bitop               Perl_ck_bitop
 #define ck_concat              Perl_ck_concat
 #define ck_svconst             Perl_ck_svconst
 #define ck_trunc               Perl_ck_trunc
 #define ck_unpack              Perl_ck_unpack
-#ifdef PERL_CORE
 #define is_handle_constructor  S_is_handle_constructor
 #define is_list_assignment     S_is_list_assignment
 #define cop_free               S_cop_free
 #define div128                 S_div128
 #define group_end              S_group_end
 #define get_num                        S_get_num
+#define need_utf8              S_need_utf8
+#define first_symbol           S_first_symbol
 #endif
 #endif
 #if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)
 #define save_scalar_at         S_save_scalar_at
 #endif
 #endif
+#if defined(PERL_IN_GV_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT)
+#endif
 #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
+#define uiv_2buf               S_uiv_2buf
 #define asIV                   S_asIV
 #define asUV                   S_asUV
-#define new_xnv                        S_new_xnv
-#define new_xpv                        S_new_xpv
-#define new_xpviv              S_new_xpviv
-#define new_xpvnv              S_new_xpvnv
-#define new_xpvcv              S_new_xpvcv
-#define new_xpvav              S_new_xpvav
-#define new_xpvhv              S_new_xpvhv
-#define new_xpvmg              S_new_xpvmg
-#define new_xpvgv              S_new_xpvgv
-#define new_xpvlv              S_new_xpvlv
-#define new_xpvbm              S_new_xpvbm
-#define del_xnv                        S_del_xnv
-#define del_xpv                        S_del_xpv
-#define del_xpviv              S_del_xpviv
-#define del_xpvnv              S_del_xpvnv
-#define del_xpvcv              S_del_xpvcv
-#define del_xpvav              S_del_xpvav
-#define del_xpvhv              S_del_xpvhv
-#define del_xpvmg              S_del_xpvmg
-#define del_xpvgv              S_del_xpvgv
-#define del_xpvlv              S_del_xpvlv
-#define del_xpvbm              S_del_xpvbm
 #define sv_unglob              S_sv_unglob
 #define not_a_number           S_not_a_number
 #define visit                  S_visit
-#define sv_add_backref         S_sv_add_backref
 #define sv_del_backref         S_sv_del_backref
 #define varname                        S_varname
 #endif
 #ifdef PERL_CORE
 #define expect_number          S_expect_number
 #endif
-#  if defined(USE_ITHREADS)
-#ifdef PERL_CORE
-#define gv_share               S_gv_share
-#endif
-#  endif
 #ifdef PERL_CORE
 #define utf8_mg_pos            S_utf8_mg_pos
 #define utf8_mg_pos_init       S_utf8_mg_pos_init
 #endif
-#if defined(PERL_COPY_ON_WRITE)
+#if defined(PERL_OLD_COPY_ON_WRITE)
 #ifdef PERL_CORE
 #define sv_release_COW         S_sv_release_COW
 #endif
 #define sublex_start           S_sublex_start
 #define filter_gets            S_filter_gets
 #define find_in_my_stash       S_find_in_my_stash
+#define tokenize_use           S_tokenize_use
 #define new_constant           S_new_constant
 #endif
 #  if defined(DEBUGGING)
 #define depcom                 S_depcom
 #define incl_perldb            S_incl_perldb
 #endif
-#if 0
-#ifdef PERL_CORE
-#define utf16_textfilter       S_utf16_textfilter
-#define utf16rev_textfilter    S_utf16rev_textfilter
-#endif
-#endif
 #  if defined(PERL_CR_FILTER)
 #ifdef PERL_CORE
 #define cr_textfilter          S_cr_textfilter
 #ifdef PERL_CORE
 #define closest_cop            S_closest_cop
 #define mess_alloc             S_mess_alloc
+#define vdie_croak_common      S_vdie_croak_common
+#define vdie_common            S_vdie_common
 #endif
 #endif
 #if defined(PERL_IN_NUMERIC_C) || defined(PERL_DECL_PROT)
 #define mulexp10               S_mulexp10
 #endif
 #endif
+#if defined(PERL_IN_UTF8_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define is_utf8_char_slow      S_is_utf8_char_slow
+#endif
+#endif
 #define sv_setsv_flags         Perl_sv_setsv_flags
 #define sv_catpvn_flags                Perl_sv_catpvn_flags
 #define sv_catsv_flags         Perl_sv_catsv_flags
 #define sv_copypv              Perl_sv_copypv
 #define my_atof2               Perl_my_atof2
 #define my_socketpair          Perl_my_socketpair
-#ifdef PERL_COPY_ON_WRITE
+#ifdef PERL_OLD_COPY_ON_WRITE
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define sv_setsv_cow           Perl_sv_setsv_cow
 #endif
 #endif
 #endif
 #define save_set_svflags       Perl_save_set_svflags
-#if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT)
-#ifdef PERL_CORE
-#define hv_delete_common       S_hv_delete_common
-#define hv_fetch_common                S_hv_fetch_common
-#endif
-#endif
-#define hv_clear_placeholders  Perl_hv_clear_placeholders
 #define hv_scalar              Perl_hv_scalar
+#define hv_name_set            Perl_hv_name_set
+#define hv_clear_placeholders  Perl_hv_clear_placeholders
 #ifdef PERL_CORE
 #define magic_scalarpack       Perl_magic_scalarpack
 #endif
 #ifdef PERL_CORE
 #define is_gv_magical_sv       Perl_is_gv_magical_sv
 #endif
-#define savesvpv               Perl_savesvpv
+#define stashpv_hvname_match   Perl_stashpv_hvname_match
+#ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP
+#ifdef PERL_CORE
+#define dump_sv_child          Perl_dump_sv_child
+#endif
+#endif
+#ifdef PERL_DONT_CREATE_GVSV
+#define gv_SVadd               Perl_gv_SVadd
+#endif
+#ifdef PERL_CORE
+#define offer_nice_chunk       Perl_offer_nice_chunk
+#endif
+#ifndef SPRINTF_RETURNS_STRLEN
+#endif
 #define ck_anoncode            Perl_ck_anoncode
 #define ck_bitop               Perl_ck_bitop
 #define ck_concat              Perl_ck_concat
 #define do_eof(a)              Perl_do_eof(aTHX_ a)
 #define do_exec(a)             Perl_do_exec(aTHX_ a)
 #endif
-#if defined(WIN32) || defined(SYMBIAN)
+#if defined(WIN32) || defined(__SYMBIAN32__)
 #define do_aspawn(a,b,c)       Perl_do_aspawn(aTHX_ a,b,c)
 #define do_spawn(a)            Perl_do_spawn(aTHX_ a)
 #define do_spawn_nowait(a)     Perl_do_spawn_nowait(aTHX_ a)
 #define do_vecget(a,b,c)       Perl_do_vecget(aTHX_ a,b,c)
 #define do_vecset(a)           Perl_do_vecset(aTHX_ a)
 #define do_vop(a,b,c,d)                Perl_do_vop(aTHX_ a,b,c,d)
-#define dofile(a)              Perl_dofile(aTHX_ a)
+#define dofile(a,b)            Perl_dofile(aTHX_ a,b)
 #endif
 #define dowantarray()          Perl_dowantarray(aTHX)
 #define dump_all()             Perl_dump_all(aTHX)
 #define is_utf8_char(a)                Perl_is_utf8_char(aTHX_ a)
 #define is_utf8_string(a,b)    Perl_is_utf8_string(aTHX_ a,b)
 #define is_utf8_string_loc(a,b,c)      Perl_is_utf8_string_loc(aTHX_ a,b,c)
+#define is_utf8_string_loclen(a,b,c,d) Perl_is_utf8_string_loclen(aTHX_ a,b,c,d)
 #define is_utf8_alnum(a)       Perl_is_utf8_alnum(aTHX_ a)
 #define is_utf8_alnumc(a)      Perl_is_utf8_alnumc(aTHX_ a)
 #define is_utf8_idfirst(a)     Perl_is_utf8_idfirst(aTHX_ a)
 #define magic_set(a,b)         Perl_magic_set(aTHX_ a,b)
 #define magic_setamagic(a,b)   Perl_magic_setamagic(aTHX_ a,b)
 #define magic_setarylen(a,b)   Perl_magic_setarylen(aTHX_ a,b)
+#define magic_freearylen_p(a,b)        Perl_magic_freearylen_p(aTHX_ a,b)
 #define magic_setbm(a,b)       Perl_magic_setbm(aTHX_ a,b)
 #define magic_setdbline(a,b)   Perl_magic_setdbline(aTHX_ a,b)
 #define magic_setdefelem(a,b)  Perl_magic_setdefelem(aTHX_ a,b)
 #define sortsv(a,b,c)          Perl_sortsv(aTHX_ a,b,c)
 #define mg_clear(a)            Perl_mg_clear(aTHX_ a)
 #define mg_copy(a,b,c,d)       Perl_mg_copy(aTHX_ a,b,c,d)
+#ifdef PERL_CORE
+#define mg_localize(a,b)       Perl_mg_localize(aTHX_ a,b)
+#endif
 #define mg_find(a,b)           Perl_mg_find(aTHX_ a,b)
 #define mg_free(a)             Perl_mg_free(aTHX_ a)
 #define mg_get(a)              Perl_mg_get(aTHX_ a)
 #define newSVnv(a)             Perl_newSVnv(aTHX_ a)
 #define newSVpv(a,b)           Perl_newSVpv(aTHX_ a,b)
 #define newSVpvn(a,b)          Perl_newSVpvn(aTHX_ a,b)
+#define newSVhek(a)            Perl_newSVhek(aTHX_ a)
 #define newSVpvn_share(a,b,c)  Perl_newSVpvn_share(aTHX_ a,b,c)
 #define vnewSVpvf(a,b)         Perl_vnewSVpvf(aTHX_ a,b)
 #define newSVrv(a,b)           Perl_newSVrv(aTHX_ a,b)
 #define scan_version(a,b,c)    Perl_scan_version(aTHX_ a,b,c)
 #define new_version(a)         Perl_new_version(aTHX_ a)
 #define upg_version(a)         Perl_upg_version(aTHX_ a)
+#define vverify(a)             Perl_vverify(aTHX_ a)
 #define vnumify(a)             Perl_vnumify(aTHX_ a)
 #define vnormal(a)             Perl_vnormal(aTHX_ a)
 #define vstringify(a)          Perl_vstringify(aTHX_ a)
 #define call_pv(a,b)           Perl_call_pv(aTHX_ a,b)
 #define call_sv(a,b)           Perl_call_sv(aTHX_ a,b)
 #define despatch_signals()     Perl_despatch_signals(aTHX)
+#define doref(a,b,c)           Perl_doref(aTHX_ a,b,c)
 #define eval_pv(a,b)           Perl_eval_pv(aTHX_ a,b)
 #define eval_sv(a,b)           Perl_eval_sv(aTHX_ a,b)
 #define get_sv(a,b)            Perl_get_sv(aTHX_ a,b)
 #define require_pv(a)          Perl_require_pv(aTHX_ a)
 #define pack_cat(a,b,c,d,e,f,g)        Perl_pack_cat(aTHX_ a,b,c,d,e,f,g)
 #define packlist(a,b,c,d,e)    Perl_packlist(aTHX_ a,b,c,d,e)
+#ifdef PERL_USES_PL_PIDSTATUS
 #ifdef PERL_CORE
 #define pidgone(a,b)           Perl_pidgone(aTHX_ a,b)
 #endif
+#endif
 #define pmflag(a,b)            Perl_pmflag(aTHX_ a,b)
 #ifdef PERL_CORE
 #define pmruntime(a,b,c)       Perl_pmruntime(aTHX_ a,b,c)
 #endif
 #define push_scope()           Perl_push_scope(aTHX)
 #ifdef PERL_CORE
-#define ref(a,b)               Perl_ref(aTHX_ a,b)
 #define refkids(a,b)           Perl_refkids(aTHX_ a,b)
 #endif
 #define regdump(a)             Perl_regdump(aTHX_ a)
 #endif
 #endif
 #define savepv(a)              Perl_savepv(aTHX_ a)
-#define savesharedpv(a)                Perl_savesharedpv(aTHX_ a)
 #define savepvn(a,b)           Perl_savepvn(aTHX_ a,b)
+#define savesharedpv(a)                Perl_savesharedpv(aTHX_ a)
+#define savesvpv(a)            Perl_savesvpv(aTHX_ a)
 #define savestack_grow()       Perl_savestack_grow(aTHX)
 #define savestack_grow_cnt(a)  Perl_savestack_grow_cnt(aTHX_ a)
 #define save_aelem(a,b,c)      Perl_save_aelem(aTHX_ a,b,c)
 #endif
 #ifdef PERL_CORE
 #define setdefout(a)           Perl_setdefout(aTHX_ a)
+#endif
 #define share_hek(a,b,c)       Perl_share_hek(aTHX_ a,b,c)
+#if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
+#ifdef PERL_CORE
+#endif
+#else
+#ifdef PERL_CORE
 #define sighandler             Perl_sighandler
 #endif
 #define csighandler            Perl_csighandler
+#endif
 #define stack_grow(a,b,c)      Perl_stack_grow(aTHX_ a,b,c)
 #define start_subparse(a,b)    Perl_start_subparse(aTHX_ a,b)
 #ifdef PERL_CORE
 #define sv_setref_pvn(a,b,c,d) Perl_sv_setref_pvn(aTHX_ a,b,c,d)
 #define sv_setpv(a,b)          Perl_sv_setpv(aTHX_ a,b)
 #define sv_setpvn(a,b,c)       Perl_sv_setpvn(aTHX_ a,b,c)
-#define sv_taint(a)            Perl_sv_taint(aTHX_ a)
 #define sv_tainted(a)          Perl_sv_tainted(aTHX_ a)
 #define sv_unmagic(a,b)                Perl_sv_unmagic(aTHX_ a,b)
-#define sv_unref(a)            Perl_sv_unref(aTHX_ a)
 #define sv_unref_flags(a,b)    Perl_sv_unref_flags(aTHX_ a,b)
 #define sv_untaint(a)          Perl_sv_untaint(aTHX_ a)
 #define sv_upgrade(a,b)                Perl_sv_upgrade(aTHX_ a,b)
 #define do_sv_dump(a,b,c,d,e,f,g)      Perl_do_sv_dump(aTHX_ a,b,c,d,e,f,g)
 #define magic_dump(a)          Perl_magic_dump(aTHX_ a)
 #define reginitcolors()                Perl_reginitcolors(aTHX)
-#define sv_2pv_nolen(a)                Perl_sv_2pv_nolen(aTHX_ a)
-#define sv_2pvutf8_nolen(a)    Perl_sv_2pvutf8_nolen(aTHX_ a)
-#define sv_2pvbyte_nolen(a)    Perl_sv_2pvbyte_nolen(aTHX_ a)
 #define sv_utf8_downgrade(a,b) Perl_sv_utf8_downgrade(aTHX_ a,b)
 #define sv_utf8_encode(a)      Perl_sv_utf8_encode(aTHX_ a)
 #define sv_utf8_decode(a)      Perl_sv_utf8_decode(aTHX_ a)
-#define sv_force_normal(a)     Perl_sv_force_normal(aTHX_ a)
 #define sv_force_normal_flags(a,b)     Perl_sv_force_normal_flags(aTHX_ a,b)
 #define tmps_grow(a)           Perl_tmps_grow(aTHX_ a)
 #define sv_rvweaken(a)         Perl_sv_rvweaken(aTHX_ a)
 #define ss_dup(a,b)            Perl_ss_dup(aTHX_ a,b)
 #define any_dup(a,b)           Perl_any_dup(aTHX_ a,b)
 #define he_dup(a,b,c)          Perl_he_dup(aTHX_ a,b,c)
+#define hek_dup(a,b)           Perl_hek_dup(aTHX_ a,b)
 #define re_dup(a,b)            Perl_re_dup(aTHX_ a,b)
 #define fp_dup(a,b,c)          Perl_fp_dup(aTHX_ a,b,c)
 #define dirp_dup(a)            Perl_dirp_dup(aTHX_ a)
 #define ptr_table_free(a)      Perl_ptr_table_free(aTHX_ a)
 #  if defined(HAVE_INTERP_INTERN)
 #define sys_intern_dup(a,b)    Perl_sys_intern_dup(aTHX_ a,b)
+#  endif
+#endif
+#if defined(HAVE_INTERP_INTERN)
 #define sys_intern_clear()     Perl_sys_intern_clear(aTHX)
 #define sys_intern_init()      Perl_sys_intern_init(aTHX)
-#  endif
 #endif
 #define custom_op_name(a)      Perl_custom_op_name(aTHX_ a)
 #define custom_op_desc(a)      Perl_custom_op_desc(aTHX_ a)
-#if defined(PERL_COPY_ON_WRITE)
+#if defined(PERL_OLD_COPY_ON_WRITE)
 #ifdef PERL_CORE
 #define sv_release_IVX(a)      Perl_sv_release_IVX(aTHX_ a)
 #endif
 #define hsplit(a)              S_hsplit(aTHX_ a)
 #define hfreeentries(a)                S_hfreeentries(aTHX_ a)
 #define new_he()               S_new_he(aTHX)
-#define del_he(a)              S_del_he(aTHX_ a)
 #define save_hek_flags(a,b,c,d)        S_save_hek_flags(aTHX_ a,b,c,d)
 #define hv_magic_check(a,b,c)  S_hv_magic_check(aTHX_ a,b,c)
 #define unshare_hek_or_pvn(a,b,c,d)    S_unshare_hek_or_pvn(aTHX_ a,b,c,d)
 #define share_hek_flags(a,b,c,d)       S_share_hek_flags(aTHX_ a,b,c,d)
 #define hv_notallowed(a,b,c,d) S_hv_notallowed(aTHX_ a,b,c,d)
+#define hv_auxinit(a)          S_hv_auxinit(aTHX_ a)
+#define hv_delete_common(a,b,c,d,e,f,g)        S_hv_delete_common(aTHX_ a,b,c,d,e,f,g)
+#define hv_fetch_common(a,b,c,d,e,f,g,h)       S_hv_fetch_common(aTHX_ a,b,c,d,e,f,g,h)
 #endif
 #endif
 #if defined(PERL_IN_MG_C) || defined(PERL_DECL_PROT)
 #define save_magic(a,b)                S_save_magic(aTHX_ a,b)
 #define magic_methpack(a,b,c)  S_magic_methpack(aTHX_ a,b,c)
 #define magic_methcall(a,b,c,d,e,f)    S_magic_methcall(aTHX_ a,b,c,d,e,f)
+#define restore_magic(a)       S_restore_magic(aTHX_ a)
+#define unwind_handler_stack(a)        S_unwind_handler_stack(aTHX_ a)
 #endif
 #endif
 #if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
 #define ck_anoncode(a)         Perl_ck_anoncode(aTHX_ a)
 #define ck_bitop(a)            Perl_ck_bitop(aTHX_ a)
 #define ck_concat(a)           Perl_ck_concat(aTHX_ a)
 #define ck_svconst(a)          Perl_ck_svconst(aTHX_ a)
 #define ck_trunc(a)            Perl_ck_trunc(aTHX_ a)
 #define ck_unpack(a)           Perl_ck_unpack(aTHX_ a)
-#ifdef PERL_CORE
 #define is_handle_constructor(a,b)     S_is_handle_constructor(aTHX_ a,b)
 #define is_list_assignment(a)  S_is_list_assignment(aTHX_ a)
 #define cop_free(a)            S_cop_free(aTHX_ a)
 #define div128(a,b)            S_div128(aTHX_ a,b)
 #define group_end(a,b,c)       S_group_end(aTHX_ a,b,c)
 #define get_num(a,b)           S_get_num(aTHX_ a,b)
+#define need_utf8              S_need_utf8
+#define first_symbol           S_first_symbol
 #endif
 #endif
 #if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)
 #define save_scalar_at(a)      S_save_scalar_at(aTHX_ a)
 #endif
 #endif
+#if defined(PERL_IN_GV_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#endif
+#endif
 #if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
+#define uiv_2buf               S_uiv_2buf
 #define asIV(a)                        S_asIV(aTHX_ a)
 #define asUV(a)                        S_asUV(aTHX_ a)
-#define new_xnv()              S_new_xnv(aTHX)
-#define new_xpv()              S_new_xpv(aTHX)
-#define new_xpviv()            S_new_xpviv(aTHX)
-#define new_xpvnv()            S_new_xpvnv(aTHX)
-#define new_xpvcv()            S_new_xpvcv(aTHX)
-#define new_xpvav()            S_new_xpvav(aTHX)
-#define new_xpvhv()            S_new_xpvhv(aTHX)
-#define new_xpvmg()            S_new_xpvmg(aTHX)
-#define new_xpvgv()            S_new_xpvgv(aTHX)
-#define new_xpvlv()            S_new_xpvlv(aTHX)
-#define new_xpvbm()            S_new_xpvbm(aTHX)
-#define del_xnv(a)             S_del_xnv(aTHX_ a)
-#define del_xpv(a)             S_del_xpv(aTHX_ a)
-#define del_xpviv(a)           S_del_xpviv(aTHX_ a)
-#define del_xpvnv(a)           S_del_xpvnv(aTHX_ a)
-#define del_xpvcv(a)           S_del_xpvcv(aTHX_ a)
-#define del_xpvav(a)           S_del_xpvav(aTHX_ a)
-#define del_xpvhv(a)           S_del_xpvhv(aTHX_ a)
-#define del_xpvmg(a)           S_del_xpvmg(aTHX_ a)
-#define del_xpvgv(a)           S_del_xpvgv(aTHX_ a)
-#define del_xpvlv(a)           S_del_xpvlv(aTHX_ a)
-#define del_xpvbm(a)           S_del_xpvbm(aTHX_ a)
 #define sv_unglob(a)           S_sv_unglob(aTHX_ a)
 #define not_a_number(a)                S_not_a_number(aTHX_ a)
 #define visit(a,b,c)           S_visit(aTHX_ a,b,c)
-#define sv_add_backref(a,b)    S_sv_add_backref(aTHX_ a,b)
-#define sv_del_backref(a)      S_sv_del_backref(aTHX_ a)
+#define sv_del_backref(a,b)    S_sv_del_backref(aTHX_ a,b)
 #define varname(a,b,c,d,e,f)   S_varname(aTHX_ a,b,c,d,e,f)
 #endif
 #  ifdef DEBUGGING
 #ifdef PERL_CORE
 #define expect_number(a)       S_expect_number(aTHX_ a)
 #endif
-#  if defined(USE_ITHREADS)
-#ifdef PERL_CORE
-#define gv_share(a,b)          S_gv_share(aTHX_ a,b)
-#endif
-#  endif
 #ifdef PERL_CORE
 #define utf8_mg_pos(a,b,c,d,e,f,g,h,i) S_utf8_mg_pos(aTHX_ a,b,c,d,e,f,g,h,i)
 #define utf8_mg_pos_init(a,b,c,d,e,f,g)        S_utf8_mg_pos_init(aTHX_ a,b,c,d,e,f,g)
 #endif
-#if defined(PERL_COPY_ON_WRITE)
+#if defined(PERL_OLD_COPY_ON_WRITE)
 #ifdef PERL_CORE
-#define sv_release_COW(a,b,c,d,e,f)    S_sv_release_COW(aTHX_ a,b,c,d,e,f)
+#define sv_release_COW(a,b,c,d)        S_sv_release_COW(aTHX_ a,b,c,d)
 #endif
 #endif
 #endif
 #define sublex_start()         S_sublex_start(aTHX)
 #define filter_gets(a,b,c)     S_filter_gets(aTHX_ a,b,c)
 #define find_in_my_stash(a,b)  S_find_in_my_stash(aTHX_ a,b)
+#define tokenize_use(a,b)      S_tokenize_use(aTHX_ a,b)
 #define new_constant(a,b,c,d,e,f)      S_new_constant(aTHX_ a,b,c,d,e,f)
 #endif
 #  if defined(DEBUGGING)
 #define depcom()               S_depcom(aTHX)
 #define incl_perldb()          S_incl_perldb(aTHX)
 #endif
-#if 0
-#ifdef PERL_CORE
-#define utf16_textfilter(a,b,c)        S_utf16_textfilter(aTHX_ a,b,c)
-#define utf16rev_textfilter(a,b,c)     S_utf16rev_textfilter(aTHX_ a,b,c)
-#endif
-#endif
 #  if defined(PERL_CR_FILTER)
 #ifdef PERL_CORE
 #define cr_textfilter(a,b,c)   S_cr_textfilter(aTHX_ a,b,c)
 #ifdef PERL_CORE
 #define closest_cop(a,b)       S_closest_cop(aTHX_ a,b)
 #define mess_alloc()           S_mess_alloc(aTHX)
+#define vdie_croak_common(a,b,c,d)     S_vdie_croak_common(aTHX_ a,b,c,d)
+#define vdie_common(a,b,c)     S_vdie_common(aTHX_ a,b,c)
 #endif
 #endif
 #if defined(PERL_IN_NUMERIC_C) || defined(PERL_DECL_PROT)
 #define mulexp10               S_mulexp10
 #endif
 #endif
+#if defined(PERL_IN_UTF8_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define is_utf8_char_slow(a,b) S_is_utf8_char_slow(aTHX_ a,b)
+#endif
+#endif
 #define sv_setsv_flags(a,b,c)  Perl_sv_setsv_flags(aTHX_ a,b,c)
 #define sv_catpvn_flags(a,b,c,d)       Perl_sv_catpvn_flags(aTHX_ a,b,c,d)
 #define sv_catsv_flags(a,b,c)  Perl_sv_catsv_flags(aTHX_ a,b,c)
 #define sv_copypv(a,b)         Perl_sv_copypv(aTHX_ a,b)
 #define my_atof2(a,b)          Perl_my_atof2(aTHX_ a,b)
 #define my_socketpair          Perl_my_socketpair
-#ifdef PERL_COPY_ON_WRITE
+#ifdef PERL_OLD_COPY_ON_WRITE
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define sv_setsv_cow(a,b)      Perl_sv_setsv_cow(aTHX_ a,b)
 #endif
 #endif
 #endif
 #define save_set_svflags(a,b,c)        Perl_save_set_svflags(aTHX_ a,b,c)
-#if defined(PERL_IN_HV_C) || defined(PERL_DECL_PROT)
-#ifdef PERL_CORE
-#define hv_delete_common(a,b,c,d,e,f,g)        S_hv_delete_common(aTHX_ a,b,c,d,e,f,g)
-#define hv_fetch_common(a,b,c,d,e,f,g,h)       S_hv_fetch_common(aTHX_ a,b,c,d,e,f,g,h)
-#endif
-#endif
-#define hv_clear_placeholders(a)       Perl_hv_clear_placeholders(aTHX_ a)
 #define hv_scalar(a)           Perl_hv_scalar(aTHX_ a)
+#define hv_name_set(a,b,c,d)   Perl_hv_name_set(aTHX_ a,b,c,d)
+#define hv_clear_placeholders(a)       Perl_hv_clear_placeholders(aTHX_ a)
 #ifdef PERL_CORE
 #define magic_scalarpack(a,b)  Perl_magic_scalarpack(aTHX_ a,b)
 #endif
 #ifdef PERL_CORE
 #define is_gv_magical_sv(a,b)  Perl_is_gv_magical_sv(aTHX_ a,b)
 #endif
-#define savesvpv(a)            Perl_savesvpv(aTHX_ a)
+#define stashpv_hvname_match(a,b)      Perl_stashpv_hvname_match(aTHX_ a,b)
+#ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP
+#ifdef PERL_CORE
+#define dump_sv_child(a)       Perl_dump_sv_child(aTHX_ a)
+#endif
+#endif
+#ifdef PERL_DONT_CREATE_GVSV
+#define gv_SVadd(a)            Perl_gv_SVadd(aTHX_ a)
+#endif
+#ifdef PERL_CORE
+#define offer_nice_chunk(a,b)  Perl_offer_nice_chunk(aTHX_ a,b)
+#endif
+#ifndef SPRINTF_RETURNS_STRLEN
+#endif
 #define ck_anoncode(a)         Perl_ck_anoncode(aTHX_ a)
 #define ck_bitop(a)            Perl_ck_bitop(aTHX_ a)
 #define ck_concat(a)           Perl_ck_concat(aTHX_ a)