This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Use PerlMemShared for CopSTASHPV and CopFILE. MUCH harder than it sounds!
[perl5.git] / embed.h
diff --git a/embed.h b/embed.h
index 58c3b59..bbae4f1 100644 (file)
--- a/embed.h
+++ b/embed.h
 #define hv_undef               Perl_hv_undef
 #define ibcmp                  Perl_ibcmp
 #define ibcmp_locale           Perl_ibcmp_locale
+#define ibcmp_utf8             Perl_ibcmp_utf8
 #define ingroup                        Perl_ingroup
+#define init_argv_symbols      Perl_init_argv_symbols
 #define init_debugger          Perl_init_debugger
 #define init_stacks            Perl_init_stacks
 #define init_tm                        Perl_init_tm
 #define invert                 Perl_invert
 #define is_gv_magical          Perl_is_gv_magical
 #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 to_uni_upper           Perl_to_uni_upper
 #define to_uni_title           Perl_to_uni_title
 #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 newUNOP                        Perl_newUNOP
 #define newWHILEOP             Perl_newWHILEOP
 #define new_stackinfo          Perl_new_stackinfo
+#define new_vstring            Perl_new_vstring
 #define nextargv               Perl_nextargv
 #define ninstr                 Perl_ninstr
 #define oopsCV                 Perl_oopsCV
 #define same_dirent            Perl_same_dirent
 #endif
 #define savepv                 Perl_savepv
+#define savesharedpv           Perl_savesharedpv
 #define savepvn                        Perl_savepvn
 #define savestack_grow         Perl_savestack_grow
 #define save_aelem             Perl_save_aelem
 #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
 #define save_helem             Perl_save_helem
 #define setenv_getix           Perl_setenv_getix
 #endif
 #define setdefout              Perl_setdefout
-#define sharepvn               Perl_sharepvn
 #define share_hek              Perl_share_hek
 #define sighandler             Perl_sighandler
 #define stack_grow             Perl_stack_grow
 #define sv_pos_b2u             Perl_sv_pos_b2u
 #define sv_pvutf8n_force       Perl_sv_pvutf8n_force
 #define sv_pvbyten_force       Perl_sv_pvbyten_force
+#define sv_recode_to_utf8      Perl_sv_recode_to_utf8
 #define sv_reftype             Perl_sv_reftype
 #define sv_replace             Perl_sv_replace
 #define sv_report_used         Perl_sv_report_used
 #define swash_fetch            Perl_swash_fetch
 #define taint_env              Perl_taint_env
 #define taint_proper           Perl_taint_proper
+#define to_utf8_case           Perl_to_utf8_case
 #define to_utf8_lower          Perl_to_utf8_lower
 #define to_utf8_upper          Perl_to_utf8_upper
 #define to_utf8_title          Perl_to_utf8_title
+#define to_utf8_fold           Perl_to_utf8_fold
 #if defined(UNLINK_ALL_VERSIONS)
 #define unlnk                  Perl_unlnk
 #endif
 #define utf8n_to_uvuni         Perl_utf8n_to_uvuni
 #define uvchr_to_utf8          Perl_uvchr_to_utf8
 #define uvuni_to_utf8          Perl_uvuni_to_utf8
+#define uvchr_to_utf8_flags    Perl_uvchr_to_utf8_flags
+#define uvuni_to_utf8_flags    Perl_uvuni_to_utf8_flags
+#define pv_uni_display         Perl_pv_uni_display
+#define sv_uni_display         Perl_sv_uni_display
 #define vivify_defelem         Perl_vivify_defelem
 #define vivify_ref             Perl_vivify_ref
 #define wait4pid               Perl_wait4pid
 #define sv_usepvn_mg           Perl_sv_usepvn_mg
 #define get_vtbl               Perl_get_vtbl
 #define pv_display             Perl_pv_display
-#define sv_uni_display         Perl_sv_uni_display
 #define dump_indent            Perl_dump_indent
 #define dump_vindent           Perl_dump_vindent
 #define do_gv_dump             Perl_do_gv_dump
 #define my_kid                 S_my_kid
 #define dup_attrlist           S_dup_attrlist
 #define apply_attrs            S_apply_attrs
+#define apply_attrs_my         S_apply_attrs_my
 #  if defined(PL_OP_SLAB_ALLOC)
 #define Slab_Alloc             S_Slab_Alloc
+#define Slab_Free              S_Slab_Free
 #  endif
 #endif
 #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)
 #define regrepeat_hard         S_regrepeat_hard
 #define regtry                 S_regtry
 #define reginclass             S_reginclass
+#define reginclasslen          S_reginclasslen
 #define regcppush              S_regcppush
 #define regcppop               S_regcppop
 #define regcp_set_to           S_regcp_set_to
 #define reghopmaybe3           S_reghopmaybe3
 #define find_byclass           S_find_byclass
 #endif
-#if defined(PERL_IN_RUN_C) || defined(PERL_DECL_PROT)
-#   ifdef DEBUGGING
+#if defined(PERL_IN_DUMP_C) || defined(PERL_DECL_PROT)
 #define deb_curcv              S_deb_curcv
 #define debprof                        S_debprof
-#   endif
 #endif
 #if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT)
 #define save_scalar_at         S_save_scalar_at
 #define sv_pvn_force_flags     Perl_sv_pvn_force_flags
 #define sv_2pv_flags           Perl_sv_2pv_flags
 #define my_atof2               Perl_my_atof2
+#define my_socketpair          Perl_my_socketpair
+#if defined(USE_PERLIO) && !defined(USE_SFIO)
+#define PerlIO_close           Perl_PerlIO_close
+#define PerlIO_fill            Perl_PerlIO_fill
+#define PerlIO_fileno          Perl_PerlIO_fileno
+#define PerlIO_eof             Perl_PerlIO_eof
+#define PerlIO_error           Perl_PerlIO_error
+#define PerlIO_flush           Perl_PerlIO_flush
+#define PerlIO_clearerr                Perl_PerlIO_clearerr
+#define PerlIO_set_cnt         Perl_PerlIO_set_cnt
+#define PerlIO_set_ptrcnt      Perl_PerlIO_set_ptrcnt
+#define PerlIO_setlinebuf      Perl_PerlIO_setlinebuf
+#define PerlIO_read            Perl_PerlIO_read
+#define PerlIO_write           Perl_PerlIO_write
+#define PerlIO_unread          Perl_PerlIO_unread
+#define PerlIO_tell            Perl_PerlIO_tell
+#define PerlIO_seek            Perl_PerlIO_seek
+#define PerlIO_get_base                Perl_PerlIO_get_base
+#define PerlIO_get_ptr         Perl_PerlIO_get_ptr
+#define PerlIO_get_bufsiz      Perl_PerlIO_get_bufsiz
+#define PerlIO_get_cnt         Perl_PerlIO_get_cnt
+#define PerlIO_stdin           Perl_PerlIO_stdin
+#define PerlIO_stdout          Perl_PerlIO_stdout
+#define PerlIO_stderr          Perl_PerlIO_stderr
+#endif /* PERLIO_LAYERS */
 #define ck_anoncode            Perl_ck_anoncode
 #define ck_bitop               Perl_ck_bitop
 #define ck_concat              Perl_ck_concat
 #define ck_defined             Perl_ck_defined
 #define ck_delete              Perl_ck_delete
+#define ck_die                 Perl_ck_die
 #define ck_eof                 Perl_ck_eof
 #define ck_eval                        Perl_ck_eval
 #define ck_exec                        Perl_ck_exec
 #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_utf8(a,b,c,d,e,f,g,h)    Perl_ibcmp_utf8(aTHX_ a,b,c,d,e,f,g,h)
 #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)
 #define init_stacks()          Perl_init_stacks(aTHX)
 #define init_tm(a)             Perl_init_tm(aTHX_ a)
 #define invert(a)              Perl_invert(aTHX_ a)
 #define is_gv_magical(a,b,c)   Perl_is_gv_magical(aTHX_ a,b,c)
 #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 to_uni_upper(a,b,c)    Perl_to_uni_upper(aTHX_ a,b,c)
 #define to_uni_title(a,b,c)    Perl_to_uni_title(aTHX_ a,b,c)
 #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 newUNOP(a,b,c)         Perl_newUNOP(aTHX_ a,b,c)
 #define newWHILEOP(a,b,c,d,e,f,g)      Perl_newWHILEOP(aTHX_ a,b,c,d,e,f,g)
 #define new_stackinfo(a,b)     Perl_new_stackinfo(aTHX_ a,b)
+#define new_vstring(a,b)       Perl_new_vstring(aTHX_ a,b)
 #define nextargv(a)            Perl_nextargv(aTHX_ a)
 #define ninstr(a,b,c,d)                Perl_ninstr(aTHX_ a,b,c,d)
 #define oopsCV(a)              Perl_oopsCV(aTHX_ a)
 #define ref(a,b)               Perl_ref(aTHX_ a,b)
 #define refkids(a,b)           Perl_refkids(aTHX_ a,b)
 #define regdump(a)             Perl_regdump(aTHX_ a)
-#define regclass_swash(a,b,c)  Perl_regclass_swash(aTHX_ a,b,c)
+#define regclass_swash(a,b,c,d)        Perl_regclass_swash(aTHX_ a,b,c,d)
 #define pregexec(a,b,c,d,e,f,g)        Perl_pregexec(aTHX_ a,b,c,d,e,f,g)
 #define pregfree(a)            Perl_pregfree(aTHX_ a)
 #define pregcomp(a,b,c)                Perl_pregcomp(aTHX_ a,b,c)
 #define same_dirent(a,b)       Perl_same_dirent(aTHX_ a,b)
 #endif
 #define savepv(a)              Perl_savepv(aTHX_ a)
+#define savesharedpv(a)                Perl_savesharedpv(aTHX_ a)
 #define savepvn(a,b)           Perl_savepvn(aTHX_ a,b)
 #define savestack_grow()       Perl_savestack_grow(aTHX)
 #define save_aelem(a,b,c)      Perl_save_aelem(aTHX_ a,b,c)
 #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)
 #define save_helem(a,b,c)      Perl_save_helem(aTHX_ a,b,c)
 #define setenv_getix(a)                Perl_setenv_getix(aTHX_ a)
 #endif
 #define setdefout(a)           Perl_setdefout(aTHX_ a)
-#define sharepvn(a,b,c)                Perl_sharepvn(aTHX_ a,b,c)
 #define share_hek(a,b,c)       Perl_share_hek(aTHX_ a,b,c)
 #define sighandler             Perl_sighandler
 #define stack_grow(a,b,c)      Perl_stack_grow(aTHX_ a,b,c)
 #define sv_pos_b2u(a,b)                Perl_sv_pos_b2u(aTHX_ a,b)
 #define sv_pvutf8n_force(a,b)  Perl_sv_pvutf8n_force(aTHX_ a,b)
 #define sv_pvbyten_force(a,b)  Perl_sv_pvbyten_force(aTHX_ a,b)
+#define sv_recode_to_utf8(a,b) Perl_sv_recode_to_utf8(aTHX_ a,b)
 #define sv_reftype(a,b)                Perl_sv_reftype(aTHX_ a,b)
 #define sv_replace(a,b)                Perl_sv_replace(aTHX_ a,b)
 #define sv_report_used()       Perl_sv_report_used(aTHX)
 #define swash_fetch(a,b,c)     Perl_swash_fetch(aTHX_ a,b,c)
 #define taint_env()            Perl_taint_env(aTHX)
 #define taint_proper(a,b)      Perl_taint_proper(aTHX_ a,b)
+#define to_utf8_case(a,b,c,d,e,f)      Perl_to_utf8_case(aTHX_ a,b,c,d,e,f)
 #define to_utf8_lower(a,b,c)   Perl_to_utf8_lower(aTHX_ a,b,c)
 #define to_utf8_upper(a,b,c)   Perl_to_utf8_upper(aTHX_ a,b,c)
 #define to_utf8_title(a,b,c)   Perl_to_utf8_title(aTHX_ a,b,c)
+#define to_utf8_fold(a,b,c)    Perl_to_utf8_fold(aTHX_ a,b,c)
 #if defined(UNLINK_ALL_VERSIONS)
 #define unlnk(a)               Perl_unlnk(aTHX_ a)
 #endif
 #define utf8n_to_uvuni(a,b,c,d)        Perl_utf8n_to_uvuni(aTHX_ a,b,c,d)
 #define uvchr_to_utf8(a,b)     Perl_uvchr_to_utf8(aTHX_ a,b)
 #define uvuni_to_utf8(a,b)     Perl_uvuni_to_utf8(aTHX_ a,b)
+#define uvchr_to_utf8_flags(a,b,c)     Perl_uvchr_to_utf8_flags(aTHX_ a,b,c)
+#define uvuni_to_utf8_flags(a,b,c)     Perl_uvuni_to_utf8_flags(aTHX_ a,b,c)
+#define pv_uni_display(a,b,c,d,e)      Perl_pv_uni_display(aTHX_ a,b,c,d,e)
+#define sv_uni_display(a,b,c,d)        Perl_sv_uni_display(aTHX_ a,b,c,d)
 #define vivify_defelem(a)      Perl_vivify_defelem(aTHX_ a)
 #define vivify_ref(a,b)                Perl_vivify_ref(aTHX_ a,b)
 #define wait4pid(a,b,c)                Perl_wait4pid(aTHX_ a,b,c)
 #define sv_usepvn_mg(a,b,c)    Perl_sv_usepvn_mg(aTHX_ a,b,c)
 #define get_vtbl(a)            Perl_get_vtbl(aTHX_ a)
 #define pv_display(a,b,c,d,e)  Perl_pv_display(aTHX_ a,b,c,d,e)
-#define sv_uni_display(a,b,c)  Perl_sv_uni_display(aTHX_ a,b,c)
 #define dump_vindent(a,b,c,d)  Perl_dump_vindent(aTHX_ a,b,c,d)
 #define do_gv_dump(a,b,c,d)    Perl_do_gv_dump(aTHX_ a,b,c,d)
 #define do_gvgv_dump(a,b,c,d)  Perl_do_gvgv_dump(aTHX_ a,b,c,d)
 #  endif
 #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 my_kid(a,b,c)          S_my_kid(aTHX_ a,b,c)
 #define dup_attrlist(a)                S_dup_attrlist(aTHX_ a)
-#define apply_attrs(a,b,c)     S_apply_attrs(aTHX_ a,b,c)
+#define apply_attrs(a,b,c,d)   S_apply_attrs(aTHX_ a,b,c,d)
+#define apply_attrs_my(a,b,c,d)        S_apply_attrs_my(aTHX_ a,b,c,d)
 #  if defined(PL_OP_SLAB_ALLOC)
 #define Slab_Alloc(a,b)                S_Slab_Alloc(aTHX_ a,b)
+#define Slab_Free(a)           S_Slab_Free(aTHX_ a)
 #  endif
 #endif
 #if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)
 #define regrepeat_hard(a,b,c)  S_regrepeat_hard(aTHX_ a,b,c)
 #define regtry(a,b)            S_regtry(aTHX_ a,b)
 #define reginclass(a,b,c)      S_reginclass(aTHX_ a,b,c)
+#define reginclasslen(a,b,c,d) S_reginclasslen(aTHX_ a,b,c,d)
 #define regcppush(a)           S_regcppush(aTHX_ a)
 #define regcppop()             S_regcppop(aTHX)
 #define regcp_set_to(a)                S_regcp_set_to(aTHX_ a)
 #define reghopmaybe3(a,b,c)    S_reghopmaybe3(aTHX_ a,b,c)
 #define find_byclass(a,b,c,d,e,f)      S_find_byclass(aTHX_ a,b,c,d,e,f)
 #endif
-#if defined(PERL_IN_RUN_C) || defined(PERL_DECL_PROT)
-#   ifdef DEBUGGING
+#if defined(PERL_IN_DUMP_C) || defined(PERL_DECL_PROT)
 #define deb_curcv(a)           S_deb_curcv(aTHX_ a)
 #define debprof(a)             S_debprof(aTHX_ a)
-#   endif
 #endif
 #if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT)
 #define save_scalar_at(a)      S_save_scalar_at(aTHX_ a)
 #define sv_pvn_force_flags(a,b,c)      Perl_sv_pvn_force_flags(aTHX_ a,b,c)
 #define sv_2pv_flags(a,b,c)    Perl_sv_2pv_flags(aTHX_ a,b,c)
 #define my_atof2(a,b)          Perl_my_atof2(aTHX_ a,b)
+#define my_socketpair          Perl_my_socketpair
+#if defined(USE_PERLIO) && !defined(USE_SFIO)
+#define PerlIO_close(a)                Perl_PerlIO_close(aTHX_ a)
+#define PerlIO_fill(a)         Perl_PerlIO_fill(aTHX_ a)
+#define PerlIO_fileno(a)       Perl_PerlIO_fileno(aTHX_ a)
+#define PerlIO_eof(a)          Perl_PerlIO_eof(aTHX_ a)
+#define PerlIO_error(a)                Perl_PerlIO_error(aTHX_ a)
+#define PerlIO_flush(a)                Perl_PerlIO_flush(aTHX_ a)
+#define PerlIO_clearerr(a)     Perl_PerlIO_clearerr(aTHX_ a)
+#define PerlIO_set_cnt(a,b)    Perl_PerlIO_set_cnt(aTHX_ a,b)
+#define PerlIO_set_ptrcnt(a,b,c)       Perl_PerlIO_set_ptrcnt(aTHX_ a,b,c)
+#define PerlIO_setlinebuf(a)   Perl_PerlIO_setlinebuf(aTHX_ a)
+#define PerlIO_read(a,b,c)     Perl_PerlIO_read(aTHX_ a,b,c)
+#define PerlIO_write(a,b,c)    Perl_PerlIO_write(aTHX_ a,b,c)
+#define PerlIO_unread(a,b,c)   Perl_PerlIO_unread(aTHX_ a,b,c)
+#define PerlIO_tell(a)         Perl_PerlIO_tell(aTHX_ a)
+#define PerlIO_seek(a,b,c)     Perl_PerlIO_seek(aTHX_ a,b,c)
+#define PerlIO_get_base(a)     Perl_PerlIO_get_base(aTHX_ a)
+#define PerlIO_get_ptr(a)      Perl_PerlIO_get_ptr(aTHX_ a)
+#define PerlIO_get_bufsiz(a)   Perl_PerlIO_get_bufsiz(aTHX_ a)
+#define PerlIO_get_cnt(a)      Perl_PerlIO_get_cnt(aTHX_ a)
+#define PerlIO_stdin()         Perl_PerlIO_stdin(aTHX)
+#define PerlIO_stdout()                Perl_PerlIO_stdout(aTHX)
+#define PerlIO_stderr()                Perl_PerlIO_stderr(aTHX)
+#endif /* PERLIO_LAYERS */
 #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_defined(a)          Perl_ck_defined(aTHX_ a)
 #define ck_delete(a)           Perl_ck_delete(aTHX_ a)
+#define ck_die(a)              Perl_ck_die(aTHX_ a)
 #define ck_eof(a)              Perl_ck_eof(aTHX_ a)
 #define ck_eval(a)             Perl_ck_eval(aTHX_ a)
 #define ck_exec(a)             Perl_ck_exec(aTHX_ a)