more complete pseudo-fork() support for Windows
[p5sagit/p5-mst-13.2.git] / embed.h
diff --git a/embed.h b/embed.h
index 7d229ba..758a0c2 100644 (file)
--- a/embed.h
+++ b/embed.h
@@ -7,19 +7,62 @@
 
 /* NO_EMBED is no longer supported. i.e. EMBED is always active. */
 
+/* provide binary compatible (but inconsistent) names */
+#if defined(PERL_BINCOMPAT_5005)
+#  define  Perl_call_argv              perl_call_argv
+#  define  Perl_call_method            perl_call_method
+#  define  Perl_call_pv                        perl_call_pv
+#  define  Perl_call_sv                        perl_call_sv
+#  define  Perl_get_av                 perl_get_av
+#  define  Perl_get_cv                 perl_get_cv
+#  define  Perl_get_hv                 perl_get_hv
+#  define  Perl_get_sv                 perl_get_sv
+#  define  Perl_init_i18nl10n          perl_init_i18nl10n
+#  define  Perl_init_i18nl14n          perl_init_i18nl14n
+#  define  Perl_new_collate            perl_new_collate
+#  define  Perl_new_ctype              perl_new_ctype
+#  define  Perl_new_numeric            perl_new_numeric
+#  define  Perl_require_pv             perl_require_pv
+#  define  Perl_safesyscalloc          Perl_safecalloc
+#  define  Perl_safesysfree            Perl_safefree
+#  define  Perl_safesysmalloc          Perl_safemalloc
+#  define  Perl_safesysrealloc         Perl_saferealloc
+#  define  Perl_set_numeric_local      perl_set_numeric_local
+#  define  Perl_set_numeric_standard   perl_set_numeric_standard
+/* malloc() pollution was the default in earlier versions, so enable
+ * it for bincompat; but not for systems that used to do prevent that,
+ * or when they ask for {HIDE,EMBED}MYMALLOC */
+#  if !defined(EMBEDMYMALLOC) && !defined(HIDEMYMALLOC)
+#    if !defined(NeXT) && !defined(__NeXT) && !defined(__MACHTEN__) && \
+        !defined(__QNX__)
+#      define  PERL_POLLUTE_MALLOC
+#    endif
+#  endif
+#endif
+
 /* Hide global symbols */
 
 #if !defined(PERL_OBJECT)
 #if !defined(PERL_IMPLICIT_CONTEXT)
 
+#if defined(PERL_IMPLICIT_SYS)
+#else
+#endif
+#if defined(USE_ITHREADS)
+#endif
+#if defined(MYMALLOC)
+#define malloced_size          Perl_malloced_size
+#endif
 #if defined(PERL_OBJECT)
 #endif
+#if defined(PERL_OBJECT)
+#else
+#endif
 #define amagic_call            Perl_amagic_call
 #define Gv_AMupdate            Perl_Gv_AMupdate
 #define append_elem            Perl_append_elem
 #define append_list            Perl_append_list
 #define apply                  Perl_apply
-#define assertref              Perl_assertref
 #define avhv_exists_ent                Perl_avhv_exists_ent
 #define avhv_fetch_ent         Perl_avhv_fetch_ent
 #define avhv_iternext          Perl_avhv_iternext
 #define die_nocontext          Perl_die_nocontext
 #define deb_nocontext          Perl_deb_nocontext
 #define form_nocontext         Perl_form_nocontext
+#define mess_nocontext         Perl_mess_nocontext
 #define warn_nocontext         Perl_warn_nocontext
 #define warner_nocontext       Perl_warner_nocontext
 #define newSVpvf_nocontext     Perl_newSVpvf_nocontext
 #define cxinc                  Perl_cxinc
 #define deb                    Perl_deb
 #define vdeb                   Perl_vdeb
-#define deb_growlevel          Perl_deb_growlevel
 #define debprofdump            Perl_debprofdump
 #define debop                  Perl_debop
 #define debstack               Perl_debstack
 #define do_join                        Perl_do_join
 #define do_kv                  Perl_do_kv
 #define do_open                        Perl_do_open
+#define do_open9               Perl_do_open9
 #define do_pipe                        Perl_do_pipe
 #define do_print               Perl_do_print
 #define do_readline            Perl_do_readline
 #define do_sysseek             Perl_do_sysseek
 #define do_tell                        Perl_do_tell
 #define do_trans               Perl_do_trans
+#define do_vecget              Perl_do_vecget
 #define do_vecset              Perl_do_vecset
 #define do_vop                 Perl_do_vop
 #define dofile                 Perl_dofile
 #define magic_sizepack         Perl_magic_sizepack
 #define magic_wipepack         Perl_magic_wipepack
 #define magicname              Perl_magicname
-#if defined(MYMALLOC)
-#define malloced_size          Perl_malloced_size
-#endif
 #define markstack_grow         Perl_markstack_grow
 #if defined(USE_LOCALE_COLLATE)
 #define mem_collxfrm           Perl_mem_collxfrm
 #endif
 #define mess                   Perl_mess
+#define vmess                  Perl_vmess
+#define qerror                 Perl_qerror
 #define mg_clear               Perl_mg_clear
 #define mg_copy                        Perl_mg_copy
 #define mg_find                        Perl_mg_find
 #define newHVhv                        Perl_newHVhv
 #define newIO                  Perl_newIO
 #define newLISTOP              Perl_newLISTOP
+#define newPADOP               Perl_newPADOP
 #define newPMOP                        Perl_newPMOP
 #define newPVOP                        Perl_newPVOP
 #define newRV                  Perl_newRV
 #define pad_swipe              Perl_pad_swipe
 #define peep                   Perl_peep
 #if defined(PERL_OBJECT)
-#else
+#endif
 #if defined(USE_THREADS)
 #define new_struct_thread      Perl_new_struct_thread
 #endif
-#endif
 #define call_atexit            Perl_call_atexit
 #define call_argv              Perl_call_argv
 #define call_method            Perl_call_method
 #define save_clearsv           Perl_save_clearsv
 #define save_delete            Perl_save_delete
 #define save_destructor                Perl_save_destructor
+#define save_destructor_x      Perl_save_destructor_x
 #define save_freesv            Perl_save_freesv
 #define save_freeop            Perl_save_freeop
 #define save_freepv            Perl_save_freepv
 #define save_op                        Perl_save_op
 #define save_scalar            Perl_save_scalar
 #define save_pptr              Perl_save_pptr
+#define save_vptr              Perl_save_vptr
 #define save_re_context                Perl_save_re_context
 #define save_sptr              Perl_save_sptr
 #define save_svref             Perl_save_svref
 #define tmps_grow              Perl_tmps_grow
 #define sv_rvweaken            Perl_sv_rvweaken
 #define magic_killbackrefs     Perl_magic_killbackrefs
+#define newANONATTRSUB         Perl_newANONATTRSUB
+#define newATTRSUB             Perl_newATTRSUB
+#define newMYSUB               Perl_newMYSUB
+#define my_attrs               Perl_my_attrs
+#define boot_core_xsutils      Perl_boot_core_xsutils
+#if defined(USE_ITHREADS)
+#define cx_dup                 Perl_cx_dup
+#define si_dup                 Perl_si_dup
+#define ss_dup                 Perl_ss_dup
+#define any_dup                        Perl_any_dup
+#define he_dup                 Perl_he_dup
+#define re_dup                 Perl_re_dup
+#define fp_dup                 Perl_fp_dup
+#define dirp_dup               Perl_dirp_dup
+#define gp_dup                 Perl_gp_dup
+#define mg_dup                 Perl_mg_dup
+#define sv_dup                 Perl_sv_dup
+#if defined(HAVE_INTERP_INTERN)
+#define sys_intern_dup         Perl_sys_intern_dup
+#endif
+#define ptr_table_new          Perl_ptr_table_new
+#define ptr_table_fetch                Perl_ptr_table_fetch
+#define ptr_table_store                Perl_ptr_table_store
+#define ptr_table_split                Perl_ptr_table_split
+#endif
 #if defined(PERL_OBJECT)
+#else
 #endif
 #if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT)
 #define avhv_index_sv          S_avhv_index_sv
 #define scalarboolean          S_scalarboolean
 #define too_few_arguments      S_too_few_arguments
 #define too_many_arguments     S_too_many_arguments
+#define op_clear               S_op_clear
 #define null                   S_null
 #define pad_findlex            S_pad_findlex
 #define newDEFSVOP             S_newDEFSVOP
 #define simplify_sort          S_simplify_sort
 #define is_handle_constructor  S_is_handle_constructor
 #define gv_ename               S_gv_ename
+#define cv_dump                        S_cv_dump
 #define cv_clone2              S_cv_clone2
 #define scalar_mod_type                S_scalar_mod_type
+#define my_kid                 S_my_kid
+#define dup_attrlist           S_dup_attrlist
+#define apply_attrs            S_apply_attrs
 #  if defined(PL_OP_SLAB_ALLOC)
 #define Slab_Alloc             S_Slab_Alloc
 #  endif
 #endif
 #if defined(PERL_IN_PP_HOT_C) || defined(PERL_DECL_PROT)
 #define get_db_sub             S_get_db_sub
+#define method_common          S_method_common
 #endif
 #if defined(PERL_IN_PP_SYS_C) || defined(PERL_DECL_PROT)
 #define doform                 S_doform
 #define reganode               S_reganode
 #define regatom                        S_regatom
 #define regbranch              S_regbranch
-#define regc                   S_regc
 #define reguni                 S_reguni
 #define regclass               S_regclass
 #define regclassutf8           S_regclassutf8
 #define more_xiv               S_more_xiv
 #define more_xnv               S_more_xnv
 #define more_xpv               S_more_xpv
+#define more_xpviv             S_more_xpviv
+#define more_xpvnv             S_more_xpvnv
+#define more_xpvcv             S_more_xpvcv
+#define more_xpvav             S_more_xpvav
+#define more_xpvhv             S_more_xpvhv
+#define more_xpvmg             S_more_xpvmg
+#define more_xpvlv             S_more_xpvlv
+#define more_xpvbm             S_more_xpvbm
 #define more_xrv               S_more_xrv
 #define new_xiv                        S_new_xiv
 #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_xpvlv              S_new_xpvlv
+#define new_xpvbm              S_new_xpvbm
 #define new_xrv                        S_new_xrv
 #define del_xiv                        S_del_xiv
 #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_xpvlv              S_del_xpvlv
+#define del_xpvbm              S_del_xpvbm
 #define del_xrv                        S_del_xrv
 #define sv_unglob              S_sv_unglob
 #define not_a_number           S_not_a_number
 #define xstat                  S_xstat
 #  endif
 #endif
+#if defined(PERL_OBJECT)
+#endif
 #define ck_anoncode            Perl_ck_anoncode
 #define ck_bitop               Perl_ck_bitop
 #define ck_concat              Perl_ck_concat
 #define ck_glob                        Perl_ck_glob
 #define ck_grep                        Perl_ck_grep
 #define ck_index               Perl_ck_index
+#define ck_join                        Perl_ck_join
 #define ck_lengthconst         Perl_ck_lengthconst
 #define ck_lfun                        Perl_ck_lfun
 #define ck_listiob             Perl_ck_listiob
 #define ck_match               Perl_ck_match
+#define ck_method              Perl_ck_method
 #define ck_null                        Perl_ck_null
 #define ck_repeat              Perl_ck_repeat
 #define ck_require             Perl_ck_require
 #define pp_leaveeval           Perl_pp_leaveeval
 #define pp_leaveloop           Perl_pp_leaveloop
 #define pp_leavesub            Perl_pp_leavesub
+#define pp_leavesublv          Perl_pp_leavesublv
 #define pp_leavetry            Perl_pp_leavetry
 #define pp_leavewrite          Perl_pp_leavewrite
 #define pp_left_shift          Perl_pp_left_shift
 #define pp_mapwhile            Perl_pp_mapwhile
 #define pp_match               Perl_pp_match
 #define pp_method              Perl_pp_method
+#define pp_method_named                Perl_pp_method_named
 #define pp_mkdir               Perl_pp_mkdir
 #define pp_modulo              Perl_pp_modulo
 #define pp_msgctl              Perl_pp_msgctl
 
 #else  /* PERL_IMPLICIT_CONTEXT */
 
+#if defined(PERL_IMPLICIT_SYS)
+#else
+#endif
+#if defined(USE_ITHREADS)
+#endif
+#if defined(MYMALLOC)
+#define malloced_size          Perl_malloced_size
+#endif
+#if defined(PERL_OBJECT)
+#endif
 #if defined(PERL_OBJECT)
+#else
 #endif
 #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 append_elem(a,b,c)     Perl_append_elem(aTHX_ a,b,c)
 #define append_list(a,b,c)     Perl_append_list(aTHX_ a,b,c)
 #define apply(a,b,c)           Perl_apply(aTHX_ a,b,c)
-#define assertref(a)           Perl_assertref(aTHX_ a)
 #define avhv_exists_ent(a,b,c) Perl_avhv_exists_ent(aTHX_ a,b,c)
 #define avhv_fetch_ent(a,b,c,d)        Perl_avhv_fetch_ent(aTHX_ a,b,c,d)
 #define avhv_iternext(a)       Perl_avhv_iternext(aTHX_ a)
 #define get_ppaddr()           Perl_get_ppaddr(aTHX)
 #define cxinc()                        Perl_cxinc(aTHX)
 #define vdeb(a,b)              Perl_vdeb(aTHX_ a,b)
-#define deb_growlevel()                Perl_deb_growlevel(aTHX)
 #define debprofdump()          Perl_debprofdump(aTHX)
 #define debop(a)               Perl_debop(aTHX_ a)
 #define debstack()             Perl_debstack(aTHX)
 #define do_join(a,b,c,d)       Perl_do_join(aTHX_ a,b,c,d)
 #define do_kv()                        Perl_do_kv(aTHX)
 #define do_open(a,b,c,d,e,f,g) Perl_do_open(aTHX_ a,b,c,d,e,f,g)
+#define do_open9(a,b,c,d,e,f,g,h,i)    Perl_do_open9(aTHX_ a,b,c,d,e,f,g,h,i)
 #define do_pipe(a,b,c)         Perl_do_pipe(aTHX_ a,b,c)
 #define do_print(a,b)          Perl_do_print(aTHX_ a,b)
 #define do_readline()          Perl_do_readline(aTHX)
 #define do_sysseek(a,b,c)      Perl_do_sysseek(aTHX_ a,b,c)
 #define do_tell(a)             Perl_do_tell(aTHX_ a)
 #define do_trans(a)            Perl_do_trans(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 init_stacks()          Perl_init_stacks(aTHX)
 #define intro_my()             Perl_intro_my(aTHX)
 #define instr(a,b)             Perl_instr(aTHX_ a,b)
-#define io_close(a)            Perl_io_close(aTHX_ a)
+#define io_close(a,b)          Perl_io_close(aTHX_ a,b)
 #define invert(a)              Perl_invert(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 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)
-#if defined(MYMALLOC)
-#define malloced_size          Perl_malloced_size
-#endif
 #define markstack_grow()       Perl_markstack_grow(aTHX)
 #if defined(USE_LOCALE_COLLATE)
 #define mem_collxfrm(a,b,c)    Perl_mem_collxfrm(aTHX_ a,b,c)
 #endif
-#define mess(a,b)              Perl_mess(aTHX_ a,b)
+#define vmess(a,b)             Perl_vmess(aTHX_ a,b)
+#define qerror(a)              Perl_qerror(aTHX_ a)
 #define mg_clear(a)            Perl_mg_clear(aTHX_ a)
 #define mg_copy(a,b,c,d)       Perl_mg_copy(aTHX_ a,b,c,d)
 #define mg_find(a,b)           Perl_mg_find(aTHX_ a,b)
 #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)
+#define newPADOP(a,b,c)                Perl_newPADOP(aTHX_ a,b,c)
 #define newPMOP(a,b)           Perl_newPMOP(aTHX_ a,b)
 #define newPVOP(a,b,c)         Perl_newPVOP(aTHX_ a,b,c)
 #define newRV(a)               Perl_newRV(aTHX_ a)
 #define pad_swipe(a)           Perl_pad_swipe(aTHX_ a)
 #define peep(a)                        Perl_peep(aTHX_ a)
 #if defined(PERL_OBJECT)
-#else
+#endif
 #if defined(USE_THREADS)
 #define new_struct_thread(a)   Perl_new_struct_thread(aTHX_ a)
 #endif
-#endif
 #define call_atexit(a,b)       Perl_call_atexit(aTHX_ a,b)
 #define call_argv(a,b,c)       Perl_call_argv(aTHX_ a,b,c)
 #define call_method(a,b)       Perl_call_method(aTHX_ a,b)
 #define save_clearsv(a)                Perl_save_clearsv(aTHX_ a)
 #define save_delete(a,b,c)     Perl_save_delete(aTHX_ a,b,c)
 #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)
 #define save_freeop(a)         Perl_save_freeop(aTHX_ a)
 #define save_freepv(a)         Perl_save_freepv(aTHX_ a)
 #define save_op()              Perl_save_op(aTHX)
 #define save_scalar(a)         Perl_save_scalar(aTHX_ a)
 #define save_pptr(a)           Perl_save_pptr(aTHX_ a)
+#define save_vptr(a)           Perl_save_vptr(aTHX_ a)
 #define save_re_context()      Perl_save_re_context(aTHX)
 #define save_sptr(a)           Perl_save_sptr(aTHX_ a)
 #define save_svref(a)          Perl_save_svref(aTHX_ a)
 #define do_pmop_dump(a,b,c)    Perl_do_pmop_dump(aTHX_ a,b,c)
 #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 vdefault_protect(a,b,c)        Perl_vdefault_protect(aTHX_ a,b,c)
+#define vdefault_protect(a,b,c,d)      Perl_vdefault_protect(aTHX_ a,b,c,d)
 #define reginitcolors()                Perl_reginitcolors(aTHX)
 #define sv_2pv_nolen(a)                Perl_sv_2pv_nolen(aTHX_ a)
 #define sv_pv(a)               Perl_sv_pv(aTHX_ a)
 #define tmps_grow(a)           Perl_tmps_grow(aTHX_ a)
 #define sv_rvweaken(a)         Perl_sv_rvweaken(aTHX_ a)
 #define magic_killbackrefs(a,b)        Perl_magic_killbackrefs(aTHX_ a,b)
+#define newANONATTRSUB(a,b,c,d)        Perl_newANONATTRSUB(aTHX_ a,b,c,d)
+#define newATTRSUB(a,b,c,d,e)  Perl_newATTRSUB(aTHX_ a,b,c,d,e)
+#define newMYSUB(a,b,c,d,e)    Perl_newMYSUB(aTHX_ a,b,c,d,e)
+#define my_attrs(a,b)          Perl_my_attrs(aTHX_ a,b)
+#define boot_core_xsutils()    Perl_boot_core_xsutils(aTHX)
+#if defined(USE_ITHREADS)
+#define cx_dup(a,b,c)          Perl_cx_dup(aTHX_ a,b,c)
+#define si_dup(a)              Perl_si_dup(aTHX_ a)
+#define ss_dup(a)              Perl_ss_dup(aTHX_ a)
+#define any_dup(a,b)           Perl_any_dup(aTHX_ a,b)
+#define he_dup(a,b)            Perl_he_dup(aTHX_ a,b)
+#define re_dup(a)              Perl_re_dup(aTHX_ a)
+#define fp_dup(a,b)            Perl_fp_dup(aTHX_ a,b)
+#define dirp_dup(a)            Perl_dirp_dup(aTHX_ a)
+#define gp_dup(a)              Perl_gp_dup(aTHX_ a)
+#define mg_dup(a)              Perl_mg_dup(aTHX_ a)
+#define sv_dup(a)              Perl_sv_dup(aTHX_ a)
+#if defined(HAVE_INTERP_INTERN)
+#define sys_intern_dup(a,b)    Perl_sys_intern_dup(aTHX_ a,b)
+#endif
+#define ptr_table_new()                Perl_ptr_table_new(aTHX)
+#define ptr_table_fetch(a,b)   Perl_ptr_table_fetch(aTHX_ a,b)
+#define ptr_table_store(a,b,c) Perl_ptr_table_store(aTHX_ a,b,c)
+#define ptr_table_split(a)     Perl_ptr_table_split(aTHX_ a)
+#endif
 #if defined(PERL_OBJECT)
+#else
 #endif
 #if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT)
 #define avhv_index_sv(a)       S_avhv_index_sv(aTHX_ a)
 #define scalarboolean(a)       S_scalarboolean(aTHX_ a)
 #define too_few_arguments(a,b) S_too_few_arguments(aTHX_ a,b)
 #define too_many_arguments(a,b)        S_too_many_arguments(aTHX_ a,b)
+#define op_clear(a)            S_op_clear(aTHX_ a)
 #define null(a)                        S_null(aTHX_ a)
 #define pad_findlex(a,b,c,d,e,f,g)     S_pad_findlex(aTHX_ a,b,c,d,e,f,g)
 #define newDEFSVOP()           S_newDEFSVOP(aTHX)
 #define simplify_sort(a)       S_simplify_sort(aTHX_ a)
 #define is_handle_constructor(a,b)     S_is_handle_constructor(aTHX_ a,b)
 #define gv_ename(a)            S_gv_ename(aTHX_ a)
+#define cv_dump(a)             S_cv_dump(aTHX_ a)
 #define cv_clone2(a,b)         S_cv_clone2(aTHX_ a,b)
 #define scalar_mod_type(a,b)   S_scalar_mod_type(aTHX_ a,b)
+#define my_kid(a,b)            S_my_kid(aTHX_ a,b)
+#define dup_attrlist(a)                S_dup_attrlist(aTHX_ a)
+#define apply_attrs(a,b,c)     S_apply_attrs(aTHX_ a,b,c)
 #  if defined(PL_OP_SLAB_ALLOC)
 #define Slab_Alloc(a,b)                S_Slab_Alloc(aTHX_ a,b)
 #  endif
 #endif
 #if defined(PERL_IN_PP_HOT_C) || defined(PERL_DECL_PROT)
 #define get_db_sub(a,b)                S_get_db_sub(aTHX_ a,b)
+#define method_common(a,b)     S_method_common(aTHX_ a,b)
 #endif
 #if defined(PERL_IN_PP_SYS_C) || defined(PERL_DECL_PROT)
 #define doform(a,b,c)          S_doform(aTHX_ a,b,c)
 #define reganode(a,b)          S_reganode(aTHX_ a,b)
 #define regatom(a)             S_regatom(aTHX_ a)
 #define regbranch(a,b)         S_regbranch(aTHX_ a,b)
-#define regc(a,b)              S_regc(aTHX_ a,b)
 #define reguni(a,b,c)          S_reguni(aTHX_ a,b,c)
 #define regclass()             S_regclass(aTHX)
 #define regclassutf8()         S_regclassutf8(aTHX)
 #define more_xiv()             S_more_xiv(aTHX)
 #define more_xnv()             S_more_xnv(aTHX)
 #define more_xpv()             S_more_xpv(aTHX)
+#define more_xpviv()           S_more_xpviv(aTHX)
+#define more_xpvnv()           S_more_xpvnv(aTHX)
+#define more_xpvcv()           S_more_xpvcv(aTHX)
+#define more_xpvav()           S_more_xpvav(aTHX)
+#define more_xpvhv()           S_more_xpvhv(aTHX)
+#define more_xpvmg()           S_more_xpvmg(aTHX)
+#define more_xpvlv()           S_more_xpvlv(aTHX)
+#define more_xpvbm()           S_more_xpvbm(aTHX)
 #define more_xrv()             S_more_xrv(aTHX)
 #define new_xiv()              S_new_xiv(aTHX)
 #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_xpvlv()            S_new_xpvlv(aTHX)
+#define new_xpvbm()            S_new_xpvbm(aTHX)
 #define new_xrv()              S_new_xrv(aTHX)
 #define del_xiv(a)             S_del_xiv(aTHX_ a)
 #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_xpvlv(a)           S_del_xpvlv(aTHX_ a)
+#define del_xpvbm(a)           S_del_xpvbm(aTHX_ a)
 #define del_xrv(a)             S_del_xrv(aTHX_ a)
 #define sv_unglob(a)           S_sv_unglob(aTHX_ a)
 #define not_a_number(a)                S_not_a_number(aTHX_ a)
 #define scan_ident(a,b,c,d,e)  S_scan_ident(aTHX_ a,b,c,d,e)
 #define scan_inputsymbol(a)    S_scan_inputsymbol(aTHX_ a)
 #define scan_pat(a,b)          S_scan_pat(aTHX_ a,b)
-#define scan_str(a)            S_scan_str(aTHX_ a)
+#define scan_str(a,b,c)                S_scan_str(aTHX_ a,b,c)
 #define scan_subst(a)          S_scan_subst(aTHX_ a)
 #define scan_trans(a)          S_scan_trans(aTHX_ a)
 #define scan_word(a,b,c,d,e)   S_scan_word(aTHX_ a,b,c,d,e)
 #define xstat(a)               S_xstat(aTHX_ a)
 #  endif
 #endif
+#if defined(PERL_OBJECT)
+#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)
 #define ck_glob(a)             Perl_ck_glob(aTHX_ a)
 #define ck_grep(a)             Perl_ck_grep(aTHX_ a)
 #define ck_index(a)            Perl_ck_index(aTHX_ a)
+#define ck_join(a)             Perl_ck_join(aTHX_ a)
 #define ck_lengthconst(a)      Perl_ck_lengthconst(aTHX_ a)
 #define ck_lfun(a)             Perl_ck_lfun(aTHX_ a)
 #define ck_listiob(a)          Perl_ck_listiob(aTHX_ a)
 #define ck_match(a)            Perl_ck_match(aTHX_ a)
+#define ck_method(a)           Perl_ck_method(aTHX_ a)
 #define ck_null(a)             Perl_ck_null(aTHX_ a)
 #define ck_repeat(a)           Perl_ck_repeat(aTHX_ a)
 #define ck_require(a)          Perl_ck_require(aTHX_ a)
 #define pp_leaveeval()         Perl_pp_leaveeval(aTHX)
 #define pp_leaveloop()         Perl_pp_leaveloop(aTHX)
 #define pp_leavesub()          Perl_pp_leavesub(aTHX)
+#define pp_leavesublv()                Perl_pp_leavesublv(aTHX)
 #define pp_leavetry()          Perl_pp_leavetry(aTHX)
 #define pp_leavewrite()                Perl_pp_leavewrite(aTHX)
 #define pp_left_shift()                Perl_pp_left_shift(aTHX)
 #define pp_mapwhile()          Perl_pp_mapwhile(aTHX)
 #define pp_match()             Perl_pp_match(aTHX)
 #define pp_method()            Perl_pp_method(aTHX)
+#define pp_method_named()      Perl_pp_method_named(aTHX)
 #define pp_mkdir()             Perl_pp_mkdir(aTHX)
 #define pp_modulo()            Perl_pp_modulo(aTHX)
 #define pp_msgctl()            Perl_pp_msgctl(aTHX)
 #endif /* PERL_IMPLICIT_CONTEXT */
 #else  /* PERL_OBJECT */
 
+#if defined(PERL_IMPLICIT_SYS)
+#else
+#endif
+#if defined(USE_ITHREADS)
+#endif
+#if defined(MYMALLOC)
+#define malloc                 Perl_malloc
+#define calloc                 Perl_calloc
+#define realloc                        Perl_realloc
+#define mfree                  Perl_mfree
+#define malloced_size          Perl_malloced_size
+#endif
 #if defined(PERL_OBJECT)
 #endif
+#if defined(PERL_OBJECT)
+#else
+#endif
 #define Perl_amagic_call       CPerlObj::Perl_amagic_call
 #define amagic_call            Perl_amagic_call
 #define Perl_Gv_AMupdate       CPerlObj::Perl_Gv_AMupdate
 #define append_list            Perl_append_list
 #define Perl_apply             CPerlObj::Perl_apply
 #define apply                  Perl_apply
-#define Perl_assertref         CPerlObj::Perl_assertref
-#define assertref              Perl_assertref
 #define Perl_avhv_exists_ent   CPerlObj::Perl_avhv_exists_ent
 #define avhv_exists_ent                Perl_avhv_exists_ent
 #define Perl_avhv_fetch_ent    CPerlObj::Perl_avhv_fetch_ent
 #define deb_nocontext          Perl_deb_nocontext
 #define Perl_form_nocontext    CPerlObj::Perl_form_nocontext
 #define form_nocontext         Perl_form_nocontext
+#define Perl_mess_nocontext    CPerlObj::Perl_mess_nocontext
+#define mess_nocontext         Perl_mess_nocontext
 #define Perl_warn_nocontext    CPerlObj::Perl_warn_nocontext
 #define warn_nocontext         Perl_warn_nocontext
 #define Perl_warner_nocontext  CPerlObj::Perl_warner_nocontext
 #define deb                    Perl_deb
 #define Perl_vdeb              CPerlObj::Perl_vdeb
 #define vdeb                   Perl_vdeb
-#define Perl_deb_growlevel     CPerlObj::Perl_deb_growlevel
-#define deb_growlevel          Perl_deb_growlevel
 #define Perl_debprofdump       CPerlObj::Perl_debprofdump
 #define debprofdump            Perl_debprofdump
 #define Perl_debop             CPerlObj::Perl_debop
 #define do_kv                  Perl_do_kv
 #define Perl_do_open           CPerlObj::Perl_do_open
 #define do_open                        Perl_do_open
+#define Perl_do_open9          CPerlObj::Perl_do_open9
+#define do_open9               Perl_do_open9
 #define Perl_do_pipe           CPerlObj::Perl_do_pipe
 #define do_pipe                        Perl_do_pipe
 #define Perl_do_print          CPerlObj::Perl_do_print
 #define do_tell                        Perl_do_tell
 #define Perl_do_trans          CPerlObj::Perl_do_trans
 #define do_trans               Perl_do_trans
+#define Perl_do_vecget         CPerlObj::Perl_do_vecget
+#define do_vecget              Perl_do_vecget
 #define Perl_do_vecset         CPerlObj::Perl_do_vecset
 #define do_vecset              Perl_do_vecset
 #define Perl_do_vop            CPerlObj::Perl_do_vop
 #define magic_wipepack         Perl_magic_wipepack
 #define Perl_magicname         CPerlObj::Perl_magicname
 #define magicname              Perl_magicname
-#if defined(MYMALLOC)
-#define Perl_malloced_size     CPerlObj::Perl_malloced_size
-#define malloced_size          Perl_malloced_size
-#endif
 #define Perl_markstack_grow    CPerlObj::Perl_markstack_grow
 #define markstack_grow         Perl_markstack_grow
 #if defined(USE_LOCALE_COLLATE)
 #endif
 #define Perl_mess              CPerlObj::Perl_mess
 #define mess                   Perl_mess
+#define Perl_vmess             CPerlObj::Perl_vmess
+#define vmess                  Perl_vmess
+#define Perl_qerror            CPerlObj::Perl_qerror
+#define qerror                 Perl_qerror
 #define Perl_mg_clear          CPerlObj::Perl_mg_clear
 #define mg_clear               Perl_mg_clear
 #define Perl_mg_copy           CPerlObj::Perl_mg_copy
 #define newIO                  Perl_newIO
 #define Perl_newLISTOP         CPerlObj::Perl_newLISTOP
 #define newLISTOP              Perl_newLISTOP
+#define Perl_newPADOP          CPerlObj::Perl_newPADOP
+#define newPADOP               Perl_newPADOP
 #define Perl_newPMOP           CPerlObj::Perl_newPMOP
 #define newPMOP                        Perl_newPMOP
 #define Perl_newPVOP           CPerlObj::Perl_newPVOP
 #define Perl_peep              CPerlObj::Perl_peep
 #define peep                   Perl_peep
 #if defined(PERL_OBJECT)
-#define perl_construct         CPerlObj::perl_construct
-#define perl_destruct          CPerlObj::perl_destruct
-#define perl_free              CPerlObj::perl_free
-#define perl_run               CPerlObj::perl_run
-#define perl_parse             CPerlObj::perl_parse
-#else
-#define perl_alloc             CPerlObj::perl_alloc
-#define perl_construct         CPerlObj::perl_construct
-#define perl_destruct          CPerlObj::perl_destruct
-#define perl_free              CPerlObj::perl_free
-#define perl_run               CPerlObj::perl_run
-#define perl_parse             CPerlObj::perl_parse
+#define Perl_construct         CPerlObj::Perl_construct
+#define Perl_destruct          CPerlObj::Perl_destruct
+#define Perl_free              CPerlObj::Perl_free
+#define Perl_run               CPerlObj::Perl_run
+#define Perl_parse             CPerlObj::Perl_parse
+#endif
 #if defined(USE_THREADS)
 #define Perl_new_struct_thread CPerlObj::Perl_new_struct_thread
 #define new_struct_thread      Perl_new_struct_thread
 #endif
-#endif
 #define Perl_call_atexit       CPerlObj::Perl_call_atexit
 #define call_atexit            Perl_call_atexit
 #define Perl_call_argv         CPerlObj::Perl_call_argv
 #define save_delete            Perl_save_delete
 #define Perl_save_destructor   CPerlObj::Perl_save_destructor
 #define save_destructor                Perl_save_destructor
+#define Perl_save_destructor_x CPerlObj::Perl_save_destructor_x
+#define save_destructor_x      Perl_save_destructor_x
 #define Perl_save_freesv       CPerlObj::Perl_save_freesv
 #define save_freesv            Perl_save_freesv
 #define Perl_save_freeop       CPerlObj::Perl_save_freeop
 #define save_scalar            Perl_save_scalar
 #define Perl_save_pptr         CPerlObj::Perl_save_pptr
 #define save_pptr              Perl_save_pptr
+#define Perl_save_vptr         CPerlObj::Perl_save_vptr
+#define save_vptr              Perl_save_vptr
 #define Perl_save_re_context   CPerlObj::Perl_save_re_context
 #define save_re_context                Perl_save_re_context
 #define Perl_save_sptr         CPerlObj::Perl_save_sptr
 #if defined(MYMALLOC)
 #define Perl_dump_mstats       CPerlObj::Perl_dump_mstats
 #define dump_mstats            Perl_dump_mstats
-#define Perl_malloc            CPerlObj::Perl_malloc
-#define malloc                 Perl_malloc
-#define Perl_calloc            CPerlObj::Perl_calloc
-#define calloc                 Perl_calloc
-#define Perl_realloc           CPerlObj::Perl_realloc
-#define realloc                        Perl_realloc
-#define Perl_mfree             CPerlObj::Perl_mfree
-#define mfree                  Perl_mfree
 #endif
 #define Perl_safesysmalloc     CPerlObj::Perl_safesysmalloc
 #define safesysmalloc          Perl_safesysmalloc
 #define sv_rvweaken            Perl_sv_rvweaken
 #define Perl_magic_killbackrefs        CPerlObj::Perl_magic_killbackrefs
 #define magic_killbackrefs     Perl_magic_killbackrefs
+#define Perl_newANONATTRSUB    CPerlObj::Perl_newANONATTRSUB
+#define newANONATTRSUB         Perl_newANONATTRSUB
+#define Perl_newATTRSUB                CPerlObj::Perl_newATTRSUB
+#define newATTRSUB             Perl_newATTRSUB
+#define Perl_newMYSUB          CPerlObj::Perl_newMYSUB
+#define newMYSUB               Perl_newMYSUB
+#define Perl_my_attrs          CPerlObj::Perl_my_attrs
+#define my_attrs               Perl_my_attrs
+#define Perl_boot_core_xsutils CPerlObj::Perl_boot_core_xsutils
+#define boot_core_xsutils      Perl_boot_core_xsutils
+#if defined(USE_ITHREADS)
+#define Perl_cx_dup            CPerlObj::Perl_cx_dup
+#define cx_dup                 Perl_cx_dup
+#define Perl_si_dup            CPerlObj::Perl_si_dup
+#define si_dup                 Perl_si_dup
+#define Perl_ss_dup            CPerlObj::Perl_ss_dup
+#define ss_dup                 Perl_ss_dup
+#define Perl_any_dup           CPerlObj::Perl_any_dup
+#define any_dup                        Perl_any_dup
+#define Perl_he_dup            CPerlObj::Perl_he_dup
+#define he_dup                 Perl_he_dup
+#define Perl_re_dup            CPerlObj::Perl_re_dup
+#define re_dup                 Perl_re_dup
+#define Perl_fp_dup            CPerlObj::Perl_fp_dup
+#define fp_dup                 Perl_fp_dup
+#define Perl_dirp_dup          CPerlObj::Perl_dirp_dup
+#define dirp_dup               Perl_dirp_dup
+#define Perl_gp_dup            CPerlObj::Perl_gp_dup
+#define gp_dup                 Perl_gp_dup
+#define Perl_mg_dup            CPerlObj::Perl_mg_dup
+#define mg_dup                 Perl_mg_dup
+#define Perl_sv_dup            CPerlObj::Perl_sv_dup
+#define sv_dup                 Perl_sv_dup
+#if defined(HAVE_INTERP_INTERN)
+#define Perl_sys_intern_dup    CPerlObj::Perl_sys_intern_dup
+#define sys_intern_dup         Perl_sys_intern_dup
+#endif
+#define Perl_ptr_table_new     CPerlObj::Perl_ptr_table_new
+#define ptr_table_new          Perl_ptr_table_new
+#define Perl_ptr_table_fetch   CPerlObj::Perl_ptr_table_fetch
+#define ptr_table_fetch                Perl_ptr_table_fetch
+#define Perl_ptr_table_store   CPerlObj::Perl_ptr_table_store
+#define ptr_table_store                Perl_ptr_table_store
+#define Perl_ptr_table_split   CPerlObj::Perl_ptr_table_split
+#define ptr_table_split                Perl_ptr_table_split
+#endif
 #if defined(PERL_OBJECT)
+#else
 #endif
 #if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT)
 #define S_avhv_index_sv                CPerlObj::S_avhv_index_sv
 #define too_few_arguments      S_too_few_arguments
 #define S_too_many_arguments   CPerlObj::S_too_many_arguments
 #define too_many_arguments     S_too_many_arguments
+#define S_op_clear             CPerlObj::S_op_clear
+#define op_clear               S_op_clear
 #define S_null                 CPerlObj::S_null
 #define null                   S_null
 #define S_pad_findlex          CPerlObj::S_pad_findlex
 #define is_handle_constructor  S_is_handle_constructor
 #define S_gv_ename             CPerlObj::S_gv_ename
 #define gv_ename               S_gv_ename
+#define S_cv_dump              CPerlObj::S_cv_dump
+#define cv_dump                        S_cv_dump
 #define S_cv_clone2            CPerlObj::S_cv_clone2
 #define cv_clone2              S_cv_clone2
 #define S_scalar_mod_type      CPerlObj::S_scalar_mod_type
 #define scalar_mod_type                S_scalar_mod_type
+#define S_my_kid               CPerlObj::S_my_kid
+#define my_kid                 S_my_kid
+#define S_dup_attrlist         CPerlObj::S_dup_attrlist
+#define dup_attrlist           S_dup_attrlist
+#define S_apply_attrs          CPerlObj::S_apply_attrs
+#define apply_attrs            S_apply_attrs
 #  if defined(PL_OP_SLAB_ALLOC)
 #define S_Slab_Alloc           CPerlObj::S_Slab_Alloc
 #define Slab_Alloc             S_Slab_Alloc
 #if defined(PERL_IN_PP_HOT_C) || defined(PERL_DECL_PROT)
 #define S_get_db_sub           CPerlObj::S_get_db_sub
 #define get_db_sub             S_get_db_sub
+#define S_method_common                CPerlObj::S_method_common
+#define method_common          S_method_common
 #endif
 #if defined(PERL_IN_PP_SYS_C) || defined(PERL_DECL_PROT)
 #define S_doform               CPerlObj::S_doform
 #define regatom                        S_regatom
 #define S_regbranch            CPerlObj::S_regbranch
 #define regbranch              S_regbranch
-#define S_regc                 CPerlObj::S_regc
-#define regc                   S_regc
 #define S_reguni               CPerlObj::S_reguni
 #define reguni                 S_reguni
 #define S_regclass             CPerlObj::S_regclass
 #define more_xnv               S_more_xnv
 #define S_more_xpv             CPerlObj::S_more_xpv
 #define more_xpv               S_more_xpv
+#define S_more_xpviv           CPerlObj::S_more_xpviv
+#define more_xpviv             S_more_xpviv
+#define S_more_xpvnv           CPerlObj::S_more_xpvnv
+#define more_xpvnv             S_more_xpvnv
+#define S_more_xpvcv           CPerlObj::S_more_xpvcv
+#define more_xpvcv             S_more_xpvcv
+#define S_more_xpvav           CPerlObj::S_more_xpvav
+#define more_xpvav             S_more_xpvav
+#define S_more_xpvhv           CPerlObj::S_more_xpvhv
+#define more_xpvhv             S_more_xpvhv
+#define S_more_xpvmg           CPerlObj::S_more_xpvmg
+#define more_xpvmg             S_more_xpvmg
+#define S_more_xpvlv           CPerlObj::S_more_xpvlv
+#define more_xpvlv             S_more_xpvlv
+#define S_more_xpvbm           CPerlObj::S_more_xpvbm
+#define more_xpvbm             S_more_xpvbm
 #define S_more_xrv             CPerlObj::S_more_xrv
 #define more_xrv               S_more_xrv
 #define S_new_xiv              CPerlObj::S_new_xiv
 #define new_xnv                        S_new_xnv
 #define S_new_xpv              CPerlObj::S_new_xpv
 #define new_xpv                        S_new_xpv
+#define S_new_xpviv            CPerlObj::S_new_xpviv
+#define new_xpviv              S_new_xpviv
+#define S_new_xpvnv            CPerlObj::S_new_xpvnv
+#define new_xpvnv              S_new_xpvnv
+#define S_new_xpvcv            CPerlObj::S_new_xpvcv
+#define new_xpvcv              S_new_xpvcv
+#define S_new_xpvav            CPerlObj::S_new_xpvav
+#define new_xpvav              S_new_xpvav
+#define S_new_xpvhv            CPerlObj::S_new_xpvhv
+#define new_xpvhv              S_new_xpvhv
+#define S_new_xpvmg            CPerlObj::S_new_xpvmg
+#define new_xpvmg              S_new_xpvmg
+#define S_new_xpvlv            CPerlObj::S_new_xpvlv
+#define new_xpvlv              S_new_xpvlv
+#define S_new_xpvbm            CPerlObj::S_new_xpvbm
+#define new_xpvbm              S_new_xpvbm
 #define S_new_xrv              CPerlObj::S_new_xrv
 #define new_xrv                        S_new_xrv
 #define S_del_xiv              CPerlObj::S_del_xiv
 #define del_xnv                        S_del_xnv
 #define S_del_xpv              CPerlObj::S_del_xpv
 #define del_xpv                        S_del_xpv
+#define S_del_xpviv            CPerlObj::S_del_xpviv
+#define del_xpviv              S_del_xpviv
+#define S_del_xpvnv            CPerlObj::S_del_xpvnv
+#define del_xpvnv              S_del_xpvnv
+#define S_del_xpvcv            CPerlObj::S_del_xpvcv
+#define del_xpvcv              S_del_xpvcv
+#define S_del_xpvav            CPerlObj::S_del_xpvav
+#define del_xpvav              S_del_xpvav
+#define S_del_xpvhv            CPerlObj::S_del_xpvhv
+#define del_xpvhv              S_del_xpvhv
+#define S_del_xpvmg            CPerlObj::S_del_xpvmg
+#define del_xpvmg              S_del_xpvmg
+#define S_del_xpvlv            CPerlObj::S_del_xpvlv
+#define del_xpvlv              S_del_xpvlv
+#define S_del_xpvbm            CPerlObj::S_del_xpvbm
+#define del_xpvbm              S_del_xpvbm
 #define S_del_xrv              CPerlObj::S_del_xrv
 #define del_xrv                        S_del_xrv
 #define S_sv_unglob            CPerlObj::S_sv_unglob
 #define xstat                  S_xstat
 #  endif
 #endif
+#if defined(PERL_OBJECT)
+#endif
 #define Perl_ck_anoncode       CPerlObj::Perl_ck_anoncode
 #define ck_anoncode            Perl_ck_anoncode
 #define Perl_ck_bitop          CPerlObj::Perl_ck_bitop
 #define ck_grep                        Perl_ck_grep
 #define Perl_ck_index          CPerlObj::Perl_ck_index
 #define ck_index               Perl_ck_index
+#define Perl_ck_join           CPerlObj::Perl_ck_join
+#define ck_join                        Perl_ck_join
 #define Perl_ck_lengthconst    CPerlObj::Perl_ck_lengthconst
 #define ck_lengthconst         Perl_ck_lengthconst
 #define Perl_ck_lfun           CPerlObj::Perl_ck_lfun
 #define ck_listiob             Perl_ck_listiob
 #define Perl_ck_match          CPerlObj::Perl_ck_match
 #define ck_match               Perl_ck_match
+#define Perl_ck_method         CPerlObj::Perl_ck_method
+#define ck_method              Perl_ck_method
 #define Perl_ck_null           CPerlObj::Perl_ck_null
 #define ck_null                        Perl_ck_null
 #define Perl_ck_repeat         CPerlObj::Perl_ck_repeat
 #define pp_leaveloop           Perl_pp_leaveloop
 #define Perl_pp_leavesub       CPerlObj::Perl_pp_leavesub
 #define pp_leavesub            Perl_pp_leavesub
+#define Perl_pp_leavesublv     CPerlObj::Perl_pp_leavesublv
+#define pp_leavesublv          Perl_pp_leavesublv
 #define Perl_pp_leavetry       CPerlObj::Perl_pp_leavetry
 #define pp_leavetry            Perl_pp_leavetry
 #define Perl_pp_leavewrite     CPerlObj::Perl_pp_leavewrite
 #define pp_match               Perl_pp_match
 #define Perl_pp_method         CPerlObj::Perl_pp_method
 #define pp_method              Perl_pp_method
+#define Perl_pp_method_named   CPerlObj::Perl_pp_method_named
+#define pp_method_named                Perl_pp_method_named
 #define Perl_pp_mkdir          CPerlObj::Perl_pp_mkdir
 #define pp_mkdir               Perl_pp_mkdir
 #define Perl_pp_modulo         CPerlObj::Perl_pp_modulo
    disable them.
  */
 
-#if !defined(PERL_CORE) && !defined(PERL_NOCOMPAT)
-
-#  define sv_setptrobj(rv,ptr,name)    sv_setref_iv(rv,name,(IV)ptr)
-#  define sv_setptrref(rv,ptr)         sv_setref_iv(rv,Nullch,(IV)ptr)
+#if !defined(PERL_CORE)
+#  define sv_setptrobj(rv,ptr,name)    sv_setref_iv(rv,name,PTR2IV(ptr))
+#  define sv_setptrref(rv,ptr)         sv_setref_iv(rv,Nullch,PTR2IV(ptr))
+#endif
 
+#if !defined(PERL_CORE) && !defined(PERL_NOCOMPAT) && !defined(PERL_BINCOMPAT_5005)
 
 /* Compatibility for various misnamed functions.  All functions
    in the API that begin with "perl_" (not "Perl_") take an explicit
    The following are not like that, but since they had a "perl_"
    prefix in previous versions, we provide compatibility macros.
  */
-#  define perl_atexit                  call_atexit
-#  define perl_call_argv               call_argv
-#  define perl_call_pv                 call_pv
-#  define perl_call_method             call_method
-#  define perl_call_sv                 call_sv
-#  define perl_eval_sv                 eval_sv
-#  define perl_eval_pv                 eval_pv
-#  define perl_require_pv              require_pv
-#  define perl_get_sv                  get_sv
-#  define perl_get_av                  get_av
-#  define perl_get_hv                  get_hv
-#  define perl_get_cv                  get_cv
-#  define perl_init_i18nl10n           init_i18nl10n
-#  define perl_init_i18nl14n           init_i18nl14n
-#  define perl_new_ctype               new_ctype
-#  define perl_new_collate             new_collate
-#  define perl_new_numeric             new_numeric
+#  define perl_atexit(a,b)             call_atexit(a,b)
+#  define perl_call_argv(a,b,c)                call_argv(a,b,c)
+#  define perl_call_pv(a,b)            call_pv(a,b)
+#  define perl_call_method(a,b)                call_method(a,b)
+#  define perl_call_sv(a,b)            call_sv(a,b)
+#  define perl_eval_sv(a,b)            eval_sv(a,b)
+#  define perl_eval_pv(a,b)            eval_pv(a,b)
+#  define perl_require_pv(a)           require_pv(a)
+#  define perl_get_sv(a,b)             get_sv(a,b)
+#  define perl_get_av(a,b)             get_av(a,b)
+#  define perl_get_hv(a,b)             get_hv(a,b)
+#  define perl_get_cv(a,b)             get_cv(a,b)
+#  define perl_init_i18nl10n(a)                init_i18nl10n(a)
+#  define perl_init_i18nl14n(a)                init_i18nl14n(a)
+#  define perl_new_ctype(a)            new_ctype(a)
+#  define perl_new_collate(a)          new_collate(a)
+#  define perl_new_numeric(a)          new_numeric(a)
 
 /* varargs functions can't be handled with CPP macros. :-(
    This provides a set of compatibility functions that don't take
 #  define deb                          Perl_deb_nocontext
 #  define die                          Perl_die_nocontext
 #  define form                         Perl_form_nocontext
+#  define mess                         Perl_mess_nocontext
 #  define newSVpvf                     Perl_newSVpvf_nocontext
 #  define sv_catpvf                    Perl_sv_catpvf_nocontext
 #  define sv_setpvf                    Perl_sv_setpvf_nocontext
 #  define Perl_die_nocontext           Perl_die
 #  define Perl_deb_nocontext           Perl_deb
 #  define Perl_form_nocontext          Perl_form
+#  define Perl_mess_nocontext          Perl_mess
 #  define Perl_newSVpvf_nocontext      Perl_newSVpvf
 #  define Perl_sv_catpvf_nocontext     Perl_sv_catpvf
 #  define Perl_sv_setpvf_nocontext     Perl_sv_setpvf