This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
regen generated files changed by the previous patch - facility to plug in syntax...
[perl5.git] / embed.h
diff --git a/embed.h b/embed.h
index 57eaeb8..d21dedd 100644 (file)
--- a/embed.h
+++ b/embed.h
@@ -3,7 +3,7 @@
  *    embed.h
  *
  *    Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999,
- *    2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, by Larry Wall and others
+ *    2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, by Larry Wall and others
  *
  *    You may distribute under the terms of either the GNU General Public
  *    License or the Artistic License, as specified in the README file.
@@ -56,9 +56,6 @@
 #define av_delete              Perl_av_delete
 #define av_exists              Perl_av_exists
 #define av_extend              Perl_av_extend
-#ifdef PERL_CORE
-#define av_fake                        Perl_av_fake
-#endif
 #define av_fetch               Perl_av_fetch
 #define av_fill                        Perl_av_fill
 #define av_len                 Perl_av_len
 #define get_opargs             Perl_get_opargs
 #endif
 #define get_ppaddr             Perl_get_ppaddr
-#if defined(PERL_CORE) || defined(PERL_EXT)
 #define cxinc                  Perl_cxinc
-#endif
 #define deb                    Perl_deb
 #define vdeb                   Perl_vdeb
 #define debprofdump            Perl_debprofdump
 #define delimcpy               Perl_delimcpy
 #ifdef PERL_CORE
 #define delete_eval_scope      Perl_delete_eval_scope
-#define deprecate              Perl_deprecate
-#define deprecate_old          Perl_deprecate_old
 #endif
 #define die                    Perl_die
+#if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define vdie                   S_vdie
+#endif
+#endif
+#ifdef PERL_CORE
 #define die_where              Perl_die_where
 #endif
 #define dounwind               Perl_dounwind
 #ifdef PERL_CORE
 #define do_execfree            Perl_do_execfree
 #endif
-#ifdef PERL_IN_DOIO_C
+#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define exec_failed            S_exec_failed
 #endif
 #endif
 #define dowantarray            Perl_dowantarray
 #define dump_all               Perl_dump_all
+#ifdef PERL_CORE
+#define dump_all_perl          Perl_dump_all_perl
+#endif
 #define dump_eval              Perl_dump_eval
 #if defined(DUMP_FDS)
 #define dump_fds               Perl_dump_fds
 #define op_dump                        Perl_op_dump
 #define pmop_dump              Perl_pmop_dump
 #define dump_packsubs          Perl_dump_packsubs
+#ifdef PERL_CORE
+#define dump_packsubs_perl     Perl_dump_packsubs_perl
+#endif
 #define dump_sub               Perl_dump_sub
+#ifdef PERL_CORE
+#define dump_sub_perl          Perl_dump_sub_perl
+#endif
 #define fbm_compile            Perl_fbm_compile
 #define fbm_instr              Perl_fbm_instr
 #ifdef PERL_CORE
 #define find_script            Perl_find_script
 #endif
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define force_list             S_force_list
 #define fold_constants         S_fold_constants
 #define form                   Perl_form
 #define vform                  Perl_vform
 #define free_tmps              Perl_free_tmps
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define gen_constant_list      S_gen_constant_list
 #endif
+#endif
 #if !defined(HAS_GETENV_LEN)
 #ifdef PERL_CORE
 #define getenv_len             Perl_getenv_len
 #endif
 #define gp_free                        Perl_gp_free
 #define gp_ref                 Perl_gp_ref
-#define gv_AVadd               Perl_gv_AVadd
-#define gv_HVadd               Perl_gv_HVadd
-#define gv_IOadd               Perl_gv_IOadd
+#define gv_add_by_type         Perl_gv_add_by_type
 #define gv_autoload4           Perl_gv_autoload4
 #define gv_check               Perl_gv_check
 #define gv_efullname           Perl_gv_efullname
 #define ibcmp                  Perl_ibcmp
 #define ibcmp_locale           Perl_ibcmp_locale
 #define ibcmp_utf8             Perl_ibcmp_utf8
+#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define ingroup                        S_ingroup
+#endif
+#endif
 #ifdef PERL_CORE
-#define ingroup                        Perl_ingroup
 #define init_argv_symbols      Perl_init_argv_symbols
 #define init_debugger          Perl_init_debugger
 #endif
 #ifdef PERL_CORE
 #define io_close               Perl_io_close
 #define invert                 Perl_invert
-#define is_gv_magical          Perl_is_gv_magical
 #endif
 #define is_lvalue_sub          Perl_is_lvalue_sub
 #define to_uni_upper_lc                Perl_to_uni_upper_lc
 #define to_uni_title_lc                Perl_to_uni_title_lc
 #define to_uni_lower_lc                Perl_to_uni_lower_lc
 #define is_uni_alnum           Perl_is_uni_alnum
-#define is_uni_alnumc          Perl_is_uni_alnumc
 #define is_uni_idfirst         Perl_is_uni_idfirst
 #define is_uni_alpha           Perl_is_uni_alpha
 #define is_uni_ascii           Perl_is_uni_ascii
 #define to_uni_lower           Perl_to_uni_lower
 #define to_uni_fold            Perl_to_uni_fold
 #define is_uni_alnum_lc                Perl_is_uni_alnum_lc
-#define is_uni_alnumc_lc       Perl_is_uni_alnumc_lc
 #define is_uni_idfirst_lc      Perl_is_uni_idfirst_lc
 #define is_uni_alpha_lc                Perl_is_uni_alpha_lc
 #define is_uni_ascii_lc                Perl_is_uni_ascii_lc
 #define is_uni_print_lc                Perl_is_uni_print_lc
 #define is_uni_punct_lc                Perl_is_uni_punct_lc
 #define is_uni_xdigit_lc       Perl_is_uni_xdigit_lc
+#define is_ascii_string                Perl_is_ascii_string
 #define is_utf8_char           Perl_is_utf8_char
 #define is_utf8_string         Perl_is_utf8_string
 #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 is_utf8_idcont         Perl_is_utf8_idcont
 #define is_utf8_alpha          Perl_is_utf8_alpha
 #define is_utf8_ascii          Perl_is_utf8_ascii
 #define is_utf8_space          Perl_is_utf8_space
+#define is_utf8_perl_space     Perl_is_utf8_perl_space
+#define is_utf8_perl_word      Perl_is_utf8_perl_word
 #define is_utf8_cntrl          Perl_is_utf8_cntrl
 #define is_utf8_digit          Perl_is_utf8_digit
+#define is_utf8_posix_digit    Perl_is_utf8_posix_digit
 #define is_utf8_graph          Perl_is_utf8_graph
 #define is_utf8_upper          Perl_is_utf8_upper
 #define is_utf8_lower          Perl_is_utf8_lower
 #define jmaybe                 Perl_jmaybe
 #define keyword                        Perl_keyword
 #endif
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define opt_scalarhv           S_opt_scalarhv
+#endif
+#endif
 #define leave_scope            Perl_leave_scope
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define lex_end                        Perl_lex_end
 #endif
 #define op_refcnt_lock         Perl_op_refcnt_lock
 #define op_refcnt_unlock       Perl_op_refcnt_unlock
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define linklist               S_linklist
 #define listkids               S_listkids
 #define magic_clearenv         Perl_magic_clearenv
 #define magic_clear_all_env    Perl_magic_clear_all_env
 #define magic_clearhint                Perl_magic_clearhint
+#define magic_clearhints       Perl_magic_clearhints
 #define magic_clearisa         Perl_magic_clearisa
 #define magic_clearpack                Perl_magic_clearpack
 #define magic_clearsig         Perl_magic_clearsig
 #define magic_set_all_env      Perl_magic_set_all_env
 #define magic_sizepack         Perl_magic_sizepack
 #define magic_wipepack         Perl_magic_wipepack
-#define magicname              Perl_magicname
 #endif
 #define markstack_grow         Perl_markstack_grow
 #if defined(USE_LOCALE_COLLATE)
 #define newGVREF               Perl_newGVREF
 #define newHVREF               Perl_newHVREF
 #define newHVhv                        Perl_newHVhv
-#define newIO                  Perl_newIO
 #define newLISTOP              Perl_newLISTOP
 #ifdef USE_ITHREADS
 #define newPADOP               Perl_newPADOP
 #define nextargv               Perl_nextargv
 #endif
 #define ninstr                 Perl_ninstr
-#ifdef PERL_CORE
-#define oopsCV                 Perl_oopsCV
-#endif
 #define op_free                        Perl_op_free
 #ifdef PERL_MAD
 #ifdef PERL_CORE
 #endif
 #endif
 #ifdef PERL_CORE
+#define package_version                Perl_package_version
 #define pad_alloc              Perl_pad_alloc
 #define allocmy                        Perl_allocmy
 #define pad_findmy             Perl_pad_findmy
 #define pad_sv                 Perl_pad_sv
 #ifdef PERL_CORE
 #define pad_free               Perl_pad_free
-#define pad_reset              Perl_pad_reset
+#endif
+#if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define pad_reset              S_pad_reset
+#endif
+#endif
+#ifdef PERL_CORE
 #define pad_swipe              Perl_pad_swipe
 #define peep                   Perl_peep
 #endif
 #define require_pv             Perl_require_pv
 #define pack_cat               Perl_pack_cat
 #define packlist               Perl_packlist
-#ifdef PERL_USES_PL_PIDSTATUS
+#if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C)
 #ifdef PERL_CORE
-#define pidgone                        Perl_pidgone
+#define pidgone                        S_pidgone
 #endif
 #endif
-#define pmflag                 Perl_pmflag
 #ifdef PERL_CORE
 #define pmruntime              Perl_pmruntime
-#define pmtrans                        Perl_pmtrans
+#endif
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define pmtrans                        S_pmtrans
+#endif
 #endif
 #define pop_scope              Perl_pop_scope
 #ifdef PERL_CORE
 #define prepend_elem           Perl_prepend_elem
 #endif
 #define push_scope             Perl_push_scope
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define refkids                        Perl_refkids
+#define refkids                        S_refkids
+#endif
 #endif
 #define regdump                        Perl_regdump
 #define regdump                        Perl_regdump
 #define rsignal_save           Perl_rsignal_save
 #endif
 #define rsignal_state          Perl_rsignal_state
+#if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define rxres_free             S_rxres_free
+#define rxres_restore          S_rxres_restore
+#endif
+#endif
 #ifdef PERL_CORE
-#define rxres_free             Perl_rxres_free
-#define rxres_restore          Perl_rxres_restore
 #define rxres_save             Perl_rxres_save
 #endif
 #if !defined(HAS_RENAME)
 #define savesvpv               Perl_savesvpv
 #define savestack_grow         Perl_savestack_grow
 #define savestack_grow_cnt     Perl_savestack_grow_cnt
-#define save_aelem             Perl_save_aelem
+#define save_aelem_flags       Perl_save_aelem_flags
 #define save_alloc             Perl_save_alloc
 #define save_aptr              Perl_save_aptr
 #define save_ary               Perl_save_ary
 #define save_bool              Perl_save_bool
 #define save_clearsv           Perl_save_clearsv
 #define save_delete            Perl_save_delete
+#define save_hdelete           Perl_save_hdelete
+#define save_adelete           Perl_save_adelete
 #define save_destructor                Perl_save_destructor
 #define save_destructor_x      Perl_save_destructor_x
-#define save_freesv            Perl_save_freesv
-#ifdef PERL_CORE
-#define save_freeop            Perl_save_freeop
-#endif
-#define save_freepv            Perl_save_freepv
 #define save_generic_svref     Perl_save_generic_svref
 #define save_generic_pvref     Perl_save_generic_pvref
 #define save_shared_pvref      Perl_save_shared_pvref
 #define save_gp                        Perl_save_gp
 #define save_hash              Perl_save_hash
+#ifdef PERL_CORE
+#define save_hints             Perl_save_hints
+#endif
 #define save_helem_flags       Perl_save_helem_flags
 #define save_hptr              Perl_save_hptr
 #define save_I16               Perl_save_I16
 #define save_iv                        Perl_save_iv
 #define save_list              Perl_save_list
 #define save_long              Perl_save_long
-#define save_mortalizesv       Perl_save_mortalizesv
 #define save_nogv              Perl_save_nogv
-#ifdef PERL_CORE
-#define save_op                        Perl_save_op
-#endif
 #define save_scalar            Perl_save_scalar
 #define save_pptr              Perl_save_pptr
 #define save_vptr              Perl_save_vptr
 #define save_padsv_and_mortalize       Perl_save_padsv_and_mortalize
 #define save_sptr              Perl_save_sptr
 #define save_svref             Perl_save_svref
+#define save_pushptr           Perl_save_pushptr
+#ifdef PERL_CORE
+#define save_pushi32ptr                Perl_save_pushi32ptr
+#define save_pushptrptr                Perl_save_pushptrptr
+#endif
+#if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define save_pushptri32ptr     S_save_pushptri32ptr
+#endif
+#endif
 #ifdef PERL_CORE
 #define sawparens              Perl_sawparens
 #define scalar                 Perl_scalar
 #endif
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define scalarkids             S_scalarkids
 #define scalarseq              S_scalarseq
 #define scope                  Perl_scope
 #endif
 #define screaminstr            Perl_screaminstr
-#if !defined(VMS)
-#ifdef PERL_CORE
-#define setenv_getix           Perl_setenv_getix
-#endif
-#endif
 #define setdefout              Perl_setdefout
 #define share_hek              Perl_share_hek
 #if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
 #define sv_2bool               Perl_sv_2bool
 #define sv_2cv                 Perl_sv_2cv
 #define sv_2io                 Perl_sv_2io
-#ifdef PERL_IN_SV_C
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define glob_2number           S_glob_2number
-#define glob_2pv               S_glob_2pv
 #endif
 #endif
 #define sv_2iv_flags           Perl_sv_2iv_flags
 #define sv_pvutf8n             Perl_sv_pvutf8n
 #define sv_pvbyten             Perl_sv_pvbyten
 #define sv_true                        Perl_sv_true
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define sv_add_arena           Perl_sv_add_arena
+#define sv_add_arena           S_sv_add_arena
+#endif
 #endif
 #define sv_backoff             Perl_sv_backoff
 #define sv_bless               Perl_sv_bless
 #define warn                   Perl_warn
 #define vwarn                  Perl_vwarn
 #define warner                 Perl_warner
+#define ck_warner              Perl_ck_warner
+#define ck_warner_d            Perl_ck_warner_d
 #define vwarner                        Perl_vwarner
 #ifdef PERL_CORE
 #define watch                  Perl_watch
 #ifdef PERL_CORE
 #define yyparse                        Perl_yyparse
 #define parser_free            Perl_parser_free
-#define yywarn                 Perl_yywarn
+#endif
+#if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define yywarn                 S_yywarn
+#endif
 #endif
 #if defined(MYMALLOC)
 #define dump_mstats            Perl_dump_mstats
 #endif
 #ifdef PERL_CORE
 #define my_attrs               Perl_my_attrs
-#define boot_core_xsutils      Perl_boot_core_xsutils
 #endif
 #if defined(USE_ITHREADS)
 #define cx_dup                 Perl_cx_dup
 #define dirp_dup               Perl_dirp_dup
 #define gp_dup                 Perl_gp_dup
 #define mg_dup                 Perl_mg_dup
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define sv_dup_inc_multiple    S_sv_dup_inc_multiple
+#endif
+#endif
 #define sv_dup                 Perl_sv_dup
 #define rvpv_dup               Perl_rvpv_dup
 #define parser_dup             Perl_parser_dup
 #ifdef PERL_CORE
 #define hsplit                 S_hsplit
 #define hfreeentries           S_hfreeentries
+#define anonymise_cv           S_anonymise_cv
 #define new_he                 S_new_he
 #define save_hek_flags         S_save_hek_flags
 #define hv_magic_check         S_hv_magic_check
 #define find_beginning         S_find_beginning
 #define forbid_setid           S_forbid_setid
 #define incpush                        S_incpush
+#define incpush_use_sep                S_incpush_use_sep
 #define init_interp            S_init_interp
 #define init_ids               S_init_ids
 #define init_main_stash                S_init_main_stash
 #define open_script            S_open_script
 #define usage                  S_usage
 #endif
-#ifdef DOSUID
-#  ifdef IAMSUID
-#  else
-#  endif
-#else
-#  ifndef SETUID_SCRIPTS_ARE_SECURE_NOW
-#  endif
-#endif
-#  if defined(IAMSUID)
-#ifdef PERL_CORE
-#define fd_on_nosuid_fs                S_fd_on_nosuid_fs
+#ifndef SETUID_SCRIPTS_ARE_SECURE_NOW
 #endif
-#  endif
 #ifdef PERL_CORE
 #define parse_body             S_parse_body
 #define run_body               S_run_body
 #endif
 #if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
+#define do_delete_local                S_do_delete_local
 #define refto                  S_refto
 #endif
 #endif
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define reghopmaybe3           S_reghopmaybe3
 #define find_byclass           S_find_byclass
-#define swap_match_buff                S_swap_match_buff
 #define to_utf8_substr         S_to_utf8_substr
 #define to_byte_substr         S_to_byte_substr
 #define reg_check_named_buff_matched   S_reg_check_named_buff_matched
 #define update_debugger_info   S_update_debugger_info
 #define skipspace              S_skipspace
 #define swallow_bom            S_swallow_bom
+#endif
+#ifndef PERL_NO_UTF16_FILTER
+#ifdef PERL_CORE
+#define utf16_textfilter       S_utf16_textfilter
+#define add_utf16_textfilter   S_add_utf16_textfilter
+#endif
+#endif
+#ifdef PERL_CORE
 #define checkcomma             S_checkcomma
 #define feature_is_enabled     S_feature_is_enabled
 #define force_ident            S_force_ident
 #define tokenize_use           S_tokenize_use
 #endif
 #ifdef PERL_CORE
+#define deprecate_commaless_var_list   S_deprecate_commaless_var_list
 #define ao                     S_ao
 #endif
 #  if defined(PERL_CR_FILTER)
 #define vdie_common            S_vdie_common
 #define write_no_mem           S_write_no_mem
 #endif
-#if defined(PERL_MEM_LOG) && defined(PERL_MEM_LOG_STDERR)
+#if defined(PERL_MEM_LOG) && !defined(PERL_MEM_LOG_NOIMPL)
 #ifdef PERL_CORE
 #define mem_log_common         S_mem_log_common
 #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_utf8_upgrade_flags  Perl_sv_utf8_upgrade_flags
+#define sv_utf8_upgrade_flags_grow     Perl_sv_utf8_upgrade_flags_grow
 #define sv_pvn_force_flags     Perl_sv_pvn_force_flags
 #define sv_copypv              Perl_sv_copypv
 #define my_atof2               Perl_my_atof2
 #ifdef PERL_CORE
 #define deb_stack_all          Perl_deb_stack_all
 #endif
-#ifdef PERL_IN_DEB_C
+#if defined(PERL_IN_DEB_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define deb_stack_n            S_deb_stack_n
 #endif
 #endif
 #endif
 #ifdef PERL_DONT_CREATE_GVSV
-#define gv_SVadd               Perl_gv_SVadd
+#endif
+#if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define ckwarn_common          S_ckwarn_common
+#endif
 #endif
 #ifdef PERL_CORE
 #define offer_nice_chunk       Perl_offer_nice_chunk
 #define xmldump_indent         Perl_xmldump_indent
 #define xmldump_vindent                Perl_xmldump_vindent
 #define xmldump_all            Perl_xmldump_all
+#define xmldump_all_perl       Perl_xmldump_all_perl
 #define xmldump_packsubs       Perl_xmldump_packsubs
+#define xmldump_packsubs_perl  Perl_xmldump_packsubs_perl
 #define xmldump_sub            Perl_xmldump_sub
+#define xmldump_sub_perl       Perl_xmldump_sub_perl
 #define xmldump_form           Perl_xmldump_form
 #define xmldump_eval           Perl_xmldump_eval
 #define sv_catxmlsv            Perl_sv_catxmlsv
 #endif
 #if !defined(HAS_SIGNBIT)
 #endif
-#ifdef PERL_CORE
-#define mro_meta_init          Perl_mro_meta_init
-#endif
 #if defined(USE_ITHREADS)
 #ifdef PERL_CORE
 #define mro_meta_dup           Perl_mro_meta_dup
 #define mro_get_linear_isa     Perl_mro_get_linear_isa
 #if defined(PERL_IN_MRO_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define mro_get_linear_isa_c3  S_mro_get_linear_isa_c3
 #define mro_get_linear_isa_dfs S_mro_get_linear_isa_dfs
 #endif
 #endif
 #define pp_bit_or              Perl_pp_bit_or
 #define pp_bit_xor             Perl_pp_bit_xor
 #define pp_bless               Perl_pp_bless
+#define pp_boolkeys            Perl_pp_boolkeys
 #define pp_break               Perl_pp_break
 #define pp_caller              Perl_pp_caller
 #define pp_chdir               Perl_pp_chdir
 #define get_context            Perl_get_context
 #define set_context            Perl_set_context
 #define amagic_call(a,b,c,d)   Perl_amagic_call(aTHX_ a,b,c,d)
-#define Gv_AMupdate(a)         Perl_Gv_AMupdate(aTHX_ a)
+#define Gv_AMupdate(a,b)       Perl_Gv_AMupdate(aTHX_ a,b)
 #define gv_handler(a,b)                Perl_gv_handler(aTHX_ a,b)
 #ifdef PERL_CORE
 #define append_elem(a,b,c)     Perl_append_elem(aTHX_ a,b,c)
 #define av_delete(a,b,c)       Perl_av_delete(aTHX_ a,b,c)
 #define av_exists(a,b)         Perl_av_exists(aTHX_ a,b)
 #define av_extend(a,b)         Perl_av_extend(aTHX_ a,b)
-#ifdef PERL_CORE
-#define av_fake(a,b)           Perl_av_fake(aTHX_ a,b)
-#endif
 #define av_fetch(a,b,c)                Perl_av_fetch(aTHX_ a,b,c)
 #define av_fill(a,b)           Perl_av_fill(aTHX_ a,b)
 #define av_len(a)              Perl_av_len(aTHX_ a)
 #define get_opargs()           Perl_get_opargs(aTHX)
 #endif
 #define get_ppaddr()           Perl_get_ppaddr(aTHX)
-#if defined(PERL_CORE) || defined(PERL_EXT)
 #define cxinc()                        Perl_cxinc(aTHX)
-#endif
 #define vdeb(a,b)              Perl_vdeb(aTHX_ a,b)
 #define debprofdump()          Perl_debprofdump(aTHX)
 #define debop(a)               Perl_debop(aTHX_ a)
 #define debstack()             Perl_debstack(aTHX)
 #define debstackptrs()         Perl_debstackptrs(aTHX)
-#define delimcpy(a,b,c,d,e,f)  Perl_delimcpy(aTHX_ a,b,c,d,e,f)
+#define delimcpy               Perl_delimcpy
 #ifdef PERL_CORE
 #define delete_eval_scope()    Perl_delete_eval_scope(aTHX)
-#define deprecate(a)           Perl_deprecate(aTHX_ a)
-#define deprecate_old(a)       Perl_deprecate_old(aTHX_ a)
 #endif
+#if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define vdie(a,b)              S_vdie(aTHX_ a,b)
-#define die_where(a,b)         Perl_die_where(aTHX_ a,b)
+#endif
+#endif
+#ifdef PERL_CORE
+#define die_where(a)           Perl_die_where(aTHX_ a)
 #endif
 #define dounwind(a)            Perl_dounwind(aTHX_ a)
 #ifdef PERL_CORE
 #ifdef PERL_CORE
 #define do_execfree()          Perl_do_execfree(aTHX)
 #endif
-#ifdef PERL_IN_DOIO_C
+#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define exec_failed(a,b,c)     S_exec_failed(aTHX_ a,b,c)
 #endif
 #endif
 #define dowantarray()          Perl_dowantarray(aTHX)
 #define dump_all()             Perl_dump_all(aTHX)
+#ifdef PERL_CORE
+#define dump_all_perl(a)       Perl_dump_all_perl(aTHX_ a)
+#endif
 #define dump_eval()            Perl_dump_eval(aTHX)
 #if defined(DUMP_FDS)
 #define dump_fds(a)            Perl_dump_fds(aTHX_ a)
 #define op_dump(a)             Perl_op_dump(aTHX_ a)
 #define pmop_dump(a)           Perl_pmop_dump(aTHX_ a)
 #define dump_packsubs(a)       Perl_dump_packsubs(aTHX_ a)
+#ifdef PERL_CORE
+#define dump_packsubs_perl(a,b)        Perl_dump_packsubs_perl(aTHX_ a,b)
+#endif
 #define dump_sub(a)            Perl_dump_sub(aTHX_ a)
+#ifdef PERL_CORE
+#define dump_sub_perl(a,b)     Perl_dump_sub_perl(aTHX_ a,b)
+#endif
 #define fbm_compile(a,b)       Perl_fbm_compile(aTHX_ a,b)
 #define fbm_instr(a,b,c,d)     Perl_fbm_instr(aTHX_ a,b,c,d)
 #ifdef PERL_CORE
 #define find_script(a,b,c,d)   Perl_find_script(aTHX_ a,b,c,d)
 #endif
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define force_list(a)          S_force_list(aTHX_ a)
 #define fold_constants(a)      S_fold_constants(aTHX_ a)
 #endif
 #define vform(a,b)             Perl_vform(aTHX_ a,b)
 #define free_tmps()            Perl_free_tmps(aTHX)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define gen_constant_list(a)   S_gen_constant_list(aTHX_ a)
 #endif
+#endif
 #if !defined(HAS_GETENV_LEN)
 #ifdef PERL_CORE
 #define getenv_len(a,b)                Perl_getenv_len(aTHX_ a,b)
 #endif
 #define gp_free(a)             Perl_gp_free(aTHX_ a)
 #define gp_ref(a)              Perl_gp_ref(aTHX_ a)
-#define gv_AVadd(a)            Perl_gv_AVadd(aTHX_ a)
-#define gv_HVadd(a)            Perl_gv_HVadd(aTHX_ a)
-#define gv_IOadd(a)            Perl_gv_IOadd(aTHX_ a)
+#define gv_add_by_type(a,b)    Perl_gv_add_by_type(aTHX_ a,b)
 #define gv_autoload4(a,b,c,d)  Perl_gv_autoload4(aTHX_ a,b,c,d)
 #define gv_check(a)            Perl_gv_check(aTHX_ a)
 #define gv_efullname(a,b)      Perl_gv_efullname(aTHX_ a,b)
 #endif
 #endif
 #define hv_undef(a)            Perl_hv_undef(aTHX_ a)
-#define ibcmp(a,b,c)           Perl_ibcmp(aTHX_ a,b,c)
-#define ibcmp_locale(a,b,c)    Perl_ibcmp_locale(aTHX_ a,b,c)
+#define ibcmp                  Perl_ibcmp
+#define ibcmp_locale           Perl_ibcmp_locale
 #define ibcmp_utf8(a,b,c,d,e,f,g,h)    Perl_ibcmp_utf8(aTHX_ a,b,c,d,e,f,g,h)
+#if defined(PERL_IN_DOIO_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define ingroup(a,b)           S_ingroup(aTHX_ a,b)
+#endif
+#endif
 #ifdef PERL_CORE
-#define ingroup(a,b)           Perl_ingroup(aTHX_ a,b)
 #define init_argv_symbols(a,b) Perl_init_argv_symbols(aTHX_ a,b)
 #define init_debugger()                Perl_init_debugger(aTHX)
 #endif
 #ifdef PERL_CORE
 #define intro_my()             Perl_intro_my(aTHX)
 #endif
-#define instr(a,b)             Perl_instr(aTHX_ a,b)
+#define instr                  Perl_instr
 #ifdef PERL_CORE
 #define io_close(a,b)          Perl_io_close(aTHX_ a,b)
 #define invert(a)              Perl_invert(aTHX_ a)
-#define is_gv_magical(a,b,c)   Perl_is_gv_magical(aTHX_ a,b,c)
 #endif
 #define is_lvalue_sub()                Perl_is_lvalue_sub(aTHX)
 #define to_uni_upper_lc(a)     Perl_to_uni_upper_lc(aTHX_ a)
 #define to_uni_title_lc(a)     Perl_to_uni_title_lc(aTHX_ a)
 #define to_uni_lower_lc(a)     Perl_to_uni_lower_lc(aTHX_ a)
 #define is_uni_alnum(a)                Perl_is_uni_alnum(aTHX_ a)
-#define is_uni_alnumc(a)       Perl_is_uni_alnumc(aTHX_ a)
 #define is_uni_idfirst(a)      Perl_is_uni_idfirst(aTHX_ a)
 #define is_uni_alpha(a)                Perl_is_uni_alpha(aTHX_ a)
 #define is_uni_ascii(a)                Perl_is_uni_ascii(aTHX_ a)
 #define to_uni_lower(a,b,c)    Perl_to_uni_lower(aTHX_ a,b,c)
 #define to_uni_fold(a,b,c)     Perl_to_uni_fold(aTHX_ a,b,c)
 #define is_uni_alnum_lc(a)     Perl_is_uni_alnum_lc(aTHX_ a)
-#define is_uni_alnumc_lc(a)    Perl_is_uni_alnumc_lc(aTHX_ a)
 #define is_uni_idfirst_lc(a)   Perl_is_uni_idfirst_lc(aTHX_ a)
 #define is_uni_alpha_lc(a)     Perl_is_uni_alpha_lc(aTHX_ a)
 #define is_uni_ascii_lc(a)     Perl_is_uni_ascii_lc(aTHX_ a)
 #define is_uni_print_lc(a)     Perl_is_uni_print_lc(aTHX_ a)
 #define is_uni_punct_lc(a)     Perl_is_uni_punct_lc(aTHX_ a)
 #define is_uni_xdigit_lc(a)    Perl_is_uni_xdigit_lc(aTHX_ a)
-#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_loclen(a,b,c,d) Perl_is_utf8_string_loclen(aTHX_ a,b,c,d)
+#define is_ascii_string                Perl_is_ascii_string
+#define is_utf8_char           Perl_is_utf8_char
+#define is_utf8_string         Perl_is_utf8_string
+#define is_utf8_string_loclen  Perl_is_utf8_string_loclen
 #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 is_utf8_idcont(a)      Perl_is_utf8_idcont(aTHX_ a)
 #define is_utf8_alpha(a)       Perl_is_utf8_alpha(aTHX_ a)
 #define is_utf8_ascii(a)       Perl_is_utf8_ascii(aTHX_ a)
 #define is_utf8_space(a)       Perl_is_utf8_space(aTHX_ a)
+#define is_utf8_perl_space(a)  Perl_is_utf8_perl_space(aTHX_ a)
+#define is_utf8_perl_word(a)   Perl_is_utf8_perl_word(aTHX_ a)
 #define is_utf8_cntrl(a)       Perl_is_utf8_cntrl(aTHX_ a)
 #define is_utf8_digit(a)       Perl_is_utf8_digit(aTHX_ a)
+#define is_utf8_posix_digit(a) Perl_is_utf8_posix_digit(aTHX_ a)
 #define is_utf8_graph(a)       Perl_is_utf8_graph(aTHX_ a)
 #define is_utf8_upper(a)       Perl_is_utf8_upper(aTHX_ a)
 #define is_utf8_lower(a)       Perl_is_utf8_lower(aTHX_ a)
 #define jmaybe(a)              Perl_jmaybe(aTHX_ a)
 #define keyword(a,b,c)         Perl_keyword(aTHX_ a,b,c)
 #endif
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define opt_scalarhv(a)                S_opt_scalarhv(aTHX_ a)
+#endif
+#endif
 #define leave_scope(a)         Perl_leave_scope(aTHX_ a)
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define lex_end()              Perl_lex_end(aTHX)
 #endif
 #define op_refcnt_lock()       Perl_op_refcnt_lock(aTHX)
 #define op_refcnt_unlock()     Perl_op_refcnt_unlock(aTHX)
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define linklist(a)            S_linklist(aTHX_ a)
 #define listkids(a)            S_listkids(aTHX_ a)
 #define magic_clearenv(a,b)    Perl_magic_clearenv(aTHX_ a,b)
 #define magic_clear_all_env(a,b)       Perl_magic_clear_all_env(aTHX_ a,b)
 #define magic_clearhint(a,b)   Perl_magic_clearhint(aTHX_ a,b)
+#define magic_clearhints(a,b)  Perl_magic_clearhints(aTHX_ a,b)
 #define magic_clearisa(a,b)    Perl_magic_clearisa(aTHX_ a,b)
 #define magic_clearpack(a,b)   Perl_magic_clearpack(aTHX_ a,b)
 #define magic_clearsig(a,b)    Perl_magic_clearsig(aTHX_ a,b)
 #define magic_set_all_env(a,b) Perl_magic_set_all_env(aTHX_ a,b)
 #define magic_sizepack(a,b)    Perl_magic_sizepack(aTHX_ a,b)
 #define magic_wipepack(a,b)    Perl_magic_wipepack(aTHX_ a,b)
-#define magicname(a,b,c)       Perl_magicname(aTHX_ a,b,c)
 #endif
 #define markstack_grow()       Perl_markstack_grow(aTHX)
 #if defined(USE_LOCALE_COLLATE)
 #define newGVREF(a,b)          Perl_newGVREF(aTHX_ a,b)
 #define newHVREF(a)            Perl_newHVREF(aTHX_ a)
 #define newHVhv(a)             Perl_newHVhv(aTHX_ a)
-#define newIO()                        Perl_newIO(aTHX)
 #define newLISTOP(a,b,c,d)     Perl_newLISTOP(aTHX_ a,b,c,d)
 #ifdef USE_ITHREADS
 #define newPADOP(a,b,c)                Perl_newPADOP(aTHX_ a,b,c)
 #ifdef PERL_CORE
 #define nextargv(a)            Perl_nextargv(aTHX_ a)
 #endif
-#define ninstr(a,b,c,d)                Perl_ninstr(aTHX_ a,b,c,d)
-#ifdef PERL_CORE
-#define oopsCV(a)              Perl_oopsCV(aTHX_ a)
-#endif
+#define ninstr                 Perl_ninstr
 #define op_free(a)             Perl_op_free(aTHX_ a)
 #ifdef PERL_MAD
 #ifdef PERL_CORE
 #endif
 #endif
 #ifdef PERL_CORE
+#define package_version(a)     Perl_package_version(aTHX_ a)
 #define pad_alloc(a,b)         Perl_pad_alloc(aTHX_ a,b)
 #define allocmy(a)             Perl_allocmy(aTHX_ a)
 #define pad_findmy(a)          Perl_pad_findmy(aTHX_ a)
 #define pad_sv(a)              Perl_pad_sv(aTHX_ a)
 #ifdef PERL_CORE
 #define pad_free(a)            Perl_pad_free(aTHX_ a)
-#define pad_reset()            Perl_pad_reset(aTHX)
+#endif
+#if defined(PERL_IN_PAD_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define pad_reset()            S_pad_reset(aTHX)
+#endif
+#endif
+#ifdef PERL_CORE
 #define pad_swipe(a,b)         Perl_pad_swipe(aTHX_ a,b)
 #define peep(a)                        Perl_peep(aTHX_ a)
 #endif
 #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
+#if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C)
 #ifdef PERL_CORE
-#define pidgone(a,b)           Perl_pidgone(aTHX_ a,b)
+#define pidgone(a,b)           S_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)
-#define pmtrans(a,b,c)         Perl_pmtrans(aTHX_ a,b,c)
+#endif
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define pmtrans(a,b,c)         S_pmtrans(aTHX_ a,b,c)
+#endif
 #endif
 #define pop_scope()            Perl_pop_scope(aTHX)
 #ifdef PERL_CORE
 #define prepend_elem(a,b,c)    Perl_prepend_elem(aTHX_ a,b,c)
 #endif
 #define push_scope()           Perl_push_scope(aTHX)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define refkids(a,b)           Perl_refkids(aTHX_ a,b)
+#define refkids(a,b)           S_refkids(aTHX_ a,b)
+#endif
 #endif
 #define regdump(a)             Perl_regdump(aTHX_ a)
 #define regdump(a)             Perl_regdump(aTHX_ a)
 #define pregfree(a)            Perl_pregfree(aTHX_ a)
 #define pregfree2(a)           Perl_pregfree2(aTHX_ a)
 #if defined(PERL_CORE) || defined(PERL_EXT)
-#define reg_temp_copy(a)       Perl_reg_temp_copy(aTHX_ a)
+#define reg_temp_copy(a,b)     Perl_reg_temp_copy(aTHX_ a,b)
 #endif
 #define regfree_internal(a)    Perl_regfree_internal(aTHX_ a)
 #if defined(USE_ITHREADS)
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define regprop(a,b,c)         Perl_regprop(aTHX_ a,b,c)
 #endif
-#define repeatcpy(a,b,c,d)     Perl_repeatcpy(aTHX_ a,b,c,d)
-#define rninstr(a,b,c,d)       Perl_rninstr(aTHX_ a,b,c,d)
+#define repeatcpy              Perl_repeatcpy
+#define rninstr                        Perl_rninstr
 #define rsignal(a,b)           Perl_rsignal(aTHX_ a,b)
 #ifdef PERL_CORE
 #define rsignal_restore(a,b)   Perl_rsignal_restore(aTHX_ a,b)
 #define rsignal_save(a,b,c)    Perl_rsignal_save(aTHX_ a,b,c)
 #endif
 #define rsignal_state(a)       Perl_rsignal_state(aTHX_ a)
+#if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define rxres_free(a)          S_rxres_free(aTHX_ a)
+#define rxres_restore(a,b)     S_rxres_restore(aTHX_ a,b)
+#endif
+#endif
 #ifdef PERL_CORE
-#define rxres_free(a)          Perl_rxres_free(aTHX_ a)
-#define rxres_restore(a,b)     Perl_rxres_restore(aTHX_ a,b)
 #define rxres_save(a,b)                Perl_rxres_save(aTHX_ a,b)
 #endif
 #if !defined(HAS_RENAME)
 #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)
+#define save_aelem_flags(a,b,c,d)      Perl_save_aelem_flags(aTHX_ a,b,c,d)
 #define save_alloc(a,b)                Perl_save_alloc(aTHX_ a,b)
 #define save_aptr(a)           Perl_save_aptr(aTHX_ a)
 #define save_ary(a)            Perl_save_ary(aTHX_ a)
 #define save_bool(a)           Perl_save_bool(aTHX_ a)
 #define save_clearsv(a)                Perl_save_clearsv(aTHX_ a)
 #define save_delete(a,b,c)     Perl_save_delete(aTHX_ a,b,c)
+#define save_hdelete(a,b)      Perl_save_hdelete(aTHX_ a,b)
+#define save_adelete(a,b)      Perl_save_adelete(aTHX_ a,b)
 #define save_destructor(a,b)   Perl_save_destructor(aTHX_ a,b)
 #define save_destructor_x(a,b) Perl_save_destructor_x(aTHX_ a,b)
-#define save_freesv(a)         Perl_save_freesv(aTHX_ a)
 #ifdef PERL_CORE
-#define save_freeop(a)         Perl_save_freeop(aTHX_ a)
 #endif
-#define save_freepv(a)         Perl_save_freepv(aTHX_ a)
 #define save_generic_svref(a)  Perl_save_generic_svref(aTHX_ a)
 #define save_generic_pvref(a)  Perl_save_generic_pvref(aTHX_ a)
 #define save_shared_pvref(a)   Perl_save_shared_pvref(aTHX_ a)
 #define save_gp(a,b)           Perl_save_gp(aTHX_ a,b)
 #define save_hash(a)           Perl_save_hash(aTHX_ a)
+#ifdef PERL_CORE
+#define save_hints()           Perl_save_hints(aTHX)
+#endif
 #define save_helem_flags(a,b,c,d)      Perl_save_helem_flags(aTHX_ a,b,c,d)
 #define save_hptr(a)           Perl_save_hptr(aTHX_ a)
 #define save_I16(a)            Perl_save_I16(aTHX_ a)
 #define save_iv(a)             Perl_save_iv(aTHX_ a)
 #define save_list(a,b)         Perl_save_list(aTHX_ a,b)
 #define save_long(a)           Perl_save_long(aTHX_ a)
-#define save_mortalizesv(a)    Perl_save_mortalizesv(aTHX_ a)
 #define save_nogv(a)           Perl_save_nogv(aTHX_ a)
 #ifdef PERL_CORE
-#define save_op()              Perl_save_op(aTHX)
 #endif
 #define save_scalar(a)         Perl_save_scalar(aTHX_ a)
 #define save_pptr(a)           Perl_save_pptr(aTHX_ a)
 #define save_padsv_and_mortalize(a)    Perl_save_padsv_and_mortalize(aTHX_ a)
 #define save_sptr(a)           Perl_save_sptr(aTHX_ a)
 #define save_svref(a)          Perl_save_svref(aTHX_ a)
+#define save_pushptr(a,b)      Perl_save_pushptr(aTHX_ a,b)
+#ifdef PERL_CORE
+#define save_pushi32ptr(a,b,c) Perl_save_pushi32ptr(aTHX_ a,b,c)
+#define save_pushptrptr(a,b,c) Perl_save_pushptrptr(aTHX_ a,b,c)
+#endif
+#if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define save_pushptri32ptr(a,b,c,d)    S_save_pushptri32ptr(aTHX_ a,b,c,d)
+#endif
+#endif
 #ifdef PERL_CORE
 #define sawparens(a)           Perl_sawparens(aTHX_ a)
 #define scalar(a)              Perl_scalar(aTHX_ a)
 #endif
-#if defined(PERL_IN_OP_C)
+#if defined(PERL_IN_OP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define scalarkids(a)          S_scalarkids(aTHX_ a)
 #define scalarseq(a)           S_scalarseq(aTHX_ a)
 #define scope(a)               Perl_scope(aTHX_ a)
 #endif
 #define screaminstr(a,b,c,d,e,f)       Perl_screaminstr(aTHX_ a,b,c,d,e,f)
-#if !defined(VMS)
-#ifdef PERL_CORE
-#define setenv_getix(a)                Perl_setenv_getix(aTHX_ a)
-#endif
-#endif
 #define setdefout(a)           Perl_setdefout(aTHX_ a)
 #define share_hek(a,b,c)       Perl_share_hek(aTHX_ a,b,c)
 #if defined(HAS_SIGACTION) && defined(SA_SIGINFO)
 #define sv_2bool(a)            Perl_sv_2bool(aTHX_ a)
 #define sv_2cv(a,b,c,d)                Perl_sv_2cv(aTHX_ a,b,c,d)
 #define sv_2io(a)              Perl_sv_2io(aTHX_ a)
-#ifdef PERL_IN_SV_C
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define glob_2number(a)                S_glob_2number(aTHX_ a)
-#define glob_2pv(a,b)          S_glob_2pv(aTHX_ a,b)
 #endif
 #endif
 #define sv_2iv_flags(a,b)      Perl_sv_2iv_flags(aTHX_ a,b)
 #define sv_pvutf8n(a,b)                Perl_sv_pvutf8n(aTHX_ a,b)
 #define sv_pvbyten(a,b)                Perl_sv_pvbyten(aTHX_ a,b)
 #define sv_true(a)             Perl_sv_true(aTHX_ a)
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define sv_add_arena(a,b,c)    Perl_sv_add_arena(aTHX_ a,b,c)
+#define sv_add_arena(a,b,c)    S_sv_add_arena(aTHX_ a,b,c)
+#endif
 #endif
 #define sv_backoff(a)          Perl_sv_backoff(aTHX_ a)
 #define sv_bless(a,b)          Perl_sv_bless(aTHX_ a,b)
 #endif
 #define whichsig(a)            Perl_whichsig(aTHX_ a)
 #ifdef PERL_CORE
-#define write_to_stderr(a,b)   Perl_write_to_stderr(aTHX_ a,b)
+#define write_to_stderr(a)     Perl_write_to_stderr(aTHX_ a)
 #define yyerror(a)             Perl_yyerror(aTHX_ a)
 #endif
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #ifdef PERL_CORE
 #define yyparse()              Perl_yyparse(aTHX)
 #define parser_free(a)         Perl_parser_free(aTHX_ a)
-#define yywarn(a)              Perl_yywarn(aTHX_ a)
+#endif
+#if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define yywarn(a)              S_yywarn(aTHX_ a)
+#endif
 #endif
 #if defined(MYMALLOC)
 #define dump_mstats(a)         Perl_dump_mstats(aTHX_ a)
 #endif
 #ifdef PERL_CORE
 #define my_attrs(a,b)          Perl_my_attrs(aTHX_ a,b)
-#define boot_core_xsutils()    Perl_boot_core_xsutils(aTHX)
 #endif
 #if defined(USE_ITHREADS)
 #define cx_dup(a,b,c,d)                Perl_cx_dup(aTHX_ a,b,c,d)
 #define dirp_dup(a)            Perl_dirp_dup(aTHX_ a)
 #define gp_dup(a,b)            Perl_gp_dup(aTHX_ a,b)
 #define mg_dup(a,b)            Perl_mg_dup(aTHX_ a,b)
+#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define sv_dup_inc_multiple(a,b,c,d)   S_sv_dup_inc_multiple(aTHX_ a,b,c,d)
+#endif
+#endif
 #define sv_dup(a,b)            Perl_sv_dup(aTHX_ a,b)
 #define rvpv_dup(a,b,c)                Perl_rvpv_dup(aTHX_ a,b,c)
 #define parser_dup(a,b)                Perl_parser_dup(aTHX_ a,b)
 #ifdef PERL_CORE
 #define hsplit(a)              S_hsplit(aTHX_ a)
 #define hfreeentries(a)                S_hfreeentries(aTHX_ a)
+#define anonymise_cv(a,b)      S_anonymise_cv(aTHX_ a,b)
 #define new_he()               S_new_he(aTHX)
 #define save_hek_flags         S_save_hek_flags
 #define hv_magic_check         S_hv_magic_check
 #ifdef PERL_CORE
 #define find_beginning(a,b)    S_find_beginning(aTHX_ a,b)
 #define forbid_setid(a,b)      S_forbid_setid(aTHX_ a,b)
-#define incpush(a,b,c,d,e)     S_incpush(aTHX_ a,b,c,d,e)
+#define incpush(a,b,c)         S_incpush(aTHX_ a,b,c)
+#define incpush_use_sep(a,b,c) S_incpush_use_sep(aTHX_ a,b,c)
 #define init_interp()          S_init_interp(aTHX)
 #define init_ids()             S_init_ids(aTHX)
 #define init_main_stash()      S_init_main_stash(aTHX)
 #define open_script(a,b,c,d)   S_open_script(aTHX_ a,b,c,d)
 #define usage(a)               S_usage(aTHX_ a)
 #endif
-#ifdef DOSUID
-#  ifdef IAMSUID
-#ifdef PERL_CORE
-#endif
-#  else
-#ifdef PERL_CORE
-#endif
-#  endif
-#else
-#  ifndef SETUID_SCRIPTS_ARE_SECURE_NOW
+#ifndef SETUID_SCRIPTS_ARE_SECURE_NOW
 #ifdef PERL_CORE
 #endif
-#  endif
-#endif
-#  if defined(IAMSUID)
-#ifdef PERL_CORE
-#define fd_on_nosuid_fs(a)     S_fd_on_nosuid_fs(aTHX_ a)
 #endif
-#  endif
 #ifdef PERL_CORE
 #define parse_body(a,b)                S_parse_body(aTHX_ a,b)
 #define run_body(a)            S_run_body(aTHX_ a)
-#define incpush_if_exists(a)   S_incpush_if_exists(aTHX_ a)
+#define incpush_if_exists(a,b,c)       S_incpush_if_exists(aTHX_ a,b,c)
 #endif
 #endif
 #if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
+#define do_delete_local()      S_do_delete_local(aTHX)
 #define refto(a)               S_refto(aTHX_ a)
 #endif
 #endif
 #define reg_node(a,b)          S_reg_node(aTHX_ a,b)
 #define reg_recode(a,b)                S_reg_recode(aTHX_ a,b)
 #define regpiece(a,b,c)                S_regpiece(aTHX_ a,b,c)
-#define reg_namedseq(a,b)      S_reg_namedseq(aTHX_ a,b)
+#define reg_namedseq(a,b,c)    S_reg_namedseq(aTHX_ a,b,c)
 #define reginsert(a,b,c,d)     S_reginsert(aTHX_ a,b,c,d)
 #define regtail(a,b,c,d)       S_regtail(aTHX_ a,b,c,d)
 #define reg_scan_name(a,b)     S_reg_scan_name(aTHX_ a,b)
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #define reghopmaybe3           S_reghopmaybe3
 #define find_byclass(a,b,c,d,e)        S_find_byclass(aTHX_ a,b,c,d,e)
-#define swap_match_buff(a)     S_swap_match_buff(aTHX_ a)
 #define to_utf8_substr(a)      S_to_utf8_substr(aTHX_ a)
 #define to_byte_substr(a)      S_to_byte_substr(aTHX_ a)
 #define reg_check_named_buff_matched(a,b)      S_reg_check_named_buff_matched(aTHX_ a,b)
 #define update_debugger_info(a,b,c)    S_update_debugger_info(aTHX_ a,b,c)
 #define skipspace(a)           S_skipspace(aTHX_ a)
 #define swallow_bom(a)         S_swallow_bom(aTHX_ a)
+#endif
+#ifndef PERL_NO_UTF16_FILTER
+#ifdef PERL_CORE
+#define utf16_textfilter(a,b,c)        S_utf16_textfilter(aTHX_ a,b,c)
+#define add_utf16_textfilter(a,b)      S_add_utf16_textfilter(aTHX_ a,b)
+#endif
+#endif
+#ifdef PERL_CORE
 #define checkcomma(a,b,c)      S_checkcomma(aTHX_ a,b,c)
 #define feature_is_enabled(a,b)        S_feature_is_enabled(aTHX_ a,b)
 #define force_ident(a,b)       S_force_ident(aTHX_ a,b)
 #define sublex_done()          S_sublex_done(aTHX)
 #define sublex_push()          S_sublex_push(aTHX)
 #define sublex_start()         S_sublex_start(aTHX)
-#define filter_gets(a,b,c)     S_filter_gets(aTHX_ a,b,c)
+#define filter_gets(a,b)       S_filter_gets(aTHX_ a,b)
 #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 deprecate_commaless_var_list() S_deprecate_commaless_var_list(aTHX)
 #define ao(a)                  S_ao(aTHX_ a)
 #endif
 #  if defined(PERL_CR_FILTER)
 #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,d)   S_vdie_common(aTHX_ a,b,c,d)
+#define vdie_croak_common(a,b) S_vdie_croak_common(aTHX_ a,b)
+#define vdie_common(a,b)       S_vdie_common(aTHX_ a,b)
 #define write_no_mem()         S_write_no_mem(aTHX)
 #endif
-#if defined(PERL_MEM_LOG) && defined(PERL_MEM_LOG_STDERR)
+#if defined(PERL_MEM_LOG) && !defined(PERL_MEM_LOG_NOIMPL)
 #ifdef PERL_CORE
 #define mem_log_common         S_mem_log_common
 #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_utf8_upgrade_flags(a,b)     Perl_sv_utf8_upgrade_flags(aTHX_ a,b)
+#define sv_utf8_upgrade_flags_grow(a,b,c)      Perl_sv_utf8_upgrade_flags_grow(aTHX_ a,b,c)
 #define sv_pvn_force_flags(a,b,c)      Perl_sv_pvn_force_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)
 #ifdef PERL_CORE
 #define deb_stack_all()                Perl_deb_stack_all(aTHX)
 #endif
-#ifdef PERL_IN_DEB_C
+#if defined(PERL_IN_DEB_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
 #define deb_stack_n(a,b,c,d,e) S_deb_stack_n(aTHX_ a,b,c,d,e)
 #endif
 #endif
 #endif
 #ifdef PERL_DONT_CREATE_GVSV
-#define gv_SVadd(a)            Perl_gv_SVadd(aTHX_ a)
+#endif
+#if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)
+#ifdef PERL_CORE
+#define ckwarn_common(a)       S_ckwarn_common(aTHX_ a)
+#endif
 #endif
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #endif
 #ifdef PERL_CORE
 #define xmldump_vindent(a,b,c,d)       Perl_xmldump_vindent(aTHX_ a,b,c,d)
 #define xmldump_all()          Perl_xmldump_all(aTHX)
+#define xmldump_all_perl(a)    Perl_xmldump_all_perl(aTHX_ a)
 #define xmldump_packsubs(a)    Perl_xmldump_packsubs(aTHX_ a)
+#define xmldump_packsubs_perl(a,b)     Perl_xmldump_packsubs_perl(aTHX_ a,b)
 #define xmldump_sub(a)         Perl_xmldump_sub(aTHX_ a)
+#define xmldump_sub_perl(a,b)  Perl_xmldump_sub_perl(aTHX_ a,b)
 #define xmldump_form(a)                Perl_xmldump_form(aTHX_ a)
 #define xmldump_eval()         Perl_xmldump_eval(aTHX)
 #define sv_catxmlsv(a,b)       Perl_sv_catxmlsv(aTHX_ a,b)
 #if defined(PERL_CORE) || defined(PERL_EXT)
 #endif
 #ifdef PERL_CORE
-#define mro_meta_init(a)       Perl_mro_meta_init(aTHX_ a)
 #endif
 #if defined(USE_ITHREADS)
 #ifdef PERL_CORE
 #define mro_get_linear_isa(a)  Perl_mro_get_linear_isa(aTHX_ a)
 #if defined(PERL_IN_MRO_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define mro_get_linear_isa_c3(a,b)     S_mro_get_linear_isa_c3(aTHX_ a,b)
 #define mro_get_linear_isa_dfs(a,b)    S_mro_get_linear_isa_dfs(aTHX_ a,b)
 #endif
 #endif
 #endif
 #ifdef PERL_CORE
 #endif
+#ifdef PERL_CORE
+#endif
 #define ck_anoncode(a)         Perl_ck_anoncode(aTHX_ a)
 #define ck_bitop(a)            Perl_ck_bitop(aTHX_ a)
 #define ck_chdir(a)            Perl_ck_chdir(aTHX_ a)
 #define pp_bit_or()            Perl_pp_bit_or(aTHX)
 #define pp_bit_xor()           Perl_pp_bit_xor(aTHX)
 #define pp_bless()             Perl_pp_bless(aTHX)
+#define pp_boolkeys()          Perl_pp_boolkeys(aTHX)
 #define pp_break()             Perl_pp_break(aTHX)
 #define pp_caller()            Perl_pp_caller(aTHX)
 #define pp_chdir()             Perl_pp_chdir(aTHX)