X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=embed.pl;h=aa17d9d84ea195870e0c3ab8fc6d5bf9aae9d909;hb=d790c045735c0bdbf37ccd2827e8fc572aaeae88;hp=eaee6f72641d15d907b30142f106d8023d98a2b8;hpb=7d5ea4e771e13c538d9f0504cb48d13891fcb5c9;p=p5sagit%2Fp5-mst-13.2.git diff --git a/embed.pl b/embed.pl index eaee6f7..aa17d9d 100755 --- a/embed.pl +++ b/embed.pl @@ -302,7 +302,6 @@ print EM <<'END'; # define Perl_safesysrealloc Perl_saferealloc # define Perl_set_numeric_local perl_set_numeric_local # define Perl_set_numeric_standard perl_set_numeric_standard -# define PERL_POLLUTE /* 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 */ @@ -452,8 +451,8 @@ print EM <<'END'; */ #if !defined(PERL_CORE) -# 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) +# 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) @@ -492,6 +491,7 @@ print EM <<'END'; # 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 @@ -509,6 +509,7 @@ print EM <<'END'; # 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 @@ -843,6 +844,7 @@ my %vfuncs = qw( Perl_warner Perl_vwarner Perl_die Perl_vdie Perl_form Perl_vform + Perl_mess Perl_vmess Perl_deb Perl_vdeb Perl_newSVpvf Perl_vnewSVpvf Perl_sv_setpvf Perl_sv_vsetpvf @@ -871,7 +873,6 @@ sub emit_func { ? '' : 'return '); my $emitval = ''; if (@args and $args[$#args] =~ /\.\.\./) { - pop @args; pop @aargs; my $retarg = ''; my $ctxfunc = $func; @@ -1049,6 +1050,7 @@ npr |void |croak_nocontext|const char* pat|... np |OP* |die_nocontext |const char* pat|... np |void |deb_nocontext |const char* pat|... np |char* |form_nocontext |const char* pat|... +np |SV* |mess_nocontext |const char* pat|... np |void |warn_nocontext |const char* pat|... np |void |warner_nocontext|U32 err|const char* pat|... np |SV* |newSVpvf_nocontext|const char* pat|... @@ -1326,7 +1328,9 @@ p |void |markstack_grow #if defined(USE_LOCALE_COLLATE) p |char* |mem_collxfrm |const char* s|STRLEN len|STRLEN* xlen #endif -p |SV* |mess |const char* pat|va_list* args +p |SV* |mess |const char* pat|... +p |SV* |vmess |const char* pat|va_list* args +p |void |qerror |SV* err p |int |mg_clear |SV* sv p |int |mg_copy |SV* sv|SV* nsv|const char* key|I32 klen p |MAGIC* |mg_find |SV* sv|int type @@ -1961,14 +1965,38 @@ s |SV* |more_sv s |void |more_xiv s |void |more_xnv s |void |more_xpv +s |void |more_xpviv +s |void |more_xpvnv +s |void |more_xpvcv +s |void |more_xpvav +s |void |more_xpvhv +s |void |more_xpvmg +s |void |more_xpvlv +s |void |more_xpvbm s |void |more_xrv s |XPVIV* |new_xiv s |XPVNV* |new_xnv s |XPV* |new_xpv +s |XPVIV* |new_xpviv +s |XPVNV* |new_xpvnv +s |XPVCV* |new_xpvcv +s |XPVAV* |new_xpvav +s |XPVHV* |new_xpvhv +s |XPVMG* |new_xpvmg +s |XPVLV* |new_xpvlv +s |XPVBM* |new_xpvbm s |XRV* |new_xrv s |void |del_xiv |XPVIV* p s |void |del_xnv |XPVNV* p s |void |del_xpv |XPV* p +s |void |del_xpviv |XPVIV* p +s |void |del_xpvnv |XPVNV* p +s |void |del_xpvcv |XPVCV* p +s |void |del_xpvav |XPVAV* p +s |void |del_xpvhv |XPVHV* p +s |void |del_xpvmg |XPVMG* p +s |void |del_xpvlv |XPVLV* p +s |void |del_xpvbm |XPVBM* p s |void |del_xrv |XRV* p s |void |sv_unglob |SV* sv s |void |not_a_number |SV *sv