diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 1999-06-07 05:18:34 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 1999-06-07 05:18:34 +0000 |
commit | 864dbfa3ca8032ef66f7aa86961933b19b962357 (patch) | |
tree | 4186157b2fc82346ec83e789b065a908a56c1641 | |
parent | fdf134946da249a71c49962435817212b8fa195a (diff) | |
download | perl-864dbfa3ca8032ef66f7aa86961933b19b962357.tar.gz |
initial stub implementation of implicit thread/this
pointer argument; builds/tests on Solaris, win32
hasn't been fixed up yet; proto.h, global.sym and
static function decls are now generated from a common
database in proto.pl; some inconsistently named
perl_foo() things are now Perl_foo(), compatibility
#defines provided; perl_foo() (lowercase 'p') reserved
for functions that take an explicit context argument;
next step: generate #define foo(a,b) Perl_foo(aTHX_ a,b)
p4raw-id: //depot/perl@3522
-rw-r--r-- | XSUB.h | 8 | ||||
-rw-r--r-- | av.c | 55 | ||||
-rw-r--r-- | cop.h | 4 | ||||
-rw-r--r-- | deb.c | 9 | ||||
-rw-r--r-- | doio.c | 53 | ||||
-rw-r--r-- | doop.c | 50 | ||||
-rw-r--r-- | dump.c | 41 | ||||
-rw-r--r-- | ebcdic.c | 1 | ||||
-rw-r--r-- | embed.h | 1980 | ||||
-rwxr-xr-x | embed.pl | 22 | ||||
-rw-r--r-- | ext/POSIX/POSIX.xs | 6 | ||||
-rw-r--r-- | global.sym | 1195 | ||||
-rw-r--r-- | globals.c | 16 | ||||
-rw-r--r-- | gv.c | 51 | ||||
-rw-r--r-- | gv.h | 2 | ||||
-rw-r--r-- | hv.c | 77 | ||||
-rw-r--r-- | malloc.c | 45 | ||||
-rw-r--r-- | mg.c | 137 | ||||
-rw-r--r-- | miniperlmain.c | 7 | ||||
-rw-r--r-- | objXSUB.h | 3888 | ||||
-rw-r--r-- | op.c | 238 | ||||
-rw-r--r-- | opcode.h | 1404 | ||||
-rwxr-xr-x | opcode.pl | 24 | ||||
-rw-r--r-- | perl.c | 197 | ||||
-rw-r--r-- | perl.h | 64 | ||||
-rw-r--r-- | perl_exp.SH | 34 | ||||
-rw-r--r-- | perlio.c | 1 | ||||
-rw-r--r-- | perly.c | 20 | ||||
-rw-r--r-- | perly.y | 7 | ||||
-rw-r--r-- | pp.c | 34 | ||||
-rw-r--r-- | pp.sym | 754 | ||||
-rw-r--r-- | pp_ctl.c | 95 | ||||
-rw-r--r-- | pp_hot.c | 19 | ||||
-rw-r--r-- | pp_proto.h | 754 | ||||
-rw-r--r-- | pp_sys.c | 59 | ||||
-rw-r--r-- | proto.h | 2314 | ||||
-rw-r--r-- | regcomp.c | 105 | ||||
-rw-r--r-- | regexec.c | 52 | ||||
-rw-r--r-- | run.c | 20 | ||||
-rw-r--r-- | scope.c | 93 | ||||
-rw-r--r-- | scope.h | 11 | ||||
-rw-r--r-- | sv.c | 292 | ||||
-rw-r--r-- | taint.c | 5 | ||||
-rw-r--r-- | toke.c | 162 | ||||
-rw-r--r-- | universal.c | 7 | ||||
-rw-r--r-- | utf8.c | 89 | ||||
-rw-r--r-- | util.c | 194 |
47 files changed, 7487 insertions, 7208 deletions
@@ -69,11 +69,11 @@ tmpsv = ST(1); \ else { \ /* XXX GV_ADDWARN */ \ - tmpsv = perl_get_sv(form("%s::%s", module, \ - vn = "XS_VERSION"), FALSE); \ + tmpsv = get_sv(form("%s::%s", module, \ + vn = "XS_VERSION"), FALSE); \ if (!tmpsv || !SvOK(tmpsv)) \ - tmpsv = perl_get_sv(form("%s::%s", module, \ - vn = "VERSION"), FALSE); \ + tmpsv = get_sv(form("%s::%s", module, \ + vn = "VERSION"), FALSE); \ } \ if (tmpsv && (!SvOK(tmpsv) || strNE(XS_VERSION, SvPV(tmpsv, n_a)))) \ croak("%s object version %s does not match %s%s%s%s %_", \ @@ -13,10 +13,11 @@ */ #include "EXTERN.h" +#define PERL_IN_AV_C #include "perl.h" void -av_reify(AV *av) +Perl_av_reify(pTHX_ AV *av) { I32 key; SV* sv; @@ -46,7 +47,7 @@ av_reify(AV *av) } void -av_extend(AV *av, I32 key) +Perl_av_extend(pTHX_ AV *av, I32 key) { dTHR; /* only necessary if we have to extend stack */ MAGIC *mg; @@ -60,7 +61,7 @@ av_extend(AV *av, I32 key) PUSHs(SvTIED_obj((SV*)av, mg)); PUSHs(sv_2mortal(newSViv(key+1))); PUTBACK; - perl_call_method("EXTEND", G_SCALAR|G_DISCARD); + call_method("EXTEND", G_SCALAR|G_DISCARD); POPSTACK; FREETMPS; LEAVE; @@ -149,7 +150,7 @@ av_extend(AV *av, I32 key) } SV** -av_fetch(register AV *av, I32 key, I32 lval) +Perl_av_fetch(pTHX_ register AV *av, I32 key, I32 lval) { SV *sv; @@ -196,7 +197,7 @@ av_fetch(register AV *av, I32 key, I32 lval) } SV** -av_store(register AV *av, I32 key, SV *val) +Perl_av_store(pTHX_ register AV *av, I32 key, SV *val) { SV** ary; U32 fill; @@ -255,7 +256,7 @@ av_store(register AV *av, I32 key, SV *val) } AV * -newAV(void) +Perl_newAV(pTHX) { register AV *av; @@ -269,7 +270,7 @@ newAV(void) } AV * -av_make(register I32 size, register SV **strp) +Perl_av_make(pTHX_ register I32 size, register SV **strp) { register AV *av; register I32 i; @@ -295,7 +296,7 @@ av_make(register I32 size, register SV **strp) } AV * -av_fake(register I32 size, register SV **strp) +Perl_av_fake(pTHX_ register I32 size, register SV **strp) { register AV *av; register SV** ary; @@ -318,7 +319,7 @@ av_fake(register I32 size, register SV **strp) } void -av_clear(register AV *av) +Perl_av_clear(pTHX_ register AV *av) { register I32 key; SV** ary; @@ -359,7 +360,7 @@ av_clear(register AV *av) } void -av_undef(register AV *av) +Perl_av_undef(pTHX_ register AV *av) { register I32 key; @@ -387,7 +388,7 @@ av_undef(register AV *av) } void -av_push(register AV *av, SV *val) +Perl_av_push(pTHX_ register AV *av, SV *val) { MAGIC *mg; if (!av) @@ -404,7 +405,7 @@ av_push(register AV *av, SV *val) PUSHs(val); PUTBACK; ENTER; - perl_call_method("PUSH", G_SCALAR|G_DISCARD); + call_method("PUSH", G_SCALAR|G_DISCARD); LEAVE; POPSTACK; return; @@ -413,7 +414,7 @@ av_push(register AV *av, SV *val) } SV * -av_pop(register AV *av) +Perl_av_pop(pTHX_ register AV *av) { SV *retval; MAGIC* mg; @@ -429,7 +430,7 @@ av_pop(register AV *av) XPUSHs(SvTIED_obj((SV*)av, mg)); PUTBACK; ENTER; - if (perl_call_method("POP", G_SCALAR)) { + if (call_method("POP", G_SCALAR)) { retval = newSVsv(*PL_stack_sp--); } else { retval = &PL_sv_undef; @@ -446,7 +447,7 @@ av_pop(register AV *av) } void -av_unshift(register AV *av, register I32 num) +Perl_av_unshift(pTHX_ register AV *av, register I32 num) { register I32 i; register SV **ary; @@ -468,7 +469,7 @@ av_unshift(register AV *av, register I32 num) } PUTBACK; ENTER; - perl_call_method("UNSHIFT", G_SCALAR|G_DISCARD); + call_method("UNSHIFT", G_SCALAR|G_DISCARD); LEAVE; POPSTACK; return; @@ -499,7 +500,7 @@ av_unshift(register AV *av, register I32 num) } SV * -av_shift(register AV *av) +Perl_av_shift(pTHX_ register AV *av) { SV *retval; MAGIC* mg; @@ -515,7 +516,7 @@ av_shift(register AV *av) XPUSHs(SvTIED_obj((SV*)av, mg)); PUTBACK; ENTER; - if (perl_call_method("SHIFT", G_SCALAR)) { + if (call_method("SHIFT", G_SCALAR)) { retval = newSVsv(*PL_stack_sp--); } else { retval = &PL_sv_undef; @@ -536,13 +537,13 @@ av_shift(register AV *av) } I32 -av_len(register AV *av) +Perl_av_len(pTHX_ register AV *av) { return AvFILL(av); } void -av_fill(register AV *av, I32 fill) +Perl_av_fill(pTHX_ register AV *av, I32 fill) { MAGIC *mg; if (!av) @@ -559,7 +560,7 @@ av_fill(register AV *av, I32 fill) PUSHs(SvTIED_obj((SV*)av, mg)); PUSHs(sv_2mortal(newSViv(fill+1))); PUTBACK; - perl_call_method("STORESIZE", G_SCALAR|G_DISCARD); + call_method("STORESIZE", G_SCALAR|G_DISCARD); POPSTACK; FREETMPS; LEAVE; @@ -595,7 +596,7 @@ av_fill(register AV *av, I32 fill) */ STATIC I32 -avhv_index_sv(SV* sv) +avhv_index_sv(pTHX_ SV* sv) { I32 index = SvIV(sv); if (index < 1) @@ -604,7 +605,7 @@ avhv_index_sv(SV* sv) } HV* -avhv_keys(AV *av) +Perl_avhv_keys(pTHX_ AV *av) { SV **keysp = av_fetch(av, 0, FALSE); if (keysp) { @@ -622,7 +623,7 @@ avhv_keys(AV *av) } SV** -avhv_fetch_ent(AV *av, SV *keysv, I32 lval, U32 hash) +Perl_avhv_fetch_ent(pTHX_ AV *av, SV *keysv, I32 lval, U32 hash) { SV **indsvp; HV *keys = avhv_keys(av); @@ -635,21 +636,21 @@ avhv_fetch_ent(AV *av, SV *keysv, I32 lval, U32 hash) } bool -avhv_exists_ent(AV *av, SV *keysv, U32 hash) +Perl_avhv_exists_ent(pTHX_ AV *av, SV *keysv, U32 hash) { HV *keys = avhv_keys(av); return hv_exists_ent(keys, keysv, hash); } HE * -avhv_iternext(AV *av) +Perl_avhv_iternext(pTHX_ AV *av) { HV *keys = avhv_keys(av); return hv_iternext(keys); } SV * -avhv_iterval(AV *av, register HE *entry) +Perl_avhv_iterval(pTHX_ AV *av, register HE *entry) { SV *sv = hv_iterval(avhv_keys(av), entry); return *av_fetch(av, avhv_index_sv(sv), TRUE); @@ -291,7 +291,7 @@ struct context { #define G_ARRAY 1 #define G_VOID 128 /* skip this bit when adding flags below */ -/* extra flags for perl_call_* routines */ +/* extra flags for Perl_call_* routines */ #define G_DISCARD 2 /* Call FREETMPS. */ #define G_EVAL 4 /* Assume eval {} around subroutine call. */ #define G_NOARGS 8 /* Don't construct a @_ array. */ @@ -302,7 +302,7 @@ struct context { #define EVAL_NULL 0 /* not in an eval */ #define EVAL_INEVAL 1 /* some enclosing scope is an eval */ #define EVAL_WARNONLY 2 /* used by yywarn() when calling yyerror() */ -#define EVAL_KEEPERR 4 /* set by perl_call_sv if G_KEEPERR */ +#define EVAL_KEEPERR 4 /* set by Perl_call_sv if G_KEEPERR */ /* Support for switching (stack and block) contexts. * This ensures magic doesn't invalidate local stack and cx pointers. @@ -13,10 +13,11 @@ */ #include "EXTERN.h" +#define PERL_IN_DEB_C #include "perl.h" void -deb(const char *pat, ...) +Perl_deb(pTHX_ const char *pat, ...) { #ifdef DEBUGGING dTHR; @@ -44,7 +45,7 @@ deb(const char *pat, ...) } void -deb_growlevel(void) +Perl_deb_growlevel(pTHX) { #ifdef DEBUGGING PL_dlmax += 128; @@ -54,7 +55,7 @@ deb_growlevel(void) } I32 -debstackptrs(void) +Perl_debstackptrs(pTHX) { #ifdef DEBUGGING dTHR; @@ -70,7 +71,7 @@ debstackptrs(void) } I32 -debstack(void) +Perl_debstack(pTHX) { #ifdef DEBUGGING dTHR; @@ -15,6 +15,7 @@ */ #include "EXTERN.h" +#define PERL_IN_DOIO_C #include "perl.h" #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) @@ -81,7 +82,7 @@ #endif bool -do_open(GV *gv, register char *name, I32 len, int as_raw, int rawmode, int rawperm, PerlIO *supplied_fp) +Perl_do_open(pTHX_ GV *gv, register char *name, I32 len, int as_raw, int rawmode, int rawperm, PerlIO *supplied_fp) { register IO *io = GvIOn(gv); PerlIO *saveifp = Nullfp; @@ -410,7 +411,7 @@ say_false: } PerlIO * -nextargv(register GV *gv) +Perl_nextargv(pTHX_ register GV *gv) { register SV *sv; #ifndef FLEXFILENAMES @@ -580,7 +581,7 @@ nextargv(register GV *gv) #ifdef HAS_PIPE void -do_pipe(SV *sv, GV *rgv, GV *wgv) +Perl_do_pipe(pTHX_ SV *sv, GV *rgv, GV *wgv) { register IO *rstio; register IO *wstio; @@ -625,7 +626,7 @@ badexit: /* explicit renamed to avoid C++ conflict -- kja */ bool -do_close(GV *gv, bool not_implicit) +Perl_do_close(pTHX_ GV *gv, bool not_implicit) { bool retval; IO *io; @@ -659,7 +660,7 @@ do_close(GV *gv, bool not_implicit) } bool -io_close(IO *io) +Perl_io_close(pTHX_ IO *io) { bool retval = FALSE; int status; @@ -690,7 +691,7 @@ io_close(IO *io) } bool -do_eof(GV *gv) +Perl_do_eof(pTHX_ GV *gv) { dTHR; register IO *io; @@ -728,7 +729,7 @@ do_eof(GV *gv) } Off_t -do_tell(GV *gv) +Perl_do_tell(pTHX_ GV *gv) { register IO *io; register PerlIO *fp; @@ -750,7 +751,7 @@ do_tell(GV *gv) } bool -do_seek(GV *gv, Off_t pos, int whence) +Perl_do_seek(pTHX_ GV *gv, Off_t pos, int whence) { register IO *io; register PerlIO *fp; @@ -772,7 +773,7 @@ do_seek(GV *gv, Off_t pos, int whence) } Off_t -do_sysseek(GV *gv, Off_t pos, int whence) +Perl_do_sysseek(pTHX_ GV *gv, Off_t pos, int whence) { register IO *io; register PerlIO *fp; @@ -789,7 +790,7 @@ do_sysseek(GV *gv, Off_t pos, int whence) } int -do_binmode(PerlIO *fp, int iotype, int flag) +Perl_do_binmode(pTHX_ PerlIO *fp, int iotype, int flag) { if (flag != TRUE) croak("panic: unsetting binmode"); /* Not implemented yet */ @@ -880,7 +881,7 @@ Off_t length; /* length to set file to */ #endif /* F_FREESP */ bool -do_print(register SV *sv, PerlIO *fp) +Perl_do_print(pTHX_ register SV *sv, PerlIO *fp) { register char *tmps; STRLEN len; @@ -930,7 +931,7 @@ do_print(register SV *sv, PerlIO *fp) } I32 -my_stat(ARGSproto) +Perl_my_stat(pTHX_ ARGSproto) { djSP; IO *io; @@ -984,7 +985,7 @@ my_stat(ARGSproto) } I32 -my_lstat(ARGSproto) +Perl_my_lstat(pTHX_ ARGSproto) { djSP; SV *sv; @@ -1011,7 +1012,7 @@ my_lstat(ARGSproto) } bool -do_aexec(SV *really, register SV **mark, register SV **sp) +Perl_do_aexec(pTHX_ SV *really, register SV **mark, register SV **sp) { register char **a; char *tmps; @@ -1043,7 +1044,7 @@ do_aexec(SV *really, register SV **mark, register SV **sp) } void -do_execfree(void) +Perl_do_execfree(pTHX) { if (PL_Argv) { Safefree(PL_Argv); @@ -1058,13 +1059,13 @@ do_execfree(void) #if !defined(OS2) && !defined(WIN32) && !defined(DJGPP) bool -do_exec(char *cmd) +Perl_do_exec(pTHX_ char *cmd) { return do_exec3(cmd,0,0); } bool -do_exec3(char *cmd, int fd, int do_report) +Perl_do_exec3(pTHX_ char *cmd, int fd, int do_report) { register char **a; register char *s; @@ -1164,7 +1165,7 @@ do_exec3(char *cmd, int fd, int do_report) #endif /* OS2 || WIN32 */ I32 -apply(I32 type, register SV **mark, register SV **sp) +Perl_apply(pTHX_ I32 type, register SV **mark, register SV **sp) { dTHR; register I32 val; @@ -1366,7 +1367,7 @@ nothing in the core. /* Do the permissions allow some operation? Assumes statcache already set. */ #ifndef VMS /* VMS' cando is in vms.c */ I32 -cando(I32 bit, I32 effective, register struct stat *statbufp) +Perl_cando(pTHX_ I32 bit, I32 effective, register struct stat *statbufp) { #ifdef DOSISH /* [Comments and code from Len Reed] @@ -1418,7 +1419,7 @@ cando(I32 bit, I32 effective, register struct stat *statbufp) #endif /* ! VMS */ I32 -ingroup(I32 testgid, I32 effective) +Perl_ingroup(pTHX_ I32 testgid, I32 effective) { if (testgid == (effective ? PL_egid : PL_gid)) return TRUE; @@ -1442,7 +1443,7 @@ ingroup(I32 testgid, I32 effective) #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) I32 -do_ipcget(I32 optype, SV **mark, SV **sp) +Perl_do_ipcget(pTHX_ I32 optype, SV **mark, SV **sp) { dTHR; key_t key; @@ -1475,7 +1476,7 @@ do_ipcget(I32 optype, SV **mark, SV **sp) } I32 -do_ipcctl(I32 optype, SV **mark, SV **sp) +Perl_do_ipcctl(pTHX_ I32 optype, SV **mark, SV **sp) { dTHR; SV *astr; @@ -1592,7 +1593,7 @@ do_ipcctl(I32 optype, SV **mark, SV **sp) } I32 -do_msgsnd(SV **mark, SV **sp) +Perl_do_msgsnd(pTHX_ SV **mark, SV **sp) { #ifdef HAS_MSG dTHR; @@ -1615,7 +1616,7 @@ do_msgsnd(SV **mark, SV **sp) } I32 -do_msgrcv(SV **mark, SV **sp) +Perl_do_msgrcv(pTHX_ SV **mark, SV **sp) { #ifdef HAS_MSG dTHR; @@ -1646,7 +1647,7 @@ do_msgrcv(SV **mark, SV **sp) } I32 -do_semop(SV **mark, SV **sp) +Perl_do_semop(pTHX_ SV **mark, SV **sp) { #ifdef HAS_SEM dTHR; @@ -1671,7 +1672,7 @@ do_semop(SV **mark, SV **sp) } I32 -do_shmio(I32 optype, SV **mark, SV **sp) +Perl_do_shmio(pTHX_ I32 optype, SV **mark, SV **sp) { #ifdef HAS_SHM dTHR; @@ -12,27 +12,15 @@ */ #include "EXTERN.h" +#define PERL_IN_DOOP_C #include "perl.h" #if !defined(NSIG) || defined(M_UNIX) || defined(M_XENIX) #include <signal.h> #endif -#ifndef PERL_OBJECT -static I32 do_trans_CC_simple (SV *sv); -static I32 do_trans_CC_count (SV *sv); -static I32 do_trans_CC_complex (SV *sv); -static I32 do_trans_UU_simple (SV *sv); -static I32 do_trans_UU_count (SV *sv); -static I32 do_trans_UU_complex (SV *sv); -static I32 do_trans_UC_simple (SV *sv); -static I32 do_trans_CU_simple (SV *sv); -static I32 do_trans_UC_trivial (SV *sv); -static I32 do_trans_CU_trivial (SV *sv); -#endif - STATIC I32 -do_trans_CC_simple(SV *sv) +do_trans_CC_simple(pTHX_ SV *sv) { dTHR; U8 *s; @@ -62,7 +50,7 @@ do_trans_CC_simple(SV *sv) } STATIC I32 -do_trans_CC_count(SV *sv) +do_trans_CC_count(pTHX_ SV *sv) { dTHR; U8 *s; @@ -88,7 +76,7 @@ do_trans_CC_count(SV *sv) } STATIC I32 -do_trans_CC_complex(SV *sv) +do_trans_CC_complex(pTHX_ SV *sv) { dTHR; U8 *s; @@ -145,7 +133,7 @@ do_trans_CC_complex(SV *sv) } STATIC I32 -do_trans_UU_simple(SV *sv) +do_trans_UU_simple(pTHX_ SV *sv) { dTHR; U8 *s; @@ -197,7 +185,7 @@ do_trans_UU_simple(SV *sv) } STATIC I32 -do_trans_UU_count(SV *sv) +do_trans_UU_count(pTHX_ SV *sv) { dTHR; U8 *s; @@ -224,7 +212,7 @@ do_trans_UU_count(SV *sv) } STATIC I32 -do_trans_UC_simple(SV *sv) +do_trans_UC_simple(pTHX_ SV *sv) { dTHR; U8 *s; @@ -277,7 +265,7 @@ do_trans_UC_simple(SV *sv) } STATIC I32 -do_trans_CU_simple(SV *sv) +do_trans_CU_simple(pTHX_ SV *sv) { dTHR; U8 *s; @@ -340,7 +328,7 @@ do_trans_CU_simple(SV *sv) /* utf-8 to latin-1 */ STATIC I32 -do_trans_UC_trivial(SV *sv) +do_trans_UC_trivial(pTHX_ SV *sv) { dTHR; U8 *s; @@ -372,7 +360,7 @@ do_trans_UC_trivial(SV *sv) /* latin-1 to utf-8 */ STATIC I32 -do_trans_CU_trivial(SV *sv) +do_trans_CU_trivial(pTHX_ SV *sv) { dTHR; U8 *s; @@ -406,7 +394,7 @@ do_trans_CU_trivial(SV *sv) } STATIC I32 -do_trans_UU_complex(SV *sv) +do_trans_UU_complex(pTHX_ SV *sv) { dTHR; U8 *s; @@ -591,7 +579,7 @@ do_trans_UU_complex(SV *sv) } I32 -do_trans(SV *sv) +Perl_do_trans(pTHX_ SV *sv) { dTHR; STRLEN len; @@ -642,7 +630,7 @@ do_trans(SV *sv) } void -do_join(register SV *sv, SV *del, register SV **mark, register SV **sp) +Perl_do_join(pTHX_ register SV *sv, SV *del, register SV **mark, register SV **sp) { SV **oldmark = mark; register I32 items = sp - mark; @@ -697,7 +685,7 @@ do_join(register SV *sv, SV *del, register SV **mark, register SV **sp) } void -do_sprintf(SV *sv, I32 len, SV **sarg) +Perl_do_sprintf(pTHX_ SV *sv, I32 len, SV **sarg) { STRLEN patlen; char *pat = SvPV(*sarg, patlen); @@ -710,7 +698,7 @@ do_sprintf(SV *sv, I32 len, SV **sarg) } void -do_vecset(SV *sv) +Perl_do_vecset(pTHX_ SV *sv) { SV *targ = LvTARG(sv); register I32 offset; @@ -761,7 +749,7 @@ do_vecset(SV *sv) } void -do_chop(register SV *astr, register SV *sv) +Perl_do_chop(pTHX_ register SV *astr, register SV *sv) { STRLEN len; char *s; @@ -824,7 +812,7 @@ do_chop(register SV *astr, register SV *sv) } I32 -do_chomp(register SV *sv) +Perl_do_chomp(pTHX_ register SV *sv) { dTHR; register I32 count; @@ -902,7 +890,7 @@ do_chomp(register SV *sv) } void -do_vop(I32 optype, SV *sv, SV *left, SV *right) +Perl_do_vop(pTHX_ I32 optype, SV *sv, SV *left, SV *right) { dTHR; /* just for taint */ #ifdef LIBERAL @@ -1017,7 +1005,7 @@ do_vop(I32 optype, SV *sv, SV *left, SV *right) } OP * -do_kv(ARGSproto) +Perl_do_kv(pTHX_ ARGSproto) { djSP; HV *hv = (HV*)POPs; @@ -13,6 +13,7 @@ */ #include "EXTERN.h" +#define PERL_IN_DUMP_C #include "perl.h" #ifndef DBL_DIG @@ -20,7 +21,7 @@ #endif void -dump_indent(I32 level, PerlIO *file, const char* pat, ...) +Perl_dump_indent(pTHX_ I32 level, PerlIO *file, const char* pat, ...) { dTHR; va_list args; @@ -32,7 +33,7 @@ dump_indent(I32 level, PerlIO *file, const char* pat, ...) } void -dump_all(void) +Perl_dump_all(pTHX) { dTHR; PerlIO_setlinebuf(Perl_debug_log); @@ -42,7 +43,7 @@ dump_all(void) } void -dump_packsubs(HV *stash) +Perl_dump_packsubs(pTHX_ HV *stash) { dTHR; I32 i; @@ -68,7 +69,7 @@ dump_packsubs(HV *stash) } void -dump_sub(GV *gv) +Perl_dump_sub(pTHX_ GV *gv) { SV *sv = sv_newmortal(); @@ -85,7 +86,7 @@ dump_sub(GV *gv) } void -dump_form(GV *gv) +Perl_dump_form(pTHX_ GV *gv) { SV *sv = sv_newmortal(); @@ -98,13 +99,13 @@ dump_form(GV *gv) } void -dump_eval(void) +Perl_dump_eval(pTHX) { op_dump(PL_eval_root); } char * -pv_display(SV *sv, char *pv, STRLEN cur, STRLEN len, STRLEN pvlim) +Perl_pv_display(pTHX_ SV *sv, char *pv, STRLEN cur, STRLEN len, STRLEN pvlim) { int truncated = 0; int nul_terminated = len > cur && pv[cur] == '\0'; @@ -143,7 +144,7 @@ pv_display(SV *sv, char *pv, STRLEN cur, STRLEN len, STRLEN pvlim) } char * -sv_peek(SV *sv) +Perl_sv_peek(pTHX_ SV *sv) { SV *t = sv_newmortal(); STRLEN n_a; @@ -297,7 +298,7 @@ sv_peek(SV *sv) } void -do_pmop_dump(I32 level, PerlIO *file, PMOP *pm) +Perl_do_pmop_dump(pTHX_ I32 level, PerlIO *file, PMOP *pm) { char ch; @@ -357,13 +358,13 @@ do_pmop_dump(I32 level, PerlIO *file, PMOP *pm) } void -pmop_dump(PMOP *pm) +Perl_pmop_dump(pTHX_ PMOP *pm) { do_pmop_dump(0, Perl_debug_log, pm); } void -do_op_dump(I32 level, PerlIO *file, OP *o) +Perl_do_op_dump(pTHX_ I32 level, PerlIO *file, OP *o) { dTHR; STRLEN n_a; @@ -580,13 +581,13 @@ do_op_dump(I32 level, PerlIO *file, OP *o) } void -op_dump(OP *o) +Perl_op_dump(pTHX_ OP *o) { do_op_dump(0, Perl_debug_log, o); } void -gv_dump(GV *gv) +Perl_gv_dump(pTHX_ GV *gv) { SV *sv; @@ -607,7 +608,7 @@ gv_dump(GV *gv) } void -do_magic_dump(I32 level, PerlIO *file, MAGIC *mg, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim) +Perl_do_magic_dump(pTHX_ I32 level, PerlIO *file, MAGIC *mg, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim) { for (; mg; mg = mg->mg_moremagic) { dump_indent(level, file, " MAGIC = 0x%lx\n", (long)mg); @@ -695,13 +696,13 @@ do_magic_dump(I32 level, PerlIO *file, MAGIC *mg, I32 nest, I32 maxnest, bool du } void -magic_dump(MAGIC *mg) +Perl_magic_dump(pTHX_ MAGIC *mg) { do_magic_dump(0, Perl_debug_log, mg, 0, 0, 0, 0); } void -do_hv_dump(I32 level, PerlIO *file, char *name, HV *sv) +Perl_do_hv_dump(pTHX_ I32 level, PerlIO *file, char *name, HV *sv) { dump_indent(level, file, "%s = 0x%lx", name, (long)sv); if (sv && HvNAME(sv)) @@ -711,7 +712,7 @@ do_hv_dump(I32 level, PerlIO *file, char *name, HV *sv) } void -do_gv_dump(I32 level, PerlIO *file, char *name, GV *sv) +Perl_do_gv_dump(pTHX_ I32 level, PerlIO *file, char *name, GV *sv) { dump_indent(level, file, "%s = 0x%lx", name, (long)sv); if (sv && GvNAME(sv)) @@ -721,7 +722,7 @@ do_gv_dump(I32 level, PerlIO *file, char *name, GV *sv) } void -do_gvgv_dump(I32 level, PerlIO *file, char *name, GV *sv) +Perl_do_gvgv_dump(pTHX_ I32 level, PerlIO *file, char *name, GV *sv) { dump_indent(level, file, "%s = 0x%lx", name, (long)sv); if (sv && GvNAME(sv)) { @@ -735,7 +736,7 @@ do_gvgv_dump(I32 level, PerlIO *file, char *name, GV *sv) } void -do_sv_dump(I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim) +Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim) { dTHR; SV *d = sv_newmortal(); @@ -1139,7 +1140,7 @@ do_sv_dump(I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bool dumpops, } void -sv_dump(SV *sv) +Perl_sv_dump(pTHX_ SV *sv) { do_sv_dump(0, Perl_debug_log, sv, 0, 0, 0, 0); } @@ -1,4 +1,5 @@ #include "EXTERN.h" +#define PERL_IN_EBCDIC_C #include "perl.h" /* in ASCII order, not that it matters */ @@ -11,6 +11,8 @@ #if !defined(PERL_OBJECT) +#define ErrorNo Perl_ErrorNo +#define GetVars Perl_GetVars #define Gv_AMupdate Perl_Gv_AMupdate #define amagic_call Perl_amagic_call #define append_elem Perl_append_elem @@ -42,7 +44,12 @@ #define block_start Perl_block_start #define boot_core_UNIVERSAL Perl_boot_core_UNIVERSAL #define bset_obj_store Perl_bset_obj_store +#define call_argv Perl_call_argv +#define call_atexit Perl_call_atexit #define call_list Perl_call_list +#define call_method Perl_call_method +#define call_pv Perl_call_pv +#define call_sv Perl_call_sv #define cando Perl_cando #define cast_i32 Perl_cast_i32 #define cast_iv Perl_cast_iv @@ -147,6 +154,8 @@ #define dump_mstats Perl_dump_mstats #define dump_packsubs Perl_dump_packsubs #define dump_sub Perl_dump_sub +#define eval_pv Perl_eval_pv +#define eval_sv Perl_eval_sv #define fbm_compile Perl_fbm_compile #define fbm_instr Perl_fbm_instr #define filter_add Perl_filter_add @@ -159,11 +168,16 @@ #define form Perl_form #define free_tmps Perl_free_tmps #define gen_constant_list Perl_gen_constant_list +#define get_av Perl_get_av +#define get_cv Perl_get_cv +#define get_hv Perl_get_hv #define get_no_modify Perl_get_no_modify #define get_op_descs Perl_get_op_descs #define get_op_names Perl_get_op_names #define get_opargs Perl_get_opargs +#define get_sv Perl_get_sv #define get_vtbl Perl_get_vtbl +#define getenv_len Perl_getenv_len #define gp_free Perl_gp_free #define gp_ref Perl_gp_ref #define gv_AVadd Perl_gv_AVadd @@ -208,8 +222,9 @@ #define ibcmp Perl_ibcmp #define ibcmp_locale Perl_ibcmp_locale #define ingroup Perl_ingroup +#define init_i18nl10n Perl_init_i18nl10n +#define init_i18nl14n Perl_init_i18nl14n #define init_stacks Perl_init_stacks -#define init_thread_intern Perl_init_thread_intern #define instr Perl_instr #define intro_my Perl_intro_my #define invert Perl_invert @@ -378,6 +393,9 @@ #define newUNOP Perl_newUNOP #define newWHILEOP Perl_newWHILEOP #define newXS Perl_newXS +#define new_collate Perl_new_collate +#define new_ctype Perl_new_ctype +#define new_numeric Perl_new_numeric #define new_stackinfo Perl_new_stackinfo #define new_struct_thread Perl_new_struct_thread #define nextargv Perl_nextargv @@ -764,6 +782,7 @@ #define regnext Perl_regnext #define regprop Perl_regprop #define repeatcpy Perl_repeatcpy +#define require_pv Perl_require_pv #define rninstr Perl_rninstr #define rsignal Perl_rsignal #define rsignal_restore Perl_rsignal_restore @@ -828,6 +847,8 @@ #define scan_oct Perl_scan_oct #define scope Perl_scope #define screaminstr Perl_screaminstr +#define set_numeric_local Perl_set_numeric_local +#define set_numeric_standard Perl_set_numeric_standard #define setdefout Perl_setdefout #define setenv_getix Perl_setenv_getix #define share_hek Perl_share_hek @@ -968,159 +989,1011 @@ #else /* PERL_OBJECT */ -#define Gv_AMupdate CPerlObj::Perl_Gv_AMupdate +#define Perl_ErrorNo CPerlObj::Perl_ErrorNo +#define Perl_GetVars CPerlObj::Perl_GetVars +#define Perl_Gv_AMupdate CPerlObj::Perl_Gv_AMupdate +#define Perl_amagic_call CPerlObj::Perl_amagic_call +#define Perl_append_elem CPerlObj::Perl_append_elem +#define Perl_append_list CPerlObj::Perl_append_list +#define Perl_apply CPerlObj::Perl_apply +#define Perl_assertref CPerlObj::Perl_assertref +#define Perl_av_clear CPerlObj::Perl_av_clear +#define Perl_av_extend CPerlObj::Perl_av_extend +#define Perl_av_fake CPerlObj::Perl_av_fake +#define Perl_av_fetch CPerlObj::Perl_av_fetch +#define Perl_av_fill CPerlObj::Perl_av_fill +#define Perl_av_len CPerlObj::Perl_av_len +#define Perl_av_make CPerlObj::Perl_av_make +#define Perl_av_pop CPerlObj::Perl_av_pop +#define Perl_av_push CPerlObj::Perl_av_push +#define Perl_av_reify CPerlObj::Perl_av_reify +#define Perl_av_shift CPerlObj::Perl_av_shift +#define Perl_av_store CPerlObj::Perl_av_store +#define Perl_av_undef CPerlObj::Perl_av_undef +#define Perl_av_unshift CPerlObj::Perl_av_unshift +#define Perl_avhv_exists_ent CPerlObj::Perl_avhv_exists_ent +#define Perl_avhv_fetch_ent CPerlObj::Perl_avhv_fetch_ent +#define Perl_avhv_iternext CPerlObj::Perl_avhv_iternext +#define Perl_avhv_iterval CPerlObj::Perl_avhv_iterval +#define Perl_avhv_keys CPerlObj::Perl_avhv_keys +#define Perl_bind_match CPerlObj::Perl_bind_match +#define Perl_block_end CPerlObj::Perl_block_end +#define Perl_block_gimme CPerlObj::Perl_block_gimme +#define Perl_block_start CPerlObj::Perl_block_start +#define Perl_boot_core_UNIVERSAL CPerlObj::Perl_boot_core_UNIVERSAL +#define Perl_bset_obj_store CPerlObj::Perl_bset_obj_store +#define Perl_call_argv CPerlObj::Perl_call_argv +#define Perl_call_atexit CPerlObj::Perl_call_atexit +#define Perl_call_list CPerlObj::Perl_call_list +#define Perl_call_method CPerlObj::Perl_call_method +#define Perl_call_pv CPerlObj::Perl_call_pv +#define Perl_call_sv CPerlObj::Perl_call_sv +#define Perl_cando CPerlObj::Perl_cando +#define Perl_cast_i32 CPerlObj::Perl_cast_i32 +#define Perl_cast_iv CPerlObj::Perl_cast_iv +#define Perl_cast_ulong CPerlObj::Perl_cast_ulong +#define Perl_cast_uv CPerlObj::Perl_cast_uv +#define Perl_ck_anoncode CPerlObj::Perl_ck_anoncode +#define Perl_ck_bitop CPerlObj::Perl_ck_bitop +#define Perl_ck_concat CPerlObj::Perl_ck_concat +#define Perl_ck_defined CPerlObj::Perl_ck_defined +#define Perl_ck_delete CPerlObj::Perl_ck_delete +#define Perl_ck_eof CPerlObj::Perl_ck_eof +#define Perl_ck_eval CPerlObj::Perl_ck_eval +#define Perl_ck_exec CPerlObj::Perl_ck_exec +#define Perl_ck_exists CPerlObj::Perl_ck_exists +#define Perl_ck_ftst CPerlObj::Perl_ck_ftst +#define Perl_ck_fun CPerlObj::Perl_ck_fun +#define Perl_ck_fun_locale CPerlObj::Perl_ck_fun_locale +#define Perl_ck_glob CPerlObj::Perl_ck_glob +#define Perl_ck_grep CPerlObj::Perl_ck_grep +#define Perl_ck_index CPerlObj::Perl_ck_index +#define Perl_ck_lengthconst CPerlObj::Perl_ck_lengthconst +#define Perl_ck_lfun CPerlObj::Perl_ck_lfun +#define Perl_ck_listiob CPerlObj::Perl_ck_listiob +#define Perl_ck_match CPerlObj::Perl_ck_match +#define Perl_ck_null CPerlObj::Perl_ck_null +#define Perl_ck_repeat CPerlObj::Perl_ck_repeat +#define Perl_ck_require CPerlObj::Perl_ck_require +#define Perl_ck_rfun CPerlObj::Perl_ck_rfun +#define Perl_ck_rvconst CPerlObj::Perl_ck_rvconst +#define Perl_ck_scmp CPerlObj::Perl_ck_scmp +#define Perl_ck_select CPerlObj::Perl_ck_select +#define Perl_ck_shift CPerlObj::Perl_ck_shift +#define Perl_ck_sort CPerlObj::Perl_ck_sort +#define Perl_ck_spair CPerlObj::Perl_ck_spair +#define Perl_ck_split CPerlObj::Perl_ck_split +#define Perl_ck_subr CPerlObj::Perl_ck_subr +#define Perl_ck_svconst CPerlObj::Perl_ck_svconst +#define Perl_ck_trunc CPerlObj::Perl_ck_trunc +#define Perl_condpair_magic CPerlObj::Perl_condpair_magic +#define Perl_convert CPerlObj::Perl_convert +#define Perl_croak CPerlObj::Perl_croak +#define Perl_cv_ckproto CPerlObj::Perl_cv_ckproto +#define Perl_cv_clone CPerlObj::Perl_cv_clone +#define Perl_cv_const_sv CPerlObj::Perl_cv_const_sv +#define Perl_cv_undef CPerlObj::Perl_cv_undef +#define Perl_cx_dump CPerlObj::Perl_cx_dump +#define Perl_cxinc CPerlObj::Perl_cxinc +#define Perl_deb CPerlObj::Perl_deb +#define Perl_deb_growlevel CPerlObj::Perl_deb_growlevel +#define Perl_debop CPerlObj::Perl_debop +#define Perl_debprofdump CPerlObj::Perl_debprofdump +#define Perl_debstack CPerlObj::Perl_debstack +#define Perl_debstackptrs CPerlObj::Perl_debstackptrs +#define Perl_default_protect CPerlObj::Perl_default_protect +#define Perl_delimcpy CPerlObj::Perl_delimcpy +#define Perl_deprecate CPerlObj::Perl_deprecate +#define Perl_die CPerlObj::Perl_die +#define Perl_die_where CPerlObj::Perl_die_where +#define Perl_do_aexec CPerlObj::Perl_do_aexec +#define Perl_do_binmode CPerlObj::Perl_do_binmode +#define Perl_do_chomp CPerlObj::Perl_do_chomp +#define Perl_do_chop CPerlObj::Perl_do_chop +#define Perl_do_close CPerlObj::Perl_do_close +#define Perl_do_eof CPerlObj::Perl_do_eof +#define Perl_do_exec CPerlObj::Perl_do_exec +#define Perl_do_exec3 CPerlObj::Perl_do_exec3 +#define Perl_do_execfree CPerlObj::Perl_do_execfree +#define Perl_do_gv_dump CPerlObj::Perl_do_gv_dump +#define Perl_do_gvgv_dump CPerlObj::Perl_do_gvgv_dump +#define Perl_do_hv_dump CPerlObj::Perl_do_hv_dump +#define Perl_do_ipcctl CPerlObj::Perl_do_ipcctl +#define Perl_do_ipcget CPerlObj::Perl_do_ipcget +#define Perl_do_join CPerlObj::Perl_do_join +#define Perl_do_kv CPerlObj::Perl_do_kv +#define Perl_do_magic_dump CPerlObj::Perl_do_magic_dump +#define Perl_do_msgrcv CPerlObj::Perl_do_msgrcv +#define Perl_do_msgsnd CPerlObj::Perl_do_msgsnd +#define Perl_do_op_dump CPerlObj::Perl_do_op_dump +#define Perl_do_open CPerlObj::Perl_do_open +#define Perl_do_pipe CPerlObj::Perl_do_pipe +#define Perl_do_pmop_dump CPerlObj::Perl_do_pmop_dump +#define Perl_do_print CPerlObj::Perl_do_print +#define Perl_do_readline CPerlObj::Perl_do_readline +#define Perl_do_seek CPerlObj::Perl_do_seek +#define Perl_do_semop CPerlObj::Perl_do_semop +#define Perl_do_shmio CPerlObj::Perl_do_shmio +#define Perl_do_sprintf CPerlObj::Perl_do_sprintf +#define Perl_do_sv_dump CPerlObj::Perl_do_sv_dump +#define Perl_do_sysseek CPerlObj::Perl_do_sysseek +#define Perl_do_tell CPerlObj::Perl_do_tell +#define Perl_do_trans CPerlObj::Perl_do_trans +#define Perl_do_vecset CPerlObj::Perl_do_vecset +#define Perl_do_vop CPerlObj::Perl_do_vop +#define Perl_dofile CPerlObj::Perl_dofile +#define Perl_dounwind CPerlObj::Perl_dounwind +#define Perl_dowantarray CPerlObj::Perl_dowantarray +#define Perl_dump_all CPerlObj::Perl_dump_all +#define Perl_dump_eval CPerlObj::Perl_dump_eval +#define Perl_dump_fds CPerlObj::Perl_dump_fds +#define Perl_dump_form CPerlObj::Perl_dump_form +#define Perl_dump_indent CPerlObj::Perl_dump_indent +#define Perl_dump_mstats CPerlObj::Perl_dump_mstats +#define Perl_dump_packsubs CPerlObj::Perl_dump_packsubs +#define Perl_dump_sub CPerlObj::Perl_dump_sub +#define Perl_eval_pv CPerlObj::Perl_eval_pv +#define Perl_eval_sv CPerlObj::Perl_eval_sv +#define Perl_fbm_compile CPerlObj::Perl_fbm_compile +#define Perl_fbm_instr CPerlObj::Perl_fbm_instr +#define Perl_filter_add CPerlObj::Perl_filter_add +#define Perl_filter_del CPerlObj::Perl_filter_del +#define Perl_filter_read CPerlObj::Perl_filter_read +#define Perl_find_script CPerlObj::Perl_find_script +#define Perl_find_threadsv CPerlObj::Perl_find_threadsv +#define Perl_fold_constants CPerlObj::Perl_fold_constants +#define Perl_force_list CPerlObj::Perl_force_list +#define Perl_form CPerlObj::Perl_form +#define Perl_free_tmps CPerlObj::Perl_free_tmps +#define Perl_gen_constant_list CPerlObj::Perl_gen_constant_list +#define Perl_get_av CPerlObj::Perl_get_av +#define Perl_get_cv CPerlObj::Perl_get_cv +#define Perl_get_hv CPerlObj::Perl_get_hv +#define Perl_get_no_modify CPerlObj::Perl_get_no_modify +#define Perl_get_op_descs CPerlObj::Perl_get_op_descs +#define Perl_get_op_names CPerlObj::Perl_get_op_names +#define Perl_get_opargs CPerlObj::Perl_get_opargs +#define Perl_get_sv CPerlObj::Perl_get_sv +#define Perl_get_vtbl CPerlObj::Perl_get_vtbl +#define Perl_getenv_len CPerlObj::Perl_getenv_len +#define Perl_gp_free CPerlObj::Perl_gp_free +#define Perl_gp_ref CPerlObj::Perl_gp_ref +#define Perl_gv_AVadd CPerlObj::Perl_gv_AVadd +#define Perl_gv_HVadd CPerlObj::Perl_gv_HVadd +#define Perl_gv_IOadd CPerlObj::Perl_gv_IOadd +#define Perl_gv_autoload4 CPerlObj::Perl_gv_autoload4 +#define Perl_gv_check CPerlObj::Perl_gv_check +#define Perl_gv_dump CPerlObj::Perl_gv_dump +#define Perl_gv_efullname CPerlObj::Perl_gv_efullname +#define Perl_gv_efullname3 CPerlObj::Perl_gv_efullname3 +#define Perl_gv_fetchfile CPerlObj::Perl_gv_fetchfile +#define Perl_gv_fetchmeth CPerlObj::Perl_gv_fetchmeth +#define Perl_gv_fetchmethod CPerlObj::Perl_gv_fetchmethod +#define Perl_gv_fetchmethod_autoload CPerlObj::Perl_gv_fetchmethod_autoload +#define Perl_gv_fetchpv CPerlObj::Perl_gv_fetchpv +#define Perl_gv_fullname CPerlObj::Perl_gv_fullname +#define Perl_gv_fullname3 CPerlObj::Perl_gv_fullname3 +#define Perl_gv_init CPerlObj::Perl_gv_init +#define Perl_gv_stashpv CPerlObj::Perl_gv_stashpv +#define Perl_gv_stashpvn CPerlObj::Perl_gv_stashpvn +#define Perl_gv_stashsv CPerlObj::Perl_gv_stashsv +#define Perl_hv_clear CPerlObj::Perl_hv_clear +#define Perl_hv_delayfree_ent CPerlObj::Perl_hv_delayfree_ent +#define Perl_hv_delete CPerlObj::Perl_hv_delete +#define Perl_hv_delete_ent CPerlObj::Perl_hv_delete_ent +#define Perl_hv_exists CPerlObj::Perl_hv_exists +#define Perl_hv_exists_ent CPerlObj::Perl_hv_exists_ent +#define Perl_hv_fetch CPerlObj::Perl_hv_fetch +#define Perl_hv_fetch_ent CPerlObj::Perl_hv_fetch_ent +#define Perl_hv_free_ent CPerlObj::Perl_hv_free_ent +#define Perl_hv_iterinit CPerlObj::Perl_hv_iterinit +#define Perl_hv_iterkey CPerlObj::Perl_hv_iterkey +#define Perl_hv_iterkeysv CPerlObj::Perl_hv_iterkeysv +#define Perl_hv_iternext CPerlObj::Perl_hv_iternext +#define Perl_hv_iternextsv CPerlObj::Perl_hv_iternextsv +#define Perl_hv_iterval CPerlObj::Perl_hv_iterval +#define Perl_hv_ksplit CPerlObj::Perl_hv_ksplit +#define Perl_hv_magic CPerlObj::Perl_hv_magic +#define Perl_hv_store CPerlObj::Perl_hv_store +#define Perl_hv_store_ent CPerlObj::Perl_hv_store_ent +#define Perl_hv_undef CPerlObj::Perl_hv_undef +#define Perl_ibcmp CPerlObj::Perl_ibcmp +#define Perl_ibcmp_locale CPerlObj::Perl_ibcmp_locale +#define Perl_ingroup CPerlObj::Perl_ingroup +#define Perl_init_i18nl10n CPerlObj::Perl_init_i18nl10n +#define Perl_init_i18nl14n CPerlObj::Perl_init_i18nl14n +#define Perl_init_stacks CPerlObj::Perl_init_stacks +#define Perl_instr CPerlObj::Perl_instr +#define Perl_intro_my CPerlObj::Perl_intro_my +#define Perl_invert CPerlObj::Perl_invert +#define Perl_io_close CPerlObj::Perl_io_close +#define Perl_is_uni_alnum CPerlObj::Perl_is_uni_alnum +#define Perl_is_uni_alnum_lc CPerlObj::Perl_is_uni_alnum_lc +#define Perl_is_uni_alpha CPerlObj::Perl_is_uni_alpha +#define Perl_is_uni_alpha_lc CPerlObj::Perl_is_uni_alpha_lc +#define Perl_is_uni_digit CPerlObj::Perl_is_uni_digit +#define Perl_is_uni_digit_lc CPerlObj::Perl_is_uni_digit_lc +#define Perl_is_uni_idfirst CPerlObj::Perl_is_uni_idfirst +#define Perl_is_uni_idfirst_lc CPerlObj::Perl_is_uni_idfirst_lc +#define Perl_is_uni_lower CPerlObj::Perl_is_uni_lower +#define Perl_is_uni_lower_lc CPerlObj::Perl_is_uni_lower_lc +#define Perl_is_uni_print CPerlObj::Perl_is_uni_print +#define Perl_is_uni_print_lc CPerlObj::Perl_is_uni_print_lc +#define Perl_is_uni_space CPerlObj::Perl_is_uni_space +#define Perl_is_uni_space_lc CPerlObj::Perl_is_uni_space_lc +#define Perl_is_uni_upper CPerlObj::Perl_is_uni_upper +#define Perl_is_uni_upper_lc CPerlObj::Perl_is_uni_upper_lc +#define Perl_is_utf8_alnum CPerlObj::Perl_is_utf8_alnum +#define Perl_is_utf8_alpha CPerlObj::Perl_is_utf8_alpha +#define Perl_is_utf8_digit CPerlObj::Perl_is_utf8_digit +#define Perl_is_utf8_idfirst CPerlObj::Perl_is_utf8_idfirst +#define Perl_is_utf8_lower CPerlObj::Perl_is_utf8_lower +#define Perl_is_utf8_mark CPerlObj::Perl_is_utf8_mark +#define Perl_is_utf8_print CPerlObj::Perl_is_utf8_print +#define Perl_is_utf8_space CPerlObj::Perl_is_utf8_space +#define Perl_is_utf8_upper CPerlObj::Perl_is_utf8_upper +#define Perl_jmaybe CPerlObj::Perl_jmaybe +#define Perl_keyword CPerlObj::Perl_keyword +#define Perl_leave_scope CPerlObj::Perl_leave_scope +#define Perl_lex_end CPerlObj::Perl_lex_end +#define Perl_lex_start CPerlObj::Perl_lex_start +#define Perl_linklist CPerlObj::Perl_linklist +#define Perl_list CPerlObj::Perl_list +#define Perl_listkids CPerlObj::Perl_listkids +#define Perl_localize CPerlObj::Perl_localize +#define Perl_looks_like_number CPerlObj::Perl_looks_like_number +#define Perl_magic_clear_all_env CPerlObj::Perl_magic_clear_all_env +#define Perl_magic_clearenv CPerlObj::Perl_magic_clearenv +#define Perl_magic_clearpack CPerlObj::Perl_magic_clearpack +#define Perl_magic_clearsig CPerlObj::Perl_magic_clearsig +#define Perl_magic_dump CPerlObj::Perl_magic_dump +#define Perl_magic_existspack CPerlObj::Perl_magic_existspack +#define Perl_magic_freeregexp CPerlObj::Perl_magic_freeregexp +#define Perl_magic_get CPerlObj::Perl_magic_get +#define Perl_magic_getarylen CPerlObj::Perl_magic_getarylen +#define Perl_magic_getdefelem CPerlObj::Perl_magic_getdefelem +#define Perl_magic_getglob CPerlObj::Perl_magic_getglob +#define Perl_magic_getnkeys CPerlObj::Perl_magic_getnkeys +#define Perl_magic_getpack CPerlObj::Perl_magic_getpack +#define Perl_magic_getpos CPerlObj::Perl_magic_getpos +#define Perl_magic_getsig CPerlObj::Perl_magic_getsig +#define Perl_magic_getsubstr CPerlObj::Perl_magic_getsubstr +#define Perl_magic_gettaint CPerlObj::Perl_magic_gettaint +#define Perl_magic_getuvar CPerlObj::Perl_magic_getuvar +#define Perl_magic_getvec CPerlObj::Perl_magic_getvec +#define Perl_magic_killbackrefs CPerlObj::Perl_magic_killbackrefs +#define Perl_magic_len CPerlObj::Perl_magic_len +#define Perl_magic_mutexfree CPerlObj::Perl_magic_mutexfree +#define Perl_magic_nextpack CPerlObj::Perl_magic_nextpack +#define Perl_magic_regdata_cnt CPerlObj::Perl_magic_regdata_cnt +#define Perl_magic_regdatum_get CPerlObj::Perl_magic_regdatum_get +#define Perl_magic_set CPerlObj::Perl_magic_set +#define Perl_magic_set_all_env CPerlObj::Perl_magic_set_all_env +#define Perl_magic_setamagic CPerlObj::Perl_magic_setamagic +#define Perl_magic_setarylen CPerlObj::Perl_magic_setarylen +#define Perl_magic_setbm CPerlObj::Perl_magic_setbm +#define Perl_magic_setcollxfrm CPerlObj::Perl_magic_setcollxfrm +#define Perl_magic_setdbline CPerlObj::Perl_magic_setdbline +#define Perl_magic_setdefelem CPerlObj::Perl_magic_setdefelem +#define Perl_magic_setenv CPerlObj::Perl_magic_setenv +#define Perl_magic_setfm CPerlObj::Perl_magic_setfm +#define Perl_magic_setglob CPerlObj::Perl_magic_setglob +#define Perl_magic_setisa CPerlObj::Perl_magic_setisa +#define Perl_magic_setmglob CPerlObj::Perl_magic_setmglob +#define Perl_magic_setnkeys CPerlObj::Perl_magic_setnkeys +#define Perl_magic_setpack CPerlObj::Perl_magic_setpack +#define Perl_magic_setpos CPerlObj::Perl_magic_setpos +#define Perl_magic_setsig CPerlObj::Perl_magic_setsig +#define Perl_magic_setsubstr CPerlObj::Perl_magic_setsubstr +#define Perl_magic_settaint CPerlObj::Perl_magic_settaint +#define Perl_magic_setuvar CPerlObj::Perl_magic_setuvar +#define Perl_magic_setvec CPerlObj::Perl_magic_setvec +#define Perl_magic_sizepack CPerlObj::Perl_magic_sizepack +#define Perl_magic_wipepack CPerlObj::Perl_magic_wipepack +#define Perl_magicname CPerlObj::Perl_magicname +#define Perl_malloced_size CPerlObj::Perl_malloced_size +#define Perl_markstack_grow CPerlObj::Perl_markstack_grow +#define Perl_mem_collxfrm CPerlObj::Perl_mem_collxfrm +#define Perl_mess CPerlObj::Perl_mess +#define Perl_mg_clear CPerlObj::Perl_mg_clear +#define Perl_mg_copy CPerlObj::Perl_mg_copy +#define Perl_mg_find CPerlObj::Perl_mg_find +#define Perl_mg_free CPerlObj::Perl_mg_free +#define Perl_mg_get CPerlObj::Perl_mg_get +#define Perl_mg_length CPerlObj::Perl_mg_length +#define Perl_mg_magical CPerlObj::Perl_mg_magical +#define Perl_mg_set CPerlObj::Perl_mg_set +#define Perl_mg_size CPerlObj::Perl_mg_size +#define Perl_mod CPerlObj::Perl_mod +#define Perl_moreswitches CPerlObj::Perl_moreswitches +#define Perl_my CPerlObj::Perl_my +#define Perl_my_bcopy CPerlObj::Perl_my_bcopy +#define Perl_my_bzero CPerlObj::Perl_my_bzero +#define Perl_my_chsize CPerlObj::Perl_my_chsize +#define Perl_my_exit CPerlObj::Perl_my_exit +#define Perl_my_failure_exit CPerlObj::Perl_my_failure_exit +#define Perl_my_fflush_all CPerlObj::Perl_my_fflush_all +#define Perl_my_htonl CPerlObj::Perl_my_htonl +#define Perl_my_lstat CPerlObj::Perl_my_lstat +#define Perl_my_memcmp CPerlObj::Perl_my_memcmp +#define Perl_my_memset CPerlObj::Perl_my_memset +#define Perl_my_ntohl CPerlObj::Perl_my_ntohl +#define Perl_my_pclose CPerlObj::Perl_my_pclose +#define Perl_my_popen CPerlObj::Perl_my_popen +#define Perl_my_setenv CPerlObj::Perl_my_setenv +#define Perl_my_stat CPerlObj::Perl_my_stat +#define Perl_my_swap CPerlObj::Perl_my_swap +#define Perl_my_unexec CPerlObj::Perl_my_unexec +#define Perl_newANONHASH CPerlObj::Perl_newANONHASH +#define Perl_newANONLIST CPerlObj::Perl_newANONLIST +#define Perl_newANONSUB CPerlObj::Perl_newANONSUB +#define Perl_newASSIGNOP CPerlObj::Perl_newASSIGNOP +#define Perl_newAV CPerlObj::Perl_newAV +#define Perl_newAVREF CPerlObj::Perl_newAVREF +#define Perl_newBINOP CPerlObj::Perl_newBINOP +#define Perl_newCONDOP CPerlObj::Perl_newCONDOP +#define Perl_newCONSTSUB CPerlObj::Perl_newCONSTSUB +#define Perl_newCVREF CPerlObj::Perl_newCVREF +#define Perl_newFORM CPerlObj::Perl_newFORM +#define Perl_newFOROP CPerlObj::Perl_newFOROP +#define Perl_newGVOP CPerlObj::Perl_newGVOP +#define Perl_newGVREF CPerlObj::Perl_newGVREF +#define Perl_newGVgen CPerlObj::Perl_newGVgen +#define Perl_newHV CPerlObj::Perl_newHV +#define Perl_newHVREF CPerlObj::Perl_newHVREF +#define Perl_newHVhv CPerlObj::Perl_newHVhv +#define Perl_newIO CPerlObj::Perl_newIO +#define Perl_newLISTOP CPerlObj::Perl_newLISTOP +#define Perl_newLOGOP CPerlObj::Perl_newLOGOP +#define Perl_newLOOPEX CPerlObj::Perl_newLOOPEX +#define Perl_newLOOPOP CPerlObj::Perl_newLOOPOP +#define Perl_newNULLLIST CPerlObj::Perl_newNULLLIST +#define Perl_newOP CPerlObj::Perl_newOP +#define Perl_newPMOP CPerlObj::Perl_newPMOP +#define Perl_newPROG CPerlObj::Perl_newPROG +#define Perl_newPVOP CPerlObj::Perl_newPVOP +#define Perl_newRANGE CPerlObj::Perl_newRANGE +#define Perl_newRV CPerlObj::Perl_newRV +#define Perl_newRV_noinc CPerlObj::Perl_newRV_noinc +#define Perl_newSLICEOP CPerlObj::Perl_newSLICEOP +#define Perl_newSTATEOP CPerlObj::Perl_newSTATEOP +#define Perl_newSUB CPerlObj::Perl_newSUB +#define Perl_newSV CPerlObj::Perl_newSV +#define Perl_newSVOP CPerlObj::Perl_newSVOP +#define Perl_newSVREF CPerlObj::Perl_newSVREF +#define Perl_newSViv CPerlObj::Perl_newSViv +#define Perl_newSVnv CPerlObj::Perl_newSVnv +#define Perl_newSVpv CPerlObj::Perl_newSVpv +#define Perl_newSVpvf CPerlObj::Perl_newSVpvf +#define Perl_newSVpvn CPerlObj::Perl_newSVpvn +#define Perl_newSVrv CPerlObj::Perl_newSVrv +#define Perl_newSVsv CPerlObj::Perl_newSVsv +#define Perl_newUNOP CPerlObj::Perl_newUNOP +#define Perl_newWHILEOP CPerlObj::Perl_newWHILEOP +#define Perl_newXS CPerlObj::Perl_newXS +#define Perl_new_collate CPerlObj::Perl_new_collate +#define Perl_new_ctype CPerlObj::Perl_new_ctype +#define Perl_new_numeric CPerlObj::Perl_new_numeric +#define Perl_new_stackinfo CPerlObj::Perl_new_stackinfo +#define Perl_new_struct_thread CPerlObj::Perl_new_struct_thread +#define Perl_nextargv CPerlObj::Perl_nextargv +#define Perl_ninstr CPerlObj::Perl_ninstr +#define Perl_oopsAV CPerlObj::Perl_oopsAV +#define Perl_oopsCV CPerlObj::Perl_oopsCV +#define Perl_oopsHV CPerlObj::Perl_oopsHV +#define Perl_op_const_sv CPerlObj::Perl_op_const_sv +#define Perl_op_dump CPerlObj::Perl_op_dump +#define Perl_op_free CPerlObj::Perl_op_free +#define Perl_package CPerlObj::Perl_package +#define Perl_pad_alloc CPerlObj::Perl_pad_alloc +#define Perl_pad_allocmy CPerlObj::Perl_pad_allocmy +#define Perl_pad_findmy CPerlObj::Perl_pad_findmy +#define Perl_pad_free CPerlObj::Perl_pad_free +#define Perl_pad_leavemy CPerlObj::Perl_pad_leavemy +#define Perl_pad_reset CPerlObj::Perl_pad_reset +#define Perl_pad_sv CPerlObj::Perl_pad_sv +#define Perl_pad_swipe CPerlObj::Perl_pad_swipe +#define Perl_peep CPerlObj::Perl_peep +#define Perl_pidgone CPerlObj::Perl_pidgone +#define Perl_pmflag CPerlObj::Perl_pmflag +#define Perl_pmop_dump CPerlObj::Perl_pmop_dump +#define Perl_pmruntime CPerlObj::Perl_pmruntime +#define Perl_pmtrans CPerlObj::Perl_pmtrans +#define Perl_pop_return CPerlObj::Perl_pop_return +#define Perl_pop_scope CPerlObj::Perl_pop_scope +#define Perl_pp_aassign CPerlObj::Perl_pp_aassign +#define Perl_pp_abs CPerlObj::Perl_pp_abs +#define Perl_pp_accept CPerlObj::Perl_pp_accept +#define Perl_pp_add CPerlObj::Perl_pp_add +#define Perl_pp_aelem CPerlObj::Perl_pp_aelem +#define Perl_pp_aelemfast CPerlObj::Perl_pp_aelemfast +#define Perl_pp_alarm CPerlObj::Perl_pp_alarm +#define Perl_pp_and CPerlObj::Perl_pp_and +#define Perl_pp_andassign CPerlObj::Perl_pp_andassign +#define Perl_pp_anoncode CPerlObj::Perl_pp_anoncode +#define Perl_pp_anonhash CPerlObj::Perl_pp_anonhash +#define Perl_pp_anonlist CPerlObj::Perl_pp_anonlist +#define Perl_pp_aslice CPerlObj::Perl_pp_aslice +#define Perl_pp_atan2 CPerlObj::Perl_pp_atan2 +#define Perl_pp_av2arylen CPerlObj::Perl_pp_av2arylen +#define Perl_pp_backtick CPerlObj::Perl_pp_backtick +#define Perl_pp_bind CPerlObj::Perl_pp_bind +#define Perl_pp_binmode CPerlObj::Perl_pp_binmode +#define Perl_pp_bit_and CPerlObj::Perl_pp_bit_and +#define Perl_pp_bit_or CPerlObj::Perl_pp_bit_or +#define Perl_pp_bit_xor CPerlObj::Perl_pp_bit_xor +#define Perl_pp_bless CPerlObj::Perl_pp_bless +#define Perl_pp_caller CPerlObj::Perl_pp_caller +#define Perl_pp_chdir CPerlObj::Perl_pp_chdir +#define Perl_pp_chmod CPerlObj::Perl_pp_chmod +#define Perl_pp_chomp CPerlObj::Perl_pp_chomp +#define Perl_pp_chop CPerlObj::Perl_pp_chop +#define Perl_pp_chown CPerlObj::Perl_pp_chown +#define Perl_pp_chr CPerlObj::Perl_pp_chr +#define Perl_pp_chroot CPerlObj::Perl_pp_chroot +#define Perl_pp_close CPerlObj::Perl_pp_close +#define Perl_pp_closedir CPerlObj::Perl_pp_closedir +#define Perl_pp_complement CPerlObj::Perl_pp_complement +#define Perl_pp_concat CPerlObj::Perl_pp_concat +#define Perl_pp_cond_expr CPerlObj::Perl_pp_cond_expr +#define Perl_pp_connect CPerlObj::Perl_pp_connect +#define Perl_pp_const CPerlObj::Perl_pp_const +#define Perl_pp_cos CPerlObj::Perl_pp_cos +#define Perl_pp_crypt CPerlObj::Perl_pp_crypt +#define Perl_pp_dbmclose CPerlObj::Perl_pp_dbmclose +#define Perl_pp_dbmopen CPerlObj::Perl_pp_dbmopen +#define Perl_pp_dbstate CPerlObj::Perl_pp_dbstate +#define Perl_pp_defined CPerlObj::Perl_pp_defined +#define Perl_pp_delete CPerlObj::Perl_pp_delete +#define Perl_pp_die CPerlObj::Perl_pp_die +#define Perl_pp_divide CPerlObj::Perl_pp_divide +#define Perl_pp_dofile CPerlObj::Perl_pp_dofile +#define Perl_pp_dump CPerlObj::Perl_pp_dump +#define Perl_pp_each CPerlObj::Perl_pp_each +#define Perl_pp_egrent CPerlObj::Perl_pp_egrent +#define Perl_pp_ehostent CPerlObj::Perl_pp_ehostent +#define Perl_pp_enetent CPerlObj::Perl_pp_enetent +#define Perl_pp_enter CPerlObj::Perl_pp_enter +#define Perl_pp_entereval CPerlObj::Perl_pp_entereval +#define Perl_pp_enteriter CPerlObj::Perl_pp_enteriter +#define Perl_pp_enterloop CPerlObj::Perl_pp_enterloop +#define Perl_pp_entersub CPerlObj::Perl_pp_entersub +#define Perl_pp_entertry CPerlObj::Perl_pp_entertry +#define Perl_pp_enterwrite CPerlObj::Perl_pp_enterwrite +#define Perl_pp_eof CPerlObj::Perl_pp_eof +#define Perl_pp_eprotoent CPerlObj::Perl_pp_eprotoent +#define Perl_pp_epwent CPerlObj::Perl_pp_epwent +#define Perl_pp_eq CPerlObj::Perl_pp_eq +#define Perl_pp_eservent CPerlObj::Perl_pp_eservent +#define Perl_pp_exec CPerlObj::Perl_pp_exec +#define Perl_pp_exists CPerlObj::Perl_pp_exists +#define Perl_pp_exit CPerlObj::Perl_pp_exit +#define Perl_pp_exp CPerlObj::Perl_pp_exp +#define Perl_pp_fcntl CPerlObj::Perl_pp_fcntl +#define Perl_pp_fileno CPerlObj::Perl_pp_fileno +#define Perl_pp_flip CPerlObj::Perl_pp_flip +#define Perl_pp_flock CPerlObj::Perl_pp_flock +#define Perl_pp_flop CPerlObj::Perl_pp_flop +#define Perl_pp_fork CPerlObj::Perl_pp_fork +#define Perl_pp_formline CPerlObj::Perl_pp_formline +#define Perl_pp_ftatime CPerlObj::Perl_pp_ftatime +#define Perl_pp_ftbinary CPerlObj::Perl_pp_ftbinary +#define Perl_pp_ftblk CPerlObj::Perl_pp_ftblk +#define Perl_pp_ftchr CPerlObj::Perl_pp_ftchr +#define Perl_pp_ftctime CPerlObj::Perl_pp_ftctime +#define Perl_pp_ftdir CPerlObj::Perl_pp_ftdir +#define Perl_pp_fteexec CPerlObj::Perl_pp_fteexec +#define Perl_pp_fteowned CPerlObj::Perl_pp_fteowned +#define Perl_pp_fteread CPerlObj::Perl_pp_fteread +#define Perl_pp_ftewrite CPerlObj::Perl_pp_ftewrite +#define Perl_pp_ftfile CPerlObj::Perl_pp_ftfile +#define Perl_pp_ftis CPerlObj::Perl_pp_ftis +#define Perl_pp_ftlink CPerlObj::Perl_pp_ftlink +#define Perl_pp_ftmtime CPerlObj::Perl_pp_ftmtime +#define Perl_pp_ftpipe CPerlObj::Perl_pp_ftpipe +#define Perl_pp_ftrexec CPerlObj::Perl_pp_ftrexec +#define Perl_pp_ftrowned CPerlObj::Perl_pp_ftrowned +#define Perl_pp_ftrread CPerlObj::Perl_pp_ftrread +#define Perl_pp_ftrwrite CPerlObj::Perl_pp_ftrwrite +#define Perl_pp_ftsgid CPerlObj::Perl_pp_ftsgid +#define Perl_pp_ftsize CPerlObj::Perl_pp_ftsize +#define Perl_pp_ftsock CPerlObj::Perl_pp_ftsock +#define Perl_pp_ftsuid CPerlObj::Perl_pp_ftsuid +#define Perl_pp_ftsvtx CPerlObj::Perl_pp_ftsvtx +#define Perl_pp_fttext CPerlObj::Perl_pp_fttext +#define Perl_pp_fttty CPerlObj::Perl_pp_fttty +#define Perl_pp_ftzero CPerlObj::Perl_pp_ftzero +#define Perl_pp_ge CPerlObj::Perl_pp_ge +#define Perl_pp_gelem CPerlObj::Perl_pp_gelem +#define Perl_pp_getc CPerlObj::Perl_pp_getc +#define Perl_pp_getlogin CPerlObj::Perl_pp_getlogin +#define Perl_pp_getpeername CPerlObj::Perl_pp_getpeername +#define Perl_pp_getpgrp CPerlObj::Perl_pp_getpgrp +#define Perl_pp_getppid CPerlObj::Perl_pp_getppid +#define Perl_pp_getpriority CPerlObj::Perl_pp_getpriority +#define Perl_pp_getsockname CPerlObj::Perl_pp_getsockname +#define Perl_pp_ggrent CPerlObj::Perl_pp_ggrent +#define Perl_pp_ggrgid CPerlObj::Perl_pp_ggrgid +#define Perl_pp_ggrnam CPerlObj::Perl_pp_ggrnam +#define Perl_pp_ghbyaddr CPerlObj::Perl_pp_ghbyaddr +#define Perl_pp_ghbyname CPerlObj::Perl_pp_ghbyname +#define Perl_pp_ghostent CPerlObj::Perl_pp_ghostent +#define Perl_pp_glob CPerlObj::Perl_pp_glob +#define Perl_pp_gmtime CPerlObj::Perl_pp_gmtime +#define Perl_pp_gnbyaddr CPerlObj::Perl_pp_gnbyaddr +#define Perl_pp_gnbyname CPerlObj::Perl_pp_gnbyname +#define Perl_pp_gnetent CPerlObj::Perl_pp_gnetent +#define Perl_pp_goto CPerlObj::Perl_pp_goto +#define Perl_pp_gpbyname CPerlObj::Perl_pp_gpbyname +#define Perl_pp_gpbynumber CPerlObj::Perl_pp_gpbynumber +#define Perl_pp_gprotoent CPerlObj::Perl_pp_gprotoent +#define Perl_pp_gpwent CPerlObj::Perl_pp_gpwent +#define Perl_pp_gpwnam CPerlObj::Perl_pp_gpwnam +#define Perl_pp_gpwuid CPerlObj::Perl_pp_gpwuid +#define Perl_pp_grepstart CPerlObj::Perl_pp_grepstart +#define Perl_pp_grepwhile CPerlObj::Perl_pp_grepwhile +#define Perl_pp_gsbyname CPerlObj::Perl_pp_gsbyname +#define Perl_pp_gsbyport CPerlObj::Perl_pp_gsbyport +#define Perl_pp_gservent CPerlObj::Perl_pp_gservent +#define Perl_pp_gsockopt CPerlObj::Perl_pp_gsockopt +#define Perl_pp_gt CPerlObj::Perl_pp_gt +#define Perl_pp_gv CPerlObj::Perl_pp_gv +#define Perl_pp_gvsv CPerlObj::Perl_pp_gvsv +#define Perl_pp_helem CPerlObj::Perl_pp_helem +#define Perl_pp_hex CPerlObj::Perl_pp_hex +#define Perl_pp_hslice CPerlObj::Perl_pp_hslice +#define Perl_pp_i_add CPerlObj::Perl_pp_i_add +#define Perl_pp_i_divide CPerlObj::Perl_pp_i_divide +#define Perl_pp_i_eq CPerlObj::Perl_pp_i_eq +#define Perl_pp_i_ge CPerlObj::Perl_pp_i_ge +#define Perl_pp_i_gt CPerlObj::Perl_pp_i_gt +#define Perl_pp_i_le CPerlObj::Perl_pp_i_le +#define Perl_pp_i_lt CPerlObj::Perl_pp_i_lt +#define Perl_pp_i_modulo CPerlObj::Perl_pp_i_modulo +#define Perl_pp_i_multiply CPerlObj::Perl_pp_i_multiply +#define Perl_pp_i_ncmp CPerlObj::Perl_pp_i_ncmp +#define Perl_pp_i_ne CPerlObj::Perl_pp_i_ne +#define Perl_pp_i_negate CPerlObj::Perl_pp_i_negate +#define Perl_pp_i_subtract CPerlObj::Perl_pp_i_subtract +#define Perl_pp_index CPerlObj::Perl_pp_index +#define Perl_pp_int CPerlObj::Perl_pp_int +#define Perl_pp_ioctl CPerlObj::Perl_pp_ioctl +#define Perl_pp_iter CPerlObj::Perl_pp_iter +#define Perl_pp_join CPerlObj::Perl_pp_join +#define Perl_pp_keys CPerlObj::Perl_pp_keys +#define Perl_pp_kill CPerlObj::Perl_pp_kill +#define Perl_pp_last CPerlObj::Perl_pp_last +#define Perl_pp_lc CPerlObj::Perl_pp_lc +#define Perl_pp_lcfirst CPerlObj::Perl_pp_lcfirst +#define Perl_pp_le CPerlObj::Perl_pp_le +#define Perl_pp_leave CPerlObj::Perl_pp_leave +#define Perl_pp_leaveeval CPerlObj::Perl_pp_leaveeval +#define Perl_pp_leaveloop CPerlObj::Perl_pp_leaveloop +#define Perl_pp_leavesub CPerlObj::Perl_pp_leavesub +#define Perl_pp_leavetry CPerlObj::Perl_pp_leavetry +#define Perl_pp_leavewrite CPerlObj::Perl_pp_leavewrite +#define Perl_pp_left_shift CPerlObj::Perl_pp_left_shift +#define Perl_pp_length CPerlObj::Perl_pp_length +#define Perl_pp_lineseq CPerlObj::Perl_pp_lineseq +#define Perl_pp_link CPerlObj::Perl_pp_link +#define Perl_pp_list CPerlObj::Perl_pp_list +#define Perl_pp_listen CPerlObj::Perl_pp_listen +#define Perl_pp_localtime CPerlObj::Perl_pp_localtime +#define Perl_pp_lock CPerlObj::Perl_pp_lock +#define Perl_pp_log CPerlObj::Perl_pp_log +#define Perl_pp_lslice CPerlObj::Perl_pp_lslice +#define Perl_pp_lstat CPerlObj::Perl_pp_lstat +#define Perl_pp_lt CPerlObj::Perl_pp_lt +#define Perl_pp_mapstart CPerlObj::Perl_pp_mapstart +#define Perl_pp_mapwhile CPerlObj::Perl_pp_mapwhile +#define Perl_pp_match CPerlObj::Perl_pp_match +#define Perl_pp_method CPerlObj::Perl_pp_method +#define Perl_pp_mkdir CPerlObj::Perl_pp_mkdir +#define Perl_pp_modulo CPerlObj::Perl_pp_modulo +#define Perl_pp_msgctl CPerlObj::Perl_pp_msgctl +#define Perl_pp_msgget CPerlObj::Perl_pp_msgget +#define Perl_pp_msgrcv CPerlObj::Perl_pp_msgrcv +#define Perl_pp_msgsnd CPerlObj::Perl_pp_msgsnd +#define Perl_pp_multiply CPerlObj::Perl_pp_multiply +#define Perl_pp_ncmp CPerlObj::Perl_pp_ncmp +#define Perl_pp_ne CPerlObj::Perl_pp_ne +#define Perl_pp_negate CPerlObj::Perl_pp_negate +#define Perl_pp_next CPerlObj::Perl_pp_next +#define Perl_pp_nextstate CPerlObj::Perl_pp_nextstate +#define Perl_pp_not CPerlObj::Perl_pp_not +#define Perl_pp_null CPerlObj::Perl_pp_null +#define Perl_pp_oct CPerlObj::Perl_pp_oct +#define Perl_pp_open CPerlObj::Perl_pp_open +#define Perl_pp_open_dir CPerlObj::Perl_pp_open_dir +#define Perl_pp_or CPerlObj::Perl_pp_or +#define Perl_pp_orassign CPerlObj::Perl_pp_orassign +#define Perl_pp_ord CPerlObj::Perl_pp_ord +#define Perl_pp_pack CPerlObj::Perl_pp_pack +#define Perl_pp_padany CPerlObj::Perl_pp_padany +#define Perl_pp_padav CPerlObj::Perl_pp_padav +#define Perl_pp_padhv CPerlObj::Perl_pp_padhv +#define Perl_pp_padsv CPerlObj::Perl_pp_padsv +#define Perl_pp_pipe_op CPerlObj::Perl_pp_pipe_op +#define Perl_pp_pop CPerlObj::Perl_pp_pop +#define Perl_pp_pos CPerlObj::Perl_pp_pos +#define Perl_pp_postdec CPerlObj::Perl_pp_postdec +#define Perl_pp_postinc CPerlObj::Perl_pp_postinc +#define Perl_pp_pow CPerlObj::Perl_pp_pow +#define Perl_pp_predec CPerlObj::Perl_pp_predec +#define Perl_pp_preinc CPerlObj::Perl_pp_preinc +#define Perl_pp_print CPerlObj::Perl_pp_print +#define Perl_pp_prototype CPerlObj::Perl_pp_prototype +#define Perl_pp_prtf CPerlObj::Perl_pp_prtf +#define Perl_pp_push CPerlObj::Perl_pp_push +#define Perl_pp_pushmark CPerlObj::Perl_pp_pushmark +#define Perl_pp_pushre CPerlObj::Perl_pp_pushre +#define Perl_pp_qr CPerlObj::Perl_pp_qr +#define Perl_pp_quotemeta CPerlObj::Perl_pp_quotemeta +#define Perl_pp_rand CPerlObj::Perl_pp_rand +#define Perl_pp_range CPerlObj::Perl_pp_range +#define Perl_pp_rcatline CPerlObj::Perl_pp_rcatline +#define Perl_pp_read CPerlObj::Perl_pp_read +#define Perl_pp_readdir CPerlObj::Perl_pp_readdir +#define Perl_pp_readline CPerlObj::Perl_pp_readline +#define Perl_pp_readlink CPerlObj::Perl_pp_readlink +#define Perl_pp_recv CPerlObj::Perl_pp_recv +#define Perl_pp_redo CPerlObj::Perl_pp_redo +#define Perl_pp_ref CPerlObj::Perl_pp_ref +#define Perl_pp_refgen CPerlObj::Perl_pp_refgen +#define Perl_pp_regcmaybe CPerlObj::Perl_pp_regcmaybe +#define Perl_pp_regcomp CPerlObj::Perl_pp_regcomp +#define Perl_pp_regcreset CPerlObj::Perl_pp_regcreset +#define Perl_pp_rename CPerlObj::Perl_pp_rename +#define Perl_pp_repeat CPerlObj::Perl_pp_repeat +#define Perl_pp_require CPerlObj::Perl_pp_require +#define Perl_pp_reset CPerlObj::Perl_pp_reset +#define Perl_pp_return CPerlObj::Perl_pp_return +#define Perl_pp_reverse CPerlObj::Perl_pp_reverse +#define Perl_pp_rewinddir CPerlObj::Perl_pp_rewinddir +#define Perl_pp_right_shift CPerlObj::Perl_pp_right_shift +#define Perl_pp_rindex CPerlObj::Perl_pp_rindex +#define Perl_pp_rmdir CPerlObj::Perl_pp_rmdir +#define Perl_pp_rv2av CPerlObj::Perl_pp_rv2av +#define Perl_pp_rv2cv CPerlObj::Perl_pp_rv2cv +#define Perl_pp_rv2gv CPerlObj::Perl_pp_rv2gv +#define Perl_pp_rv2hv CPerlObj::Perl_pp_rv2hv +#define Perl_pp_rv2sv CPerlObj::Perl_pp_rv2sv +#define Perl_pp_sassign CPerlObj::Perl_pp_sassign +#define Perl_pp_scalar CPerlObj::Perl_pp_scalar +#define Perl_pp_schomp CPerlObj::Perl_pp_schomp +#define Perl_pp_schop CPerlObj::Perl_pp_schop +#define Perl_pp_scmp CPerlObj::Perl_pp_scmp +#define Perl_pp_scope CPerlObj::Perl_pp_scope +#define Perl_pp_seek CPerlObj::Perl_pp_seek +#define Perl_pp_seekdir CPerlObj::Perl_pp_seekdir +#define Perl_pp_select CPerlObj::Perl_pp_select +#define Perl_pp_semctl CPerlObj::Perl_pp_semctl +#define Perl_pp_semget CPerlObj::Perl_pp_semget +#define Perl_pp_semop CPerlObj::Perl_pp_semop +#define Perl_pp_send CPerlObj::Perl_pp_send +#define Perl_pp_seq CPerlObj::Perl_pp_seq +#define Perl_pp_setpgrp CPerlObj::Perl_pp_setpgrp +#define Perl_pp_setpriority CPerlObj::Perl_pp_setpriority +#define Perl_pp_sge CPerlObj::Perl_pp_sge +#define Perl_pp_sgrent CPerlObj::Perl_pp_sgrent +#define Perl_pp_sgt CPerlObj::Perl_pp_sgt +#define Perl_pp_shift CPerlObj::Perl_pp_shift +#define Perl_pp_shmctl CPerlObj::Perl_pp_shmctl +#define Perl_pp_shmget CPerlObj::Perl_pp_shmget +#define Perl_pp_shmread CPerlObj::Perl_pp_shmread +#define Perl_pp_shmwrite CPerlObj::Perl_pp_shmwrite +#define Perl_pp_shostent CPerlObj::Perl_pp_shostent +#define Perl_pp_shutdown CPerlObj::Perl_pp_shutdown +#define Perl_pp_sin CPerlObj::Perl_pp_sin +#define Perl_pp_sle CPerlObj::Perl_pp_sle +#define Perl_pp_sleep CPerlObj::Perl_pp_sleep +#define Perl_pp_slt CPerlObj::Perl_pp_slt +#define Perl_pp_sne CPerlObj::Perl_pp_sne +#define Perl_pp_snetent CPerlObj::Perl_pp_snetent +#define Perl_pp_socket CPerlObj::Perl_pp_socket +#define Perl_pp_sockpair CPerlObj::Perl_pp_sockpair +#define Perl_pp_sort CPerlObj::Perl_pp_sort +#define Perl_pp_splice CPerlObj::Perl_pp_splice +#define Perl_pp_split CPerlObj::Perl_pp_split +#define Perl_pp_sprintf CPerlObj::Perl_pp_sprintf +#define Perl_pp_sprotoent CPerlObj::Perl_pp_sprotoent +#define Perl_pp_spwent CPerlObj::Perl_pp_spwent +#define Perl_pp_sqrt CPerlObj::Perl_pp_sqrt +#define Perl_pp_srand CPerlObj::Perl_pp_srand +#define Perl_pp_srefgen CPerlObj::Perl_pp_srefgen +#define Perl_pp_sselect CPerlObj::Perl_pp_sselect +#define Perl_pp_sservent CPerlObj::Perl_pp_sservent +#define Perl_pp_ssockopt CPerlObj::Perl_pp_ssockopt +#define Perl_pp_stat CPerlObj::Perl_pp_stat +#define Perl_pp_stringify CPerlObj::Perl_pp_stringify +#define Perl_pp_stub CPerlObj::Perl_pp_stub +#define Perl_pp_study CPerlObj::Perl_pp_study +#define Perl_pp_subst CPerlObj::Perl_pp_subst +#define Perl_pp_substcont CPerlObj::Perl_pp_substcont +#define Perl_pp_substr CPerlObj::Perl_pp_substr +#define Perl_pp_subtract CPerlObj::Perl_pp_subtract +#define Perl_pp_symlink CPerlObj::Perl_pp_symlink +#define Perl_pp_syscall CPerlObj::Perl_pp_syscall +#define Perl_pp_sysopen CPerlObj::Perl_pp_sysopen +#define Perl_pp_sysread CPerlObj::Perl_pp_sysread +#define Perl_pp_sysseek CPerlObj::Perl_pp_sysseek +#define Perl_pp_system CPerlObj::Perl_pp_system +#define Perl_pp_syswrite CPerlObj::Perl_pp_syswrite +#define Perl_pp_tell CPerlObj::Perl_pp_tell +#define Perl_pp_telldir CPerlObj::Perl_pp_telldir +#define Perl_pp_threadsv CPerlObj::Perl_pp_threadsv +#define Perl_pp_tie CPerlObj::Perl_pp_tie +#define Perl_pp_tied CPerlObj::Perl_pp_tied +#define Perl_pp_time CPerlObj::Perl_pp_time +#define Perl_pp_tms CPerlObj::Perl_pp_tms +#define Perl_pp_trans CPerlObj::Perl_pp_trans +#define Perl_pp_truncate CPerlObj::Perl_pp_truncate +#define Perl_pp_uc CPerlObj::Perl_pp_uc +#define Perl_pp_ucfirst CPerlObj::Perl_pp_ucfirst +#define Perl_pp_umask CPerlObj::Perl_pp_umask +#define Perl_pp_undef CPerlObj::Perl_pp_undef +#define Perl_pp_unlink CPerlObj::Perl_pp_unlink +#define Perl_pp_unpack CPerlObj::Perl_pp_unpack +#define Perl_pp_unshift CPerlObj::Perl_pp_unshift +#define Perl_pp_unstack CPerlObj::Perl_pp_unstack +#define Perl_pp_untie CPerlObj::Perl_pp_untie +#define Perl_pp_utime CPerlObj::Perl_pp_utime +#define Perl_pp_values CPerlObj::Perl_pp_values +#define Perl_pp_vec CPerlObj::Perl_pp_vec +#define Perl_pp_wait CPerlObj::Perl_pp_wait +#define Perl_pp_waitpid CPerlObj::Perl_pp_waitpid +#define Perl_pp_wantarray CPerlObj::Perl_pp_wantarray +#define Perl_pp_warn CPerlObj::Perl_pp_warn +#define Perl_pp_xor CPerlObj::Perl_pp_xor +#define Perl_pregcomp CPerlObj::Perl_pregcomp +#define Perl_pregexec CPerlObj::Perl_pregexec +#define Perl_pregfree CPerlObj::Perl_pregfree +#define Perl_prepend_elem CPerlObj::Perl_prepend_elem +#define Perl_push_return CPerlObj::Perl_push_return +#define Perl_push_scope CPerlObj::Perl_push_scope +#define Perl_pv_display CPerlObj::Perl_pv_display +#define Perl_ref CPerlObj::Perl_ref +#define Perl_refkids CPerlObj::Perl_refkids +#define Perl_regdump CPerlObj::Perl_regdump +#define Perl_regexec_flags CPerlObj::Perl_regexec_flags +#define Perl_reginitcolors CPerlObj::Perl_reginitcolors +#define Perl_regnext CPerlObj::Perl_regnext +#define Perl_regprop CPerlObj::Perl_regprop +#define Perl_repeatcpy CPerlObj::Perl_repeatcpy +#define Perl_require_pv CPerlObj::Perl_require_pv +#define Perl_rninstr CPerlObj::Perl_rninstr +#define Perl_rsignal CPerlObj::Perl_rsignal +#define Perl_rsignal_restore CPerlObj::Perl_rsignal_restore +#define Perl_rsignal_save CPerlObj::Perl_rsignal_save +#define Perl_rsignal_state CPerlObj::Perl_rsignal_state +#define Perl_runops_debug CPerlObj::Perl_runops_debug +#define Perl_runops_standard CPerlObj::Perl_runops_standard +#define Perl_rxres_free CPerlObj::Perl_rxres_free +#define Perl_rxres_restore CPerlObj::Perl_rxres_restore +#define Perl_rxres_save CPerlObj::Perl_rxres_save +#define Perl_safesyscalloc CPerlObj::Perl_safesyscalloc +#define Perl_safesysfree CPerlObj::Perl_safesysfree +#define Perl_safesysmalloc CPerlObj::Perl_safesysmalloc +#define Perl_safesysrealloc CPerlObj::Perl_safesysrealloc +#define Perl_safexcalloc CPerlObj::Perl_safexcalloc +#define Perl_safexfree CPerlObj::Perl_safexfree +#define Perl_safexmalloc CPerlObj::Perl_safexmalloc +#define Perl_safexrealloc CPerlObj::Perl_safexrealloc +#define Perl_same_dirent CPerlObj::Perl_same_dirent +#define Perl_save_I16 CPerlObj::Perl_save_I16 +#define Perl_save_I32 CPerlObj::Perl_save_I32 +#define Perl_save_aelem CPerlObj::Perl_save_aelem +#define Perl_save_alloc CPerlObj::Perl_save_alloc +#define Perl_save_aptr CPerlObj::Perl_save_aptr +#define Perl_save_ary CPerlObj::Perl_save_ary +#define Perl_save_clearsv CPerlObj::Perl_save_clearsv +#define Perl_save_delete CPerlObj::Perl_save_delete +#define Perl_save_destructor CPerlObj::Perl_save_destructor +#define Perl_save_freeop CPerlObj::Perl_save_freeop +#define Perl_save_freepv CPerlObj::Perl_save_freepv +#define Perl_save_freesv CPerlObj::Perl_save_freesv +#define Perl_save_generic_svref CPerlObj::Perl_save_generic_svref +#define Perl_save_gp CPerlObj::Perl_save_gp +#define Perl_save_hash CPerlObj::Perl_save_hash +#define Perl_save_helem CPerlObj::Perl_save_helem +#define Perl_save_hints CPerlObj::Perl_save_hints +#define Perl_save_hptr CPerlObj::Perl_save_hptr +#define Perl_save_int CPerlObj::Perl_save_int +#define Perl_save_item CPerlObj::Perl_save_item +#define Perl_save_iv CPerlObj::Perl_save_iv +#define Perl_save_list CPerlObj::Perl_save_list +#define Perl_save_long CPerlObj::Perl_save_long +#define Perl_save_nogv CPerlObj::Perl_save_nogv +#define Perl_save_op CPerlObj::Perl_save_op +#define Perl_save_pptr CPerlObj::Perl_save_pptr +#define Perl_save_re_context CPerlObj::Perl_save_re_context +#define Perl_save_scalar CPerlObj::Perl_save_scalar +#define Perl_save_sptr CPerlObj::Perl_save_sptr +#define Perl_save_svref CPerlObj::Perl_save_svref +#define Perl_save_threadsv CPerlObj::Perl_save_threadsv +#define Perl_savepv CPerlObj::Perl_savepv +#define Perl_savepvn CPerlObj::Perl_savepvn +#define Perl_savestack_grow CPerlObj::Perl_savestack_grow +#define Perl_sawparens CPerlObj::Perl_sawparens +#define Perl_scalar CPerlObj::Perl_scalar +#define Perl_scalarkids CPerlObj::Perl_scalarkids +#define Perl_scalarseq CPerlObj::Perl_scalarseq +#define Perl_scalarvoid CPerlObj::Perl_scalarvoid +#define Perl_scan_bin CPerlObj::Perl_scan_bin +#define Perl_scan_hex CPerlObj::Perl_scan_hex +#define Perl_scan_num CPerlObj::Perl_scan_num +#define Perl_scan_oct CPerlObj::Perl_scan_oct +#define Perl_scope CPerlObj::Perl_scope +#define Perl_screaminstr CPerlObj::Perl_screaminstr +#define Perl_set_numeric_local CPerlObj::Perl_set_numeric_local +#define Perl_set_numeric_standard CPerlObj::Perl_set_numeric_standard +#define Perl_setdefout CPerlObj::Perl_setdefout +#define Perl_setenv_getix CPerlObj::Perl_setenv_getix +#define Perl_share_hek CPerlObj::Perl_share_hek +#define Perl_sharepvn CPerlObj::Perl_sharepvn +#define Perl_sighandler CPerlObj::Perl_sighandler +#define Perl_stack_grow CPerlObj::Perl_stack_grow +#define Perl_start_subparse CPerlObj::Perl_start_subparse +#define Perl_sub_crush_depth CPerlObj::Perl_sub_crush_depth +#define Perl_sv_2bool CPerlObj::Perl_sv_2bool +#define Perl_sv_2cv CPerlObj::Perl_sv_2cv +#define Perl_sv_2io CPerlObj::Perl_sv_2io +#define Perl_sv_2iv CPerlObj::Perl_sv_2iv +#define Perl_sv_2mortal CPerlObj::Perl_sv_2mortal +#define Perl_sv_2nv CPerlObj::Perl_sv_2nv +#define Perl_sv_2pv CPerlObj::Perl_sv_2pv +#define Perl_sv_2pv_nolen CPerlObj::Perl_sv_2pv_nolen +#define Perl_sv_2uv CPerlObj::Perl_sv_2uv +#define Perl_sv_add_arena CPerlObj::Perl_sv_add_arena +#define Perl_sv_backoff CPerlObj::Perl_sv_backoff +#define Perl_sv_bless CPerlObj::Perl_sv_bless +#define Perl_sv_catpv CPerlObj::Perl_sv_catpv +#define Perl_sv_catpv_mg CPerlObj::Perl_sv_catpv_mg +#define Perl_sv_catpvf CPerlObj::Perl_sv_catpvf +#define Perl_sv_catpvf_mg CPerlObj::Perl_sv_catpvf_mg +#define Perl_sv_catpvn CPerlObj::Perl_sv_catpvn +#define Perl_sv_catpvn_mg CPerlObj::Perl_sv_catpvn_mg +#define Perl_sv_catsv CPerlObj::Perl_sv_catsv +#define Perl_sv_catsv_mg CPerlObj::Perl_sv_catsv_mg +#define Perl_sv_chop CPerlObj::Perl_sv_chop +#define Perl_sv_clean_all CPerlObj::Perl_sv_clean_all +#define Perl_sv_clean_objs CPerlObj::Perl_sv_clean_objs +#define Perl_sv_clear CPerlObj::Perl_sv_clear +#define Perl_sv_cmp CPerlObj::Perl_sv_cmp +#define Perl_sv_cmp_locale CPerlObj::Perl_sv_cmp_locale +#define Perl_sv_collxfrm CPerlObj::Perl_sv_collxfrm +#define Perl_sv_compile_2op CPerlObj::Perl_sv_compile_2op +#define Perl_sv_dec CPerlObj::Perl_sv_dec +#define Perl_sv_derived_from CPerlObj::Perl_sv_derived_from +#define Perl_sv_dump CPerlObj::Perl_sv_dump +#define Perl_sv_eq CPerlObj::Perl_sv_eq +#define Perl_sv_force_normal CPerlObj::Perl_sv_force_normal +#define Perl_sv_free CPerlObj::Perl_sv_free +#define Perl_sv_free_arenas CPerlObj::Perl_sv_free_arenas +#define Perl_sv_gets CPerlObj::Perl_sv_gets +#define Perl_sv_grow CPerlObj::Perl_sv_grow +#define Perl_sv_inc CPerlObj::Perl_sv_inc +#define Perl_sv_insert CPerlObj::Perl_sv_insert +#define Perl_sv_isa CPerlObj::Perl_sv_isa +#define Perl_sv_isobject CPerlObj::Perl_sv_isobject +#define Perl_sv_iv CPerlObj::Perl_sv_iv +#define Perl_sv_len CPerlObj::Perl_sv_len +#define Perl_sv_len_utf8 CPerlObj::Perl_sv_len_utf8 +#define Perl_sv_magic CPerlObj::Perl_sv_magic +#define Perl_sv_mortalcopy CPerlObj::Perl_sv_mortalcopy +#define Perl_sv_newmortal CPerlObj::Perl_sv_newmortal +#define Perl_sv_newref CPerlObj::Perl_sv_newref +#define Perl_sv_nv CPerlObj::Perl_sv_nv +#define Perl_sv_peek CPerlObj::Perl_sv_peek +#define Perl_sv_pos_b2u CPerlObj::Perl_sv_pos_b2u +#define Perl_sv_pos_u2b CPerlObj::Perl_sv_pos_u2b +#define Perl_sv_pv CPerlObj::Perl_sv_pv +#define Perl_sv_pvn CPerlObj::Perl_sv_pvn +#define Perl_sv_pvn_force CPerlObj::Perl_sv_pvn_force +#define Perl_sv_reftype CPerlObj::Perl_sv_reftype +#define Perl_sv_replace CPerlObj::Perl_sv_replace +#define Perl_sv_report_used CPerlObj::Perl_sv_report_used +#define Perl_sv_reset CPerlObj::Perl_sv_reset +#define Perl_sv_rvweaken CPerlObj::Perl_sv_rvweaken +#define Perl_sv_setiv CPerlObj::Perl_sv_setiv +#define Perl_sv_setiv_mg CPerlObj::Perl_sv_setiv_mg +#define Perl_sv_setnv CPerlObj::Perl_sv_setnv +#define Perl_sv_setnv_mg CPerlObj::Perl_sv_setnv_mg +#define Perl_sv_setpv CPerlObj::Perl_sv_setpv +#define Perl_sv_setpv_mg CPerlObj::Perl_sv_setpv_mg +#define Perl_sv_setpvf CPerlObj::Perl_sv_setpvf +#define Perl_sv_setpvf_mg CPerlObj::Perl_sv_setpvf_mg +#define Perl_sv_setpviv CPerlObj::Perl_sv_setpviv +#define Perl_sv_setpviv_mg CPerlObj::Perl_sv_setpviv_mg +#define Perl_sv_setpvn CPerlObj::Perl_sv_setpvn +#define Perl_sv_setpvn_mg CPerlObj::Perl_sv_setpvn_mg +#define Perl_sv_setref_iv CPerlObj::Perl_sv_setref_iv +#define Perl_sv_setref_nv CPerlObj::Perl_sv_setref_nv +#define Perl_sv_setref_pv CPerlObj::Perl_sv_setref_pv +#define Perl_sv_setref_pvn CPerlObj::Perl_sv_setref_pvn +#define Perl_sv_setsv CPerlObj::Perl_sv_setsv +#define Perl_sv_setsv_mg CPerlObj::Perl_sv_setsv_mg +#define Perl_sv_setuv CPerlObj::Perl_sv_setuv +#define Perl_sv_setuv_mg CPerlObj::Perl_sv_setuv_mg +#define Perl_sv_taint CPerlObj::Perl_sv_taint +#define Perl_sv_tainted CPerlObj::Perl_sv_tainted +#define Perl_sv_true CPerlObj::Perl_sv_true +#define Perl_sv_unmagic CPerlObj::Perl_sv_unmagic +#define Perl_sv_unref CPerlObj::Perl_sv_unref +#define Perl_sv_untaint CPerlObj::Perl_sv_untaint +#define Perl_sv_upgrade CPerlObj::Perl_sv_upgrade +#define Perl_sv_usepvn CPerlObj::Perl_sv_usepvn +#define Perl_sv_usepvn_mg CPerlObj::Perl_sv_usepvn_mg +#define Perl_sv_uv CPerlObj::Perl_sv_uv +#define Perl_sv_vcatpvfn CPerlObj::Perl_sv_vcatpvfn +#define Perl_sv_vsetpvfn CPerlObj::Perl_sv_vsetpvfn +#define Perl_swash_fetch CPerlObj::Perl_swash_fetch +#define Perl_swash_init CPerlObj::Perl_swash_init +#define Perl_taint_env CPerlObj::Perl_taint_env +#define Perl_taint_proper CPerlObj::Perl_taint_proper +#define Perl_tmps_grow CPerlObj::Perl_tmps_grow +#define Perl_to_uni_lower CPerlObj::Perl_to_uni_lower +#define Perl_to_uni_lower_lc CPerlObj::Perl_to_uni_lower_lc +#define Perl_to_uni_title CPerlObj::Perl_to_uni_title +#define Perl_to_uni_title_lc CPerlObj::Perl_to_uni_title_lc +#define Perl_to_uni_upper CPerlObj::Perl_to_uni_upper +#define Perl_to_uni_upper_lc CPerlObj::Perl_to_uni_upper_lc +#define Perl_to_utf8_lower CPerlObj::Perl_to_utf8_lower +#define Perl_to_utf8_title CPerlObj::Perl_to_utf8_title +#define Perl_to_utf8_upper CPerlObj::Perl_to_utf8_upper +#define Perl_unlnk CPerlObj::Perl_unlnk +#define Perl_unlock_condpair CPerlObj::Perl_unlock_condpair +#define Perl_unshare_hek CPerlObj::Perl_unshare_hek +#define Perl_unsharepvn CPerlObj::Perl_unsharepvn +#define Perl_utf16_to_utf8 CPerlObj::Perl_utf16_to_utf8 +#define Perl_utf16_to_utf8_reversed CPerlObj::Perl_utf16_to_utf8_reversed +#define Perl_utf8_distance CPerlObj::Perl_utf8_distance +#define Perl_utf8_hop CPerlObj::Perl_utf8_hop +#define Perl_utf8_to_uv CPerlObj::Perl_utf8_to_uv +#define Perl_utilize CPerlObj::Perl_utilize +#define Perl_uv_to_utf8 CPerlObj::Perl_uv_to_utf8 +#define Perl_vivify_defelem CPerlObj::Perl_vivify_defelem +#define Perl_vivify_ref CPerlObj::Perl_vivify_ref +#define Perl_wait4pid CPerlObj::Perl_wait4pid +#define Perl_warn CPerlObj::Perl_warn +#define Perl_warner CPerlObj::Perl_warner +#define Perl_watch CPerlObj::Perl_watch +#define Perl_whichsig CPerlObj::Perl_whichsig +#define Perl_yydestruct CPerlObj::Perl_yydestruct +#define Perl_yyerror CPerlObj::Perl_yyerror +#define Perl_yylex CPerlObj::Perl_yylex +#define Perl_yyparse CPerlObj::Perl_yyparse +#define Perl_yywarn CPerlObj::Perl_yywarn #define add_data CPerlObj::Perl_add_data -#define amagic_call CPerlObj::Perl_amagic_call #define amagic_cmp CPerlObj::Perl_amagic_cmp #define amagic_cmp_locale CPerlObj::Perl_amagic_cmp_locale #define amagic_i_ncmp CPerlObj::Perl_amagic_i_ncmp #define amagic_ncmp CPerlObj::Perl_amagic_ncmp #define ao CPerlObj::Perl_ao -#define append_elem CPerlObj::Perl_append_elem -#define append_list CPerlObj::Perl_append_list -#define apply CPerlObj::Perl_apply #define asIV CPerlObj::Perl_asIV #define asUV CPerlObj::Perl_asUV -#define assertref CPerlObj::Perl_assertref -#define av_clear CPerlObj::Perl_av_clear -#define av_extend CPerlObj::Perl_av_extend -#define av_fake CPerlObj::Perl_av_fake -#define av_fetch CPerlObj::Perl_av_fetch -#define av_fill CPerlObj::Perl_av_fill -#define av_len CPerlObj::Perl_av_len -#define av_make CPerlObj::Perl_av_make -#define av_pop CPerlObj::Perl_av_pop -#define av_push CPerlObj::Perl_av_push -#define av_reify CPerlObj::Perl_av_reify -#define av_shift CPerlObj::Perl_av_shift -#define av_store CPerlObj::Perl_av_store -#define av_undef CPerlObj::Perl_av_undef -#define av_unshift CPerlObj::Perl_av_unshift -#define avhv_exists_ent CPerlObj::Perl_avhv_exists_ent -#define avhv_fetch_ent CPerlObj::Perl_avhv_fetch_ent #define avhv_index_sv CPerlObj::Perl_avhv_index_sv -#define avhv_iternext CPerlObj::Perl_avhv_iternext -#define avhv_iterval CPerlObj::Perl_avhv_iterval -#define avhv_keys CPerlObj::Perl_avhv_keys #define bad_type CPerlObj::Perl_bad_type -#define bind_match CPerlObj::Perl_bind_match -#define block_end CPerlObj::Perl_block_end -#define block_gimme CPerlObj::Perl_block_gimme -#define block_start CPerlObj::Perl_block_start -#define boot_core_UNIVERSAL CPerlObj::Perl_boot_core_UNIVERSAL -#define bset_obj_store CPerlObj::Perl_bset_obj_store #define cache_re CPerlObj::Perl_cache_re -#define call_list CPerlObj::Perl_call_list #define call_list_body CPerlObj::Perl_call_list_body -#define cando CPerlObj::Perl_cando -#define cast_i32 CPerlObj::Perl_cast_i32 -#define cast_iv CPerlObj::Perl_cast_iv -#define cast_ulong CPerlObj::Perl_cast_ulong -#define cast_uv CPerlObj::Perl_cast_uv #define check_uni CPerlObj::Perl_check_uni #define checkcomma CPerlObj::Perl_checkcomma -#define ck_anoncode CPerlObj::Perl_ck_anoncode -#define ck_bitop CPerlObj::Perl_ck_bitop -#define ck_concat CPerlObj::Perl_ck_concat -#define ck_defined CPerlObj::Perl_ck_defined -#define ck_delete CPerlObj::Perl_ck_delete -#define ck_eof CPerlObj::Perl_ck_eof -#define ck_eval CPerlObj::Perl_ck_eval -#define ck_exec CPerlObj::Perl_ck_exec -#define ck_exists CPerlObj::Perl_ck_exists -#define ck_ftst CPerlObj::Perl_ck_ftst -#define ck_fun CPerlObj::Perl_ck_fun -#define ck_fun_locale CPerlObj::Perl_ck_fun_locale -#define ck_glob CPerlObj::Perl_ck_glob -#define ck_grep CPerlObj::Perl_ck_grep -#define ck_index CPerlObj::Perl_ck_index -#define ck_lengthconst CPerlObj::Perl_ck_lengthconst -#define ck_lfun CPerlObj::Perl_ck_lfun -#define ck_listiob CPerlObj::Perl_ck_listiob -#define ck_match CPerlObj::Perl_ck_match -#define ck_null CPerlObj::Perl_ck_null -#define ck_repeat CPerlObj::Perl_ck_repeat -#define ck_require CPerlObj::Perl_ck_require -#define ck_rfun CPerlObj::Perl_ck_rfun -#define ck_rvconst CPerlObj::Perl_ck_rvconst -#define ck_scmp CPerlObj::Perl_ck_scmp -#define ck_select CPerlObj::Perl_ck_select -#define ck_shift CPerlObj::Perl_ck_shift -#define ck_sort CPerlObj::Perl_ck_sort -#define ck_spair CPerlObj::Perl_ck_spair -#define ck_split CPerlObj::Perl_ck_split -#define ck_subr CPerlObj::Perl_ck_subr -#define ck_svconst CPerlObj::Perl_ck_svconst -#define ck_trunc CPerlObj::Perl_ck_trunc #define clear_re CPerlObj::Perl_clear_re -#define condpair_magic CPerlObj::Perl_condpair_magic -#define convert CPerlObj::Perl_convert -#define croak CPerlObj::Perl_croak -#define cv_ckproto CPerlObj::Perl_cv_ckproto -#define cv_clone CPerlObj::Perl_cv_clone #define cv_clone2 CPerlObj::Perl_cv_clone2 -#define cv_const_sv CPerlObj::Perl_cv_const_sv -#define cv_undef CPerlObj::Perl_cv_undef -#define cx_dump CPerlObj::Perl_cx_dump -#define cxinc CPerlObj::Perl_cxinc -#define deb CPerlObj::Perl_deb -#define deb_growlevel CPerlObj::Perl_deb_growlevel -#define debop CPerlObj::Perl_debop #define debprof CPerlObj::Perl_debprof -#define debprofdump CPerlObj::Perl_debprofdump -#define debstack CPerlObj::Perl_debstack -#define debstackptrs CPerlObj::Perl_debstackptrs -#define default_protect CPerlObj::Perl_default_protect #define del_he CPerlObj::Perl_del_he #define del_sv CPerlObj::Perl_del_sv #define del_xiv CPerlObj::Perl_del_xiv #define del_xnv CPerlObj::Perl_del_xnv #define del_xpv CPerlObj::Perl_del_xpv #define del_xrv CPerlObj::Perl_del_xrv -#define delimcpy CPerlObj::Perl_delimcpy #define depcom CPerlObj::Perl_depcom -#define deprecate CPerlObj::Perl_deprecate -#define die CPerlObj::Perl_die -#define die_where CPerlObj::Perl_die_where #define div128 CPerlObj::Perl_div128 -#define do_aexec CPerlObj::Perl_do_aexec #define do_aspawn CPerlObj::Perl_do_aspawn -#define do_binmode CPerlObj::Perl_do_binmode -#define do_chomp CPerlObj::Perl_do_chomp -#define do_chop CPerlObj::Perl_do_chop #define do_clean_all CPerlObj::Perl_do_clean_all #define do_clean_named_objs CPerlObj::Perl_do_clean_named_objs #define do_clean_objs CPerlObj::Perl_do_clean_objs -#define do_close CPerlObj::Perl_do_close -#define do_eof CPerlObj::Perl_do_eof -#define do_exec CPerlObj::Perl_do_exec -#define do_exec3 CPerlObj::Perl_do_exec3 -#define do_execfree CPerlObj::Perl_do_execfree -#define do_gv_dump CPerlObj::Perl_do_gv_dump -#define do_gvgv_dump CPerlObj::Perl_do_gvgv_dump -#define do_hv_dump CPerlObj::Perl_do_hv_dump -#define do_ipcctl CPerlObj::Perl_do_ipcctl -#define do_ipcget CPerlObj::Perl_do_ipcget -#define do_join CPerlObj::Perl_do_join -#define do_kv CPerlObj::Perl_do_kv -#define do_magic_dump CPerlObj::Perl_do_magic_dump -#define do_msgrcv CPerlObj::Perl_do_msgrcv -#define do_msgsnd CPerlObj::Perl_do_msgsnd -#define do_op_dump CPerlObj::Perl_do_op_dump -#define do_open CPerlObj::Perl_do_open -#define do_pipe CPerlObj::Perl_do_pipe -#define do_pmop_dump CPerlObj::Perl_do_pmop_dump -#define do_print CPerlObj::Perl_do_print -#define do_readline CPerlObj::Perl_do_readline #define do_report_used CPerlObj::Perl_do_report_used -#define do_seek CPerlObj::Perl_do_seek -#define do_semop CPerlObj::Perl_do_semop -#define do_shmio CPerlObj::Perl_do_shmio -#define do_sprintf CPerlObj::Perl_do_sprintf -#define do_sv_dump CPerlObj::Perl_do_sv_dump -#define do_sysseek CPerlObj::Perl_do_sysseek -#define do_tell CPerlObj::Perl_do_tell -#define do_trans CPerlObj::Perl_do_trans #define do_trans_CC_complex CPerlObj::Perl_do_trans_CC_complex #define do_trans_CC_count CPerlObj::Perl_do_trans_CC_count #define do_trans_CC_simple CPerlObj::Perl_do_trans_CC_simple @@ -1131,13 +2004,10 @@ #define do_trans_UU_complex CPerlObj::Perl_do_trans_UU_complex #define do_trans_UU_count CPerlObj::Perl_do_trans_UU_count #define do_trans_UU_simple CPerlObj::Perl_do_trans_UU_simple -#define do_vecset CPerlObj::Perl_do_vecset -#define do_vop CPerlObj::Perl_do_vop #define docatch CPerlObj::Perl_docatch #define docatch_body CPerlObj::Perl_docatch_body #define doencodes CPerlObj::Perl_doencodes #define doeval CPerlObj::Perl_doeval -#define dofile CPerlObj::Perl_dofile #define dofindlabel CPerlObj::Perl_dofindlabel #define doform CPerlObj::Perl_doform #define doopen_pmc CPerlObj::Perl_doopen_pmc @@ -1147,97 +2017,25 @@ #define dopoptoloop CPerlObj::Perl_dopoptoloop #define dopoptosub CPerlObj::Perl_dopoptosub #define dopoptosub_at CPerlObj::Perl_dopoptosub_at -#define dounwind CPerlObj::Perl_dounwind -#define dowantarray CPerlObj::Perl_dowantarray #define dump CPerlObj::Perl_dump -#define dump_all CPerlObj::Perl_dump_all -#define dump_eval CPerlObj::Perl_dump_eval -#define dump_fds CPerlObj::Perl_dump_fds -#define dump_form CPerlObj::Perl_dump_form -#define dump_indent CPerlObj::Perl_dump_indent -#define dump_mstats CPerlObj::Perl_dump_mstats -#define dump_packsubs CPerlObj::Perl_dump_packsubs -#define dump_sub CPerlObj::Perl_dump_sub #define dumpuntil CPerlObj::Perl_dumpuntil #define emulate_eaccess CPerlObj::Perl_emulate_eaccess -#define fbm_compile CPerlObj::Perl_fbm_compile -#define fbm_instr CPerlObj::Perl_fbm_instr -#define filter_add CPerlObj::Perl_filter_add -#define filter_del CPerlObj::Perl_filter_del #define filter_gets CPerlObj::Perl_filter_gets -#define filter_read CPerlObj::Perl_filter_read #define find_beginning CPerlObj::Perl_find_beginning -#define find_script CPerlObj::Perl_find_script -#define find_threadsv CPerlObj::Perl_find_threadsv -#define fold_constants CPerlObj::Perl_fold_constants #define forbid_setid CPerlObj::Perl_forbid_setid #define force_ident CPerlObj::Perl_force_ident -#define force_list CPerlObj::Perl_force_list #define force_next CPerlObj::Perl_force_next #define force_version CPerlObj::Perl_force_version #define force_word CPerlObj::Perl_force_word -#define form CPerlObj::Perl_form -#define fprintf CPerlObj::Perl_fprintf #define free_closures CPerlObj::Perl_free_closures -#define free_tmps CPerlObj::Perl_free_tmps -#define gen_constant_list CPerlObj::Perl_gen_constant_list #define get_db_sub CPerlObj::Perl_get_db_sub -#define get_no_modify CPerlObj::Perl_get_no_modify -#define get_op_descs CPerlObj::Perl_get_op_descs -#define get_op_names CPerlObj::Perl_get_op_names -#define get_opargs CPerlObj::Perl_get_opargs -#define get_vtbl CPerlObj::Perl_get_vtbl -#define gp_free CPerlObj::Perl_gp_free -#define gp_ref CPerlObj::Perl_gp_ref -#define gv_AVadd CPerlObj::Perl_gv_AVadd -#define gv_HVadd CPerlObj::Perl_gv_HVadd -#define gv_IOadd CPerlObj::Perl_gv_IOadd -#define gv_autoload4 CPerlObj::Perl_gv_autoload4 -#define gv_check CPerlObj::Perl_gv_check -#define gv_dump CPerlObj::Perl_gv_dump -#define gv_efullname CPerlObj::Perl_gv_efullname -#define gv_efullname3 CPerlObj::Perl_gv_efullname3 #define gv_ename CPerlObj::Perl_gv_ename -#define gv_fetchfile CPerlObj::Perl_gv_fetchfile -#define gv_fetchmeth CPerlObj::Perl_gv_fetchmeth -#define gv_fetchmethod CPerlObj::Perl_gv_fetchmethod -#define gv_fetchmethod_autoload CPerlObj::Perl_gv_fetchmethod_autoload -#define gv_fetchpv CPerlObj::Perl_gv_fetchpv -#define gv_fullname CPerlObj::Perl_gv_fullname -#define gv_fullname3 CPerlObj::Perl_gv_fullname3 -#define gv_init CPerlObj::Perl_gv_init #define gv_init_sv CPerlObj::Perl_gv_init_sv -#define gv_stashpv CPerlObj::Perl_gv_stashpv -#define gv_stashpvn CPerlObj::Perl_gv_stashpvn -#define gv_stashsv CPerlObj::Perl_gv_stashsv #define hfreeentries CPerlObj::Perl_hfreeentries #define hsplit CPerlObj::Perl_hsplit -#define hv_clear CPerlObj::Perl_hv_clear -#define hv_delayfree_ent CPerlObj::Perl_hv_delayfree_ent -#define hv_delete CPerlObj::Perl_hv_delete -#define hv_delete_ent CPerlObj::Perl_hv_delete_ent -#define hv_exists CPerlObj::Perl_hv_exists -#define hv_exists_ent CPerlObj::Perl_hv_exists_ent -#define hv_fetch CPerlObj::Perl_hv_fetch -#define hv_fetch_ent CPerlObj::Perl_hv_fetch_ent -#define hv_free_ent CPerlObj::Perl_hv_free_ent -#define hv_iterinit CPerlObj::Perl_hv_iterinit -#define hv_iterkey CPerlObj::Perl_hv_iterkey -#define hv_iterkeysv CPerlObj::Perl_hv_iterkeysv -#define hv_iternext CPerlObj::Perl_hv_iternext -#define hv_iternextsv CPerlObj::Perl_hv_iternextsv -#define hv_iterval CPerlObj::Perl_hv_iterval -#define hv_ksplit CPerlObj::Perl_hv_ksplit -#define hv_magic CPerlObj::Perl_hv_magic -#define hv_store CPerlObj::Perl_hv_store -#define hv_store_ent CPerlObj::Perl_hv_store_ent -#define hv_undef CPerlObj::Perl_hv_undef -#define ibcmp CPerlObj::Perl_ibcmp -#define ibcmp_locale CPerlObj::Perl_ibcmp_locale #define incl_perldb CPerlObj::Perl_incl_perldb #define incline CPerlObj::Perl_incline #define incpush CPerlObj::Perl_incpush -#define ingroup CPerlObj::Perl_ingroup #define init_debugger CPerlObj::Perl_init_debugger #define init_ids CPerlObj::Perl_init_ids #define init_interp CPerlObj::Perl_init_interp @@ -1246,122 +2044,19 @@ #define init_perllib CPerlObj::Perl_init_perllib #define init_postdump_symbols CPerlObj::Perl_init_postdump_symbols #define init_predump_symbols CPerlObj::Perl_init_predump_symbols -#define init_stacks CPerlObj::Perl_init_stacks -#define init_thread_intern CPerlObj::Perl_init_thread_intern -#define instr CPerlObj::Perl_instr -#define intro_my CPerlObj::Perl_intro_my #define intuit_method CPerlObj::Perl_intuit_method #define intuit_more CPerlObj::Perl_intuit_more -#define invert CPerlObj::Perl_invert -#define io_close CPerlObj::Perl_io_close #define is_an_int CPerlObj::Perl_is_an_int #define is_handle_constructor CPerlObj::Perl_is_handle_constructor -#define is_uni_alnum CPerlObj::Perl_is_uni_alnum -#define is_uni_alnum_lc CPerlObj::Perl_is_uni_alnum_lc -#define is_uni_alpha CPerlObj::Perl_is_uni_alpha -#define is_uni_alpha_lc CPerlObj::Perl_is_uni_alpha_lc -#define is_uni_digit CPerlObj::Perl_is_uni_digit -#define is_uni_digit_lc CPerlObj::Perl_is_uni_digit_lc -#define is_uni_idfirst CPerlObj::Perl_is_uni_idfirst -#define is_uni_idfirst_lc CPerlObj::Perl_is_uni_idfirst_lc -#define is_uni_lower CPerlObj::Perl_is_uni_lower -#define is_uni_lower_lc CPerlObj::Perl_is_uni_lower_lc -#define is_uni_print CPerlObj::Perl_is_uni_print -#define is_uni_print_lc CPerlObj::Perl_is_uni_print_lc -#define is_uni_space CPerlObj::Perl_is_uni_space -#define is_uni_space_lc CPerlObj::Perl_is_uni_space_lc -#define is_uni_upper CPerlObj::Perl_is_uni_upper -#define is_uni_upper_lc CPerlObj::Perl_is_uni_upper_lc -#define is_utf8_alnum CPerlObj::Perl_is_utf8_alnum -#define is_utf8_alpha CPerlObj::Perl_is_utf8_alpha -#define is_utf8_digit CPerlObj::Perl_is_utf8_digit -#define is_utf8_idfirst CPerlObj::Perl_is_utf8_idfirst -#define is_utf8_lower CPerlObj::Perl_is_utf8_lower -#define is_utf8_mark CPerlObj::Perl_is_utf8_mark -#define is_utf8_print CPerlObj::Perl_is_utf8_print -#define is_utf8_space CPerlObj::Perl_is_utf8_space -#define is_utf8_upper CPerlObj::Perl_is_utf8_upper #define isa_lookup CPerlObj::Perl_isa_lookup -#define jmaybe CPerlObj::Perl_jmaybe -#define keyword CPerlObj::Perl_keyword -#define leave_scope CPerlObj::Perl_leave_scope -#define lex_end CPerlObj::Perl_lex_end -#define lex_start CPerlObj::Perl_lex_start -#define linklist CPerlObj::Perl_linklist -#define list CPerlObj::Perl_list #define list_assignment CPerlObj::Perl_list_assignment -#define listkids CPerlObj::Perl_listkids -#define localize CPerlObj::Perl_localize -#define looks_like_number CPerlObj::Perl_looks_like_number #define lop CPerlObj::Perl_lop -#define magic_clear_all_env CPerlObj::Perl_magic_clear_all_env -#define magic_clearenv CPerlObj::Perl_magic_clearenv -#define magic_clearpack CPerlObj::Perl_magic_clearpack -#define magic_clearsig CPerlObj::Perl_magic_clearsig -#define magic_dump CPerlObj::Perl_magic_dump -#define magic_existspack CPerlObj::Perl_magic_existspack -#define magic_freeregexp CPerlObj::Perl_magic_freeregexp -#define magic_get CPerlObj::Perl_magic_get -#define magic_getarylen CPerlObj::Perl_magic_getarylen -#define magic_getdefelem CPerlObj::Perl_magic_getdefelem -#define magic_getglob CPerlObj::Perl_magic_getglob -#define magic_getnkeys CPerlObj::Perl_magic_getnkeys -#define magic_getpack CPerlObj::Perl_magic_getpack -#define magic_getpos CPerlObj::Perl_magic_getpos -#define magic_getsig CPerlObj::Perl_magic_getsig -#define magic_getsubstr CPerlObj::Perl_magic_getsubstr -#define magic_gettaint CPerlObj::Perl_magic_gettaint -#define magic_getuvar CPerlObj::Perl_magic_getuvar -#define magic_getvec CPerlObj::Perl_magic_getvec -#define magic_killbackrefs CPerlObj::Perl_magic_killbackrefs -#define magic_len CPerlObj::Perl_magic_len #define magic_methcall CPerlObj::Perl_magic_methcall #define magic_methcall CPerlObj::Perl_magic_methcall #define magic_methpack CPerlObj::Perl_magic_methpack -#define magic_mutexfree CPerlObj::Perl_magic_mutexfree -#define magic_nextpack CPerlObj::Perl_magic_nextpack -#define magic_regdata_cnt CPerlObj::Perl_magic_regdata_cnt -#define magic_regdatum_get CPerlObj::Perl_magic_regdatum_get -#define magic_set CPerlObj::Perl_magic_set -#define magic_set_all_env CPerlObj::Perl_magic_set_all_env -#define magic_setamagic CPerlObj::Perl_magic_setamagic -#define magic_setarylen CPerlObj::Perl_magic_setarylen -#define magic_setbm CPerlObj::Perl_magic_setbm -#define magic_setcollxfrm CPerlObj::Perl_magic_setcollxfrm -#define magic_setdbline CPerlObj::Perl_magic_setdbline -#define magic_setdefelem CPerlObj::Perl_magic_setdefelem -#define magic_setenv CPerlObj::Perl_magic_setenv -#define magic_setfm CPerlObj::Perl_magic_setfm -#define magic_setglob CPerlObj::Perl_magic_setglob -#define magic_setisa CPerlObj::Perl_magic_setisa -#define magic_setmglob CPerlObj::Perl_magic_setmglob -#define magic_setnkeys CPerlObj::Perl_magic_setnkeys -#define magic_setpack CPerlObj::Perl_magic_setpack -#define magic_setpos CPerlObj::Perl_magic_setpos -#define magic_setsig CPerlObj::Perl_magic_setsig -#define magic_setsubstr CPerlObj::Perl_magic_setsubstr -#define magic_settaint CPerlObj::Perl_magic_settaint -#define magic_setuvar CPerlObj::Perl_magic_setuvar -#define magic_setvec CPerlObj::Perl_magic_setvec -#define magic_sizepack CPerlObj::Perl_magic_sizepack -#define magic_wipepack CPerlObj::Perl_magic_wipepack -#define magicname CPerlObj::Perl_magicname -#define malloced_size CPerlObj::Perl_malloced_size -#define markstack_grow CPerlObj::Perl_markstack_grow -#define mem_collxfrm CPerlObj::Perl_mem_collxfrm -#define mess CPerlObj::Perl_mess +#define main CPerlObj::Perl_main #define mess_alloc CPerlObj::Perl_mess_alloc -#define mg_clear CPerlObj::Perl_mg_clear -#define mg_copy CPerlObj::Perl_mg_copy -#define mg_find CPerlObj::Perl_mg_find -#define mg_free CPerlObj::Perl_mg_free -#define mg_get CPerlObj::Perl_mg_get -#define mg_length CPerlObj::Perl_mg_length -#define mg_magical CPerlObj::Perl_mg_magical -#define mg_set CPerlObj::Perl_mg_set -#define mg_size CPerlObj::Perl_mg_size #define missingterm CPerlObj::Perl_missingterm -#define mod CPerlObj::Perl_mod #define modkids CPerlObj::Perl_modkids #define more_he CPerlObj::Perl_more_he #define more_sv CPerlObj::Perl_more_sv @@ -1369,112 +2064,27 @@ #define more_xnv CPerlObj::Perl_more_xnv #define more_xpv CPerlObj::Perl_more_xpv #define more_xrv CPerlObj::Perl_more_xrv -#define moreswitches CPerlObj::Perl_moreswitches #define mul128 CPerlObj::Perl_mul128 -#define my CPerlObj::Perl_my -#define my_bcopy CPerlObj::Perl_my_bcopy -#define my_bzero CPerlObj::Perl_my_bzero -#define my_chsize CPerlObj::Perl_my_chsize -#define my_exit CPerlObj::Perl_my_exit #define my_exit_jump CPerlObj::Perl_my_exit_jump -#define my_failure_exit CPerlObj::Perl_my_failure_exit -#define my_fflush_all CPerlObj::Perl_my_fflush_all -#define my_htonl CPerlObj::Perl_my_htonl -#define my_lstat CPerlObj::Perl_my_lstat -#define my_memcmp CPerlObj::Perl_my_memcmp -#define my_memset CPerlObj::Perl_my_memset -#define my_ntohl CPerlObj::Perl_my_ntohl -#define my_pclose CPerlObj::Perl_my_pclose -#define my_popen CPerlObj::Perl_my_popen #define my_safemalloc CPerlObj::Perl_my_safemalloc -#define my_setenv CPerlObj::Perl_my_setenv -#define my_stat CPerlObj::Perl_my_stat -#define my_swap CPerlObj::Perl_my_swap -#define my_unexec CPerlObj::Perl_my_unexec -#define newANONHASH CPerlObj::Perl_newANONHASH -#define newANONLIST CPerlObj::Perl_newANONLIST -#define newANONSUB CPerlObj::Perl_newANONSUB -#define newASSIGNOP CPerlObj::Perl_newASSIGNOP -#define newAV CPerlObj::Perl_newAV -#define newAVREF CPerlObj::Perl_newAVREF -#define newBINOP CPerlObj::Perl_newBINOP -#define newCONDOP CPerlObj::Perl_newCONDOP -#define newCONSTSUB CPerlObj::Perl_newCONSTSUB -#define newCVREF CPerlObj::Perl_newCVREF #define newDEFSVOP CPerlObj::Perl_newDEFSVOP -#define newFORM CPerlObj::Perl_newFORM -#define newFOROP CPerlObj::Perl_newFOROP -#define newGVOP CPerlObj::Perl_newGVOP -#define newGVREF CPerlObj::Perl_newGVREF -#define newGVgen CPerlObj::Perl_newGVgen -#define newHV CPerlObj::Perl_newHV -#define newHVREF CPerlObj::Perl_newHVREF -#define newHVhv CPerlObj::Perl_newHVhv -#define newIO CPerlObj::Perl_newIO -#define newLISTOP CPerlObj::Perl_newLISTOP -#define newLOGOP CPerlObj::Perl_newLOGOP -#define newLOOPEX CPerlObj::Perl_newLOOPEX -#define newLOOPOP CPerlObj::Perl_newLOOPOP -#define newNULLLIST CPerlObj::Perl_newNULLLIST -#define newOP CPerlObj::Perl_newOP -#define newPMOP CPerlObj::Perl_newPMOP -#define newPROG CPerlObj::Perl_newPROG -#define newPVOP CPerlObj::Perl_newPVOP -#define newRANGE CPerlObj::Perl_newRANGE -#define newRV CPerlObj::Perl_newRV -#define newRV_noinc CPerlObj::Perl_newRV_noinc -#define newSLICEOP CPerlObj::Perl_newSLICEOP -#define newSTATEOP CPerlObj::Perl_newSTATEOP -#define newSUB CPerlObj::Perl_newSUB -#define newSV CPerlObj::Perl_newSV -#define newSVOP CPerlObj::Perl_newSVOP -#define newSVREF CPerlObj::Perl_newSVREF -#define newSViv CPerlObj::Perl_newSViv -#define newSVnv CPerlObj::Perl_newSVnv -#define newSVpv CPerlObj::Perl_newSVpv -#define newSVpvf CPerlObj::Perl_newSVpvf -#define newSVpvn CPerlObj::Perl_newSVpvn -#define newSVrv CPerlObj::Perl_newSVrv -#define newSVsv CPerlObj::Perl_newSVsv -#define newUNOP CPerlObj::Perl_newUNOP -#define newWHILEOP CPerlObj::Perl_newWHILEOP -#define newXS CPerlObj::Perl_newXS #define new_constant CPerlObj::Perl_new_constant #define new_he CPerlObj::Perl_new_he #define new_logop CPerlObj::Perl_new_logop -#define new_stackinfo CPerlObj::Perl_new_stackinfo -#define new_struct_thread CPerlObj::Perl_new_struct_thread #define new_xiv CPerlObj::Perl_new_xiv #define new_xnv CPerlObj::Perl_new_xnv #define new_xpv CPerlObj::Perl_new_xpv #define new_xrv CPerlObj::Perl_new_xrv -#define nextargv CPerlObj::Perl_nextargv #define nextchar CPerlObj::Perl_nextchar -#define ninstr CPerlObj::Perl_ninstr #define no_bareword_allowed CPerlObj::Perl_no_bareword_allowed #define no_fh_allowed CPerlObj::Perl_no_fh_allowed #define no_op CPerlObj::Perl_no_op #define not_a_number CPerlObj::Perl_not_a_number #define nuke_stacks CPerlObj::Perl_nuke_stacks #define null CPerlObj::Perl_null -#define oopsAV CPerlObj::Perl_oopsAV -#define oopsCV CPerlObj::Perl_oopsCV -#define oopsHV CPerlObj::Perl_oopsHV -#define op_const_sv CPerlObj::Perl_op_const_sv -#define op_dump CPerlObj::Perl_op_dump -#define op_free CPerlObj::Perl_op_free #define open_script CPerlObj::Perl_open_script -#define package CPerlObj::Perl_package -#define pad_alloc CPerlObj::Perl_pad_alloc -#define pad_allocmy CPerlObj::Perl_pad_allocmy #define pad_findlex CPerlObj::Perl_pad_findlex -#define pad_findmy CPerlObj::Perl_pad_findmy -#define pad_free CPerlObj::Perl_pad_free -#define pad_leavemy CPerlObj::Perl_pad_leavemy -#define pad_reset CPerlObj::Perl_pad_reset -#define pad_sv CPerlObj::Perl_pad_sv -#define pad_swipe CPerlObj::Perl_pad_swipe -#define peep CPerlObj::Perl_peep +#define perl_alloc CPerlObj::perl_alloc #define perl_atexit CPerlObj::perl_atexit #define perl_call_argv CPerlObj::perl_call_argv #define perl_call_body CPerlObj::perl_call_body @@ -1483,10 +2093,13 @@ #define perl_call_sv CPerlObj::perl_call_sv #define perl_call_xbody CPerlObj::perl_call_xbody #define perl_construct CPerlObj::perl_construct +#define perl_construct CPerlObj::perl_construct +#define perl_destruct CPerlObj::perl_destruct #define perl_destruct CPerlObj::perl_destruct #define perl_eval_pv CPerlObj::perl_eval_pv #define perl_eval_sv CPerlObj::perl_eval_sv #define perl_free CPerlObj::perl_free +#define perl_free CPerlObj::perl_free #define perl_get_av CPerlObj::perl_get_av #define perl_get_cv CPerlObj::perl_get_cv #define perl_get_hv CPerlObj::perl_get_hv @@ -1497,374 +2110,16 @@ #define perl_new_ctype CPerlObj::perl_new_ctype #define perl_new_numeric CPerlObj::perl_new_numeric #define perl_parse CPerlObj::perl_parse +#define perl_parse CPerlObj::perl_parse #define perl_parse_body CPerlObj::perl_parse_body #define perl_require_pv CPerlObj::perl_require_pv #define perl_run CPerlObj::perl_run +#define perl_run CPerlObj::perl_run #define perl_run_body CPerlObj::perl_run_body #define perl_set_numeric_local CPerlObj::perl_set_numeric_local #define perl_set_numeric_standard CPerlObj::perl_set_numeric_standard -#define pidgone CPerlObj::Perl_pidgone -#define pmflag CPerlObj::Perl_pmflag -#define pmop_dump CPerlObj::Perl_pmop_dump -#define pmruntime CPerlObj::Perl_pmruntime -#define pmtrans CPerlObj::Perl_pmtrans -#define pop_return CPerlObj::Perl_pop_return -#define pop_scope CPerlObj::Perl_pop_scope -#define pp_aassign CPerlObj::Perl_pp_aassign -#define pp_abs CPerlObj::Perl_pp_abs -#define pp_accept CPerlObj::Perl_pp_accept -#define pp_add CPerlObj::Perl_pp_add -#define pp_aelem CPerlObj::Perl_pp_aelem -#define pp_aelemfast CPerlObj::Perl_pp_aelemfast -#define pp_alarm CPerlObj::Perl_pp_alarm -#define pp_and CPerlObj::Perl_pp_and -#define pp_andassign CPerlObj::Perl_pp_andassign -#define pp_anoncode CPerlObj::Perl_pp_anoncode -#define pp_anonhash CPerlObj::Perl_pp_anonhash -#define pp_anonlist CPerlObj::Perl_pp_anonlist -#define pp_aslice CPerlObj::Perl_pp_aslice -#define pp_atan2 CPerlObj::Perl_pp_atan2 -#define pp_av2arylen CPerlObj::Perl_pp_av2arylen -#define pp_backtick CPerlObj::Perl_pp_backtick -#define pp_bind CPerlObj::Perl_pp_bind -#define pp_binmode CPerlObj::Perl_pp_binmode -#define pp_bit_and CPerlObj::Perl_pp_bit_and -#define pp_bit_or CPerlObj::Perl_pp_bit_or -#define pp_bit_xor CPerlObj::Perl_pp_bit_xor -#define pp_bless CPerlObj::Perl_pp_bless -#define pp_caller CPerlObj::Perl_pp_caller -#define pp_chdir CPerlObj::Perl_pp_chdir -#define pp_chmod CPerlObj::Perl_pp_chmod -#define pp_chomp CPerlObj::Perl_pp_chomp -#define pp_chop CPerlObj::Perl_pp_chop -#define pp_chown CPerlObj::Perl_pp_chown -#define pp_chr CPerlObj::Perl_pp_chr -#define pp_chroot CPerlObj::Perl_pp_chroot -#define pp_close CPerlObj::Perl_pp_close -#define pp_closedir CPerlObj::Perl_pp_closedir -#define pp_complement CPerlObj::Perl_pp_complement -#define pp_concat CPerlObj::Perl_pp_concat -#define pp_cond_expr CPerlObj::Perl_pp_cond_expr -#define pp_connect CPerlObj::Perl_pp_connect -#define pp_const CPerlObj::Perl_pp_const -#define pp_cos CPerlObj::Perl_pp_cos -#define pp_crypt CPerlObj::Perl_pp_crypt -#define pp_dbmclose CPerlObj::Perl_pp_dbmclose -#define pp_dbmopen CPerlObj::Perl_pp_dbmopen -#define pp_dbstate CPerlObj::Perl_pp_dbstate -#define pp_defined CPerlObj::Perl_pp_defined -#define pp_delete CPerlObj::Perl_pp_delete -#define pp_die CPerlObj::Perl_pp_die -#define pp_divide CPerlObj::Perl_pp_divide -#define pp_dofile CPerlObj::Perl_pp_dofile -#define pp_dump CPerlObj::Perl_pp_dump -#define pp_each CPerlObj::Perl_pp_each -#define pp_egrent CPerlObj::Perl_pp_egrent -#define pp_ehostent CPerlObj::Perl_pp_ehostent -#define pp_enetent CPerlObj::Perl_pp_enetent -#define pp_enter CPerlObj::Perl_pp_enter -#define pp_entereval CPerlObj::Perl_pp_entereval -#define pp_enteriter CPerlObj::Perl_pp_enteriter -#define pp_enterloop CPerlObj::Perl_pp_enterloop -#define pp_entersub CPerlObj::Perl_pp_entersub -#define pp_entertry CPerlObj::Perl_pp_entertry -#define pp_enterwrite CPerlObj::Perl_pp_enterwrite -#define pp_eof CPerlObj::Perl_pp_eof -#define pp_eprotoent CPerlObj::Perl_pp_eprotoent -#define pp_epwent CPerlObj::Perl_pp_epwent -#define pp_eq CPerlObj::Perl_pp_eq -#define pp_eservent CPerlObj::Perl_pp_eservent -#define pp_exec CPerlObj::Perl_pp_exec -#define pp_exists CPerlObj::Perl_pp_exists -#define pp_exit CPerlObj::Perl_pp_exit -#define pp_exp CPerlObj::Perl_pp_exp -#define pp_fcntl CPerlObj::Perl_pp_fcntl -#define pp_fileno CPerlObj::Perl_pp_fileno -#define pp_flip CPerlObj::Perl_pp_flip -#define pp_flock CPerlObj::Perl_pp_flock -#define pp_flop CPerlObj::Perl_pp_flop -#define pp_fork CPerlObj::Perl_pp_fork -#define pp_formline CPerlObj::Perl_pp_formline -#define pp_ftatime CPerlObj::Perl_pp_ftatime -#define pp_ftbinary CPerlObj::Perl_pp_ftbinary -#define pp_ftblk CPerlObj::Perl_pp_ftblk -#define pp_ftchr CPerlObj::Perl_pp_ftchr -#define pp_ftctime CPerlObj::Perl_pp_ftctime -#define pp_ftdir CPerlObj::Perl_pp_ftdir -#define pp_fteexec CPerlObj::Perl_pp_fteexec -#define pp_fteowned CPerlObj::Perl_pp_fteowned -#define pp_fteread CPerlObj::Perl_pp_fteread -#define pp_ftewrite CPerlObj::Perl_pp_ftewrite -#define pp_ftfile CPerlObj::Perl_pp_ftfile -#define pp_ftis CPerlObj::Perl_pp_ftis -#define pp_ftlink CPerlObj::Perl_pp_ftlink -#define pp_ftmtime CPerlObj::Perl_pp_ftmtime -#define pp_ftpipe CPerlObj::Perl_pp_ftpipe -#define pp_ftrexec CPerlObj::Perl_pp_ftrexec -#define pp_ftrowned CPerlObj::Perl_pp_ftrowned -#define pp_ftrread CPerlObj::Perl_pp_ftrread -#define pp_ftrwrite CPerlObj::Perl_pp_ftrwrite -#define pp_ftsgid CPerlObj::Perl_pp_ftsgid -#define pp_ftsize CPerlObj::Perl_pp_ftsize -#define pp_ftsock CPerlObj::Perl_pp_ftsock -#define pp_ftsuid CPerlObj::Perl_pp_ftsuid -#define pp_ftsvtx CPerlObj::Perl_pp_ftsvtx -#define pp_fttext CPerlObj::Perl_pp_fttext -#define pp_fttty CPerlObj::Perl_pp_fttty -#define pp_ftzero CPerlObj::Perl_pp_ftzero -#define pp_ge CPerlObj::Perl_pp_ge -#define pp_gelem CPerlObj::Perl_pp_gelem -#define pp_getc CPerlObj::Perl_pp_getc -#define pp_getlogin CPerlObj::Perl_pp_getlogin -#define pp_getpeername CPerlObj::Perl_pp_getpeername -#define pp_getpgrp CPerlObj::Perl_pp_getpgrp -#define pp_getppid CPerlObj::Perl_pp_getppid -#define pp_getpriority CPerlObj::Perl_pp_getpriority -#define pp_getsockname CPerlObj::Perl_pp_getsockname -#define pp_ggrent CPerlObj::Perl_pp_ggrent -#define pp_ggrgid CPerlObj::Perl_pp_ggrgid -#define pp_ggrnam CPerlObj::Perl_pp_ggrnam -#define pp_ghbyaddr CPerlObj::Perl_pp_ghbyaddr -#define pp_ghbyname CPerlObj::Perl_pp_ghbyname -#define pp_ghostent CPerlObj::Perl_pp_ghostent -#define pp_glob CPerlObj::Perl_pp_glob -#define pp_gmtime CPerlObj::Perl_pp_gmtime -#define pp_gnbyaddr CPerlObj::Perl_pp_gnbyaddr -#define pp_gnbyname CPerlObj::Perl_pp_gnbyname -#define pp_gnetent CPerlObj::Perl_pp_gnetent -#define pp_goto CPerlObj::Perl_pp_goto -#define pp_gpbyname CPerlObj::Perl_pp_gpbyname -#define pp_gpbynumber CPerlObj::Perl_pp_gpbynumber -#define pp_gprotoent CPerlObj::Perl_pp_gprotoent -#define pp_gpwent CPerlObj::Perl_pp_gpwent -#define pp_gpwnam CPerlObj::Perl_pp_gpwnam -#define pp_gpwuid CPerlObj::Perl_pp_gpwuid -#define pp_grepstart CPerlObj::Perl_pp_grepstart -#define pp_grepwhile CPerlObj::Perl_pp_grepwhile -#define pp_gsbyname CPerlObj::Perl_pp_gsbyname -#define pp_gsbyport CPerlObj::Perl_pp_gsbyport -#define pp_gservent CPerlObj::Perl_pp_gservent -#define pp_gsockopt CPerlObj::Perl_pp_gsockopt -#define pp_gt CPerlObj::Perl_pp_gt -#define pp_gv CPerlObj::Perl_pp_gv -#define pp_gvsv CPerlObj::Perl_pp_gvsv -#define pp_helem CPerlObj::Perl_pp_helem -#define pp_hex CPerlObj::Perl_pp_hex -#define pp_hslice CPerlObj::Perl_pp_hslice -#define pp_i_add CPerlObj::Perl_pp_i_add -#define pp_i_divide CPerlObj::Perl_pp_i_divide -#define pp_i_eq CPerlObj::Perl_pp_i_eq -#define pp_i_ge CPerlObj::Perl_pp_i_ge -#define pp_i_gt CPerlObj::Perl_pp_i_gt -#define pp_i_le CPerlObj::Perl_pp_i_le -#define pp_i_lt CPerlObj::Perl_pp_i_lt -#define pp_i_modulo CPerlObj::Perl_pp_i_modulo -#define pp_i_multiply CPerlObj::Perl_pp_i_multiply -#define pp_i_ncmp CPerlObj::Perl_pp_i_ncmp -#define pp_i_ne CPerlObj::Perl_pp_i_ne -#define pp_i_negate CPerlObj::Perl_pp_i_negate -#define pp_i_subtract CPerlObj::Perl_pp_i_subtract -#define pp_index CPerlObj::Perl_pp_index -#define pp_int CPerlObj::Perl_pp_int -#define pp_ioctl CPerlObj::Perl_pp_ioctl -#define pp_iter CPerlObj::Perl_pp_iter -#define pp_join CPerlObj::Perl_pp_join -#define pp_keys CPerlObj::Perl_pp_keys -#define pp_kill CPerlObj::Perl_pp_kill -#define pp_last CPerlObj::Perl_pp_last -#define pp_lc CPerlObj::Perl_pp_lc -#define pp_lcfirst CPerlObj::Perl_pp_lcfirst -#define pp_le CPerlObj::Perl_pp_le -#define pp_leave CPerlObj::Perl_pp_leave -#define pp_leaveeval CPerlObj::Perl_pp_leaveeval -#define pp_leaveloop CPerlObj::Perl_pp_leaveloop -#define pp_leavesub CPerlObj::Perl_pp_leavesub -#define pp_leavetry CPerlObj::Perl_pp_leavetry -#define pp_leavewrite CPerlObj::Perl_pp_leavewrite -#define pp_left_shift CPerlObj::Perl_pp_left_shift -#define pp_length CPerlObj::Perl_pp_length -#define pp_lineseq CPerlObj::Perl_pp_lineseq -#define pp_link CPerlObj::Perl_pp_link -#define pp_list CPerlObj::Perl_pp_list -#define pp_listen CPerlObj::Perl_pp_listen -#define pp_localtime CPerlObj::Perl_pp_localtime -#define pp_lock CPerlObj::Perl_pp_lock -#define pp_log CPerlObj::Perl_pp_log -#define pp_lslice CPerlObj::Perl_pp_lslice -#define pp_lstat CPerlObj::Perl_pp_lstat -#define pp_lt CPerlObj::Perl_pp_lt -#define pp_mapstart CPerlObj::Perl_pp_mapstart -#define pp_mapwhile CPerlObj::Perl_pp_mapwhile -#define pp_match CPerlObj::Perl_pp_match -#define pp_method CPerlObj::Perl_pp_method -#define pp_mkdir CPerlObj::Perl_pp_mkdir -#define pp_modulo CPerlObj::Perl_pp_modulo -#define pp_msgctl CPerlObj::Perl_pp_msgctl -#define pp_msgget CPerlObj::Perl_pp_msgget -#define pp_msgrcv CPerlObj::Perl_pp_msgrcv -#define pp_msgsnd CPerlObj::Perl_pp_msgsnd -#define pp_multiply CPerlObj::Perl_pp_multiply -#define pp_ncmp CPerlObj::Perl_pp_ncmp -#define pp_ne CPerlObj::Perl_pp_ne -#define pp_negate CPerlObj::Perl_pp_negate -#define pp_next CPerlObj::Perl_pp_next -#define pp_nextstate CPerlObj::Perl_pp_nextstate -#define pp_not CPerlObj::Perl_pp_not -#define pp_null CPerlObj::Perl_pp_null -#define pp_oct CPerlObj::Perl_pp_oct -#define pp_open CPerlObj::Perl_pp_open -#define pp_open_dir CPerlObj::Perl_pp_open_dir -#define pp_or CPerlObj::Perl_pp_or -#define pp_orassign CPerlObj::Perl_pp_orassign -#define pp_ord CPerlObj::Perl_pp_ord -#define pp_pack CPerlObj::Perl_pp_pack -#define pp_padany CPerlObj::Perl_pp_padany -#define pp_padav CPerlObj::Perl_pp_padav -#define pp_padhv CPerlObj::Perl_pp_padhv -#define pp_padsv CPerlObj::Perl_pp_padsv -#define pp_pipe_op CPerlObj::Perl_pp_pipe_op -#define pp_pop CPerlObj::Perl_pp_pop -#define pp_pos CPerlObj::Perl_pp_pos -#define pp_postdec CPerlObj::Perl_pp_postdec -#define pp_postinc CPerlObj::Perl_pp_postinc -#define pp_pow CPerlObj::Perl_pp_pow -#define pp_predec CPerlObj::Perl_pp_predec -#define pp_preinc CPerlObj::Perl_pp_preinc -#define pp_print CPerlObj::Perl_pp_print -#define pp_prototype CPerlObj::Perl_pp_prototype -#define pp_prtf CPerlObj::Perl_pp_prtf -#define pp_push CPerlObj::Perl_pp_push -#define pp_pushmark CPerlObj::Perl_pp_pushmark -#define pp_pushre CPerlObj::Perl_pp_pushre -#define pp_qr CPerlObj::Perl_pp_qr -#define pp_quotemeta CPerlObj::Perl_pp_quotemeta -#define pp_rand CPerlObj::Perl_pp_rand -#define pp_range CPerlObj::Perl_pp_range -#define pp_rcatline CPerlObj::Perl_pp_rcatline -#define pp_read CPerlObj::Perl_pp_read -#define pp_readdir CPerlObj::Perl_pp_readdir -#define pp_readline CPerlObj::Perl_pp_readline -#define pp_readlink CPerlObj::Perl_pp_readlink -#define pp_recv CPerlObj::Perl_pp_recv -#define pp_redo CPerlObj::Perl_pp_redo -#define pp_ref CPerlObj::Perl_pp_ref -#define pp_refgen CPerlObj::Perl_pp_refgen -#define pp_regcmaybe CPerlObj::Perl_pp_regcmaybe -#define pp_regcomp CPerlObj::Perl_pp_regcomp -#define pp_regcreset CPerlObj::Perl_pp_regcreset -#define pp_rename CPerlObj::Perl_pp_rename -#define pp_repeat CPerlObj::Perl_pp_repeat -#define pp_require CPerlObj::Perl_pp_require -#define pp_reset CPerlObj::Perl_pp_reset -#define pp_return CPerlObj::Perl_pp_return -#define pp_reverse CPerlObj::Perl_pp_reverse -#define pp_rewinddir CPerlObj::Perl_pp_rewinddir -#define pp_right_shift CPerlObj::Perl_pp_right_shift -#define pp_rindex CPerlObj::Perl_pp_rindex -#define pp_rmdir CPerlObj::Perl_pp_rmdir -#define pp_rv2av CPerlObj::Perl_pp_rv2av -#define pp_rv2cv CPerlObj::Perl_pp_rv2cv -#define pp_rv2gv CPerlObj::Perl_pp_rv2gv -#define pp_rv2hv CPerlObj::Perl_pp_rv2hv -#define pp_rv2sv CPerlObj::Perl_pp_rv2sv -#define pp_sassign CPerlObj::Perl_pp_sassign -#define pp_scalar CPerlObj::Perl_pp_scalar -#define pp_schomp CPerlObj::Perl_pp_schomp -#define pp_schop CPerlObj::Perl_pp_schop -#define pp_scmp CPerlObj::Perl_pp_scmp -#define pp_scope CPerlObj::Perl_pp_scope -#define pp_seek CPerlObj::Perl_pp_seek -#define pp_seekdir CPerlObj::Perl_pp_seekdir -#define pp_select CPerlObj::Perl_pp_select -#define pp_semctl CPerlObj::Perl_pp_semctl -#define pp_semget CPerlObj::Perl_pp_semget -#define pp_semop CPerlObj::Perl_pp_semop -#define pp_send CPerlObj::Perl_pp_send -#define pp_seq CPerlObj::Perl_pp_seq -#define pp_setpgrp CPerlObj::Perl_pp_setpgrp -#define pp_setpriority CPerlObj::Perl_pp_setpriority -#define pp_sge CPerlObj::Perl_pp_sge -#define pp_sgrent CPerlObj::Perl_pp_sgrent -#define pp_sgt CPerlObj::Perl_pp_sgt -#define pp_shift CPerlObj::Perl_pp_shift -#define pp_shmctl CPerlObj::Perl_pp_shmctl -#define pp_shmget CPerlObj::Perl_pp_shmget -#define pp_shmread CPerlObj::Perl_pp_shmread -#define pp_shmwrite CPerlObj::Perl_pp_shmwrite -#define pp_shostent CPerlObj::Perl_pp_shostent -#define pp_shutdown CPerlObj::Perl_pp_shutdown -#define pp_sin CPerlObj::Perl_pp_sin -#define pp_sle CPerlObj::Perl_pp_sle -#define pp_sleep CPerlObj::Perl_pp_sleep -#define pp_slt CPerlObj::Perl_pp_slt -#define pp_sne CPerlObj::Perl_pp_sne -#define pp_snetent CPerlObj::Perl_pp_snetent -#define pp_socket CPerlObj::Perl_pp_socket -#define pp_sockpair CPerlObj::Perl_pp_sockpair -#define pp_sort CPerlObj::Perl_pp_sort -#define pp_splice CPerlObj::Perl_pp_splice -#define pp_split CPerlObj::Perl_pp_split -#define pp_sprintf CPerlObj::Perl_pp_sprintf -#define pp_sprotoent CPerlObj::Perl_pp_sprotoent -#define pp_spwent CPerlObj::Perl_pp_spwent -#define pp_sqrt CPerlObj::Perl_pp_sqrt -#define pp_srand CPerlObj::Perl_pp_srand -#define pp_srefgen CPerlObj::Perl_pp_srefgen -#define pp_sselect CPerlObj::Perl_pp_sselect -#define pp_sservent CPerlObj::Perl_pp_sservent -#define pp_ssockopt CPerlObj::Perl_pp_ssockopt -#define pp_stat CPerlObj::Perl_pp_stat -#define pp_stringify CPerlObj::Perl_pp_stringify -#define pp_stub CPerlObj::Perl_pp_stub -#define pp_study CPerlObj::Perl_pp_study -#define pp_subst CPerlObj::Perl_pp_subst -#define pp_substcont CPerlObj::Perl_pp_substcont -#define pp_substr CPerlObj::Perl_pp_substr -#define pp_subtract CPerlObj::Perl_pp_subtract -#define pp_symlink CPerlObj::Perl_pp_symlink -#define pp_syscall CPerlObj::Perl_pp_syscall -#define pp_sysopen CPerlObj::Perl_pp_sysopen -#define pp_sysread CPerlObj::Perl_pp_sysread -#define pp_sysseek CPerlObj::Perl_pp_sysseek -#define pp_system CPerlObj::Perl_pp_system -#define pp_syswrite CPerlObj::Perl_pp_syswrite -#define pp_tell CPerlObj::Perl_pp_tell -#define pp_telldir CPerlObj::Perl_pp_telldir -#define pp_threadsv CPerlObj::Perl_pp_threadsv -#define pp_tie CPerlObj::Perl_pp_tie -#define pp_tied CPerlObj::Perl_pp_tied -#define pp_time CPerlObj::Perl_pp_time -#define pp_tms CPerlObj::Perl_pp_tms -#define pp_trans CPerlObj::Perl_pp_trans -#define pp_truncate CPerlObj::Perl_pp_truncate -#define pp_uc CPerlObj::Perl_pp_uc -#define pp_ucfirst CPerlObj::Perl_pp_ucfirst -#define pp_umask CPerlObj::Perl_pp_umask -#define pp_undef CPerlObj::Perl_pp_undef -#define pp_unlink CPerlObj::Perl_pp_unlink -#define pp_unpack CPerlObj::Perl_pp_unpack -#define pp_unshift CPerlObj::Perl_pp_unshift -#define pp_unstack CPerlObj::Perl_pp_unstack -#define pp_untie CPerlObj::Perl_pp_untie -#define pp_utime CPerlObj::Perl_pp_utime -#define pp_values CPerlObj::Perl_pp_values -#define pp_vec CPerlObj::Perl_pp_vec -#define pp_wait CPerlObj::Perl_pp_wait -#define pp_waitpid CPerlObj::Perl_pp_waitpid -#define pp_wantarray CPerlObj::Perl_pp_wantarray -#define pp_warn CPerlObj::Perl_pp_warn -#define pp_xor CPerlObj::Perl_pp_xor -#define pregcomp CPerlObj::Perl_pregcomp -#define pregexec CPerlObj::Perl_pregexec -#define pregfree CPerlObj::Perl_pregfree -#define prepend_elem CPerlObj::Perl_prepend_elem -#define push_return CPerlObj::Perl_push_return -#define push_scope CPerlObj::Perl_push_scope -#define pv_display CPerlObj::Perl_pv_display #define qsortsv CPerlObj::Perl_qsortsv #define re_croak2 CPerlObj::Perl_re_croak2 -#define ref CPerlObj::Perl_ref -#define refkids CPerlObj::Perl_refkids #define refto CPerlObj::Perl_refto #define reg CPerlObj::Perl_reg #define reg_node CPerlObj::Perl_reg_node @@ -1878,20 +2133,15 @@ #define regcppop CPerlObj::Perl_regcppop #define regcppush CPerlObj::Perl_regcppush #define regcurly CPerlObj::Perl_regcurly -#define regdump CPerlObj::Perl_regdump -#define regexec_flags CPerlObj::Perl_regexec_flags #define reghop CPerlObj::Perl_reghop #define reghopmaybe CPerlObj::Perl_reghopmaybe #define reginclass CPerlObj::Perl_reginclass #define reginclassutf8 CPerlObj::Perl_reginclassutf8 -#define reginitcolors CPerlObj::Perl_reginitcolors #define reginsert CPerlObj::Perl_reginsert #define regmatch CPerlObj::Perl_regmatch -#define regnext CPerlObj::Perl_regnext #define regoptail CPerlObj::Perl_regoptail #define regpiece CPerlObj::Perl_regpiece #define regpposixcc CPerlObj::Perl_regpposixcc -#define regprop CPerlObj::Perl_regprop #define regrepeat CPerlObj::Perl_regrepeat #define regrepeat_hard CPerlObj::Perl_regrepeat_hard #define regset CPerlObj::Perl_regset @@ -1899,255 +2149,50 @@ #define regtry CPerlObj::Perl_regtry #define reguni CPerlObj::Perl_reguni #define regwhite CPerlObj::Perl_regwhite -#define repeatcpy CPerlObj::Perl_repeatcpy #define restore_expect CPerlObj::Perl_restore_expect #define restore_lex_expect CPerlObj::Perl_restore_lex_expect #define restore_magic CPerlObj::Perl_restore_magic #define restore_pos CPerlObj::Perl_restore_pos #define restore_rsfp CPerlObj::Perl_restore_rsfp -#define rninstr CPerlObj::Perl_rninstr -#define rsignal CPerlObj::Perl_rsignal -#define rsignal_restore CPerlObj::Perl_rsignal_restore -#define rsignal_save CPerlObj::Perl_rsignal_save -#define rsignal_state CPerlObj::Perl_rsignal_state -#define runops_debug CPerlObj::Perl_runops_debug -#define runops_debug CPerlObj::Perl_runops_debug -#define runops_standard CPerlObj::Perl_runops_standard -#define runops_standard CPerlObj::Perl_runops_standard -#define rxres_free CPerlObj::Perl_rxres_free -#define rxres_restore CPerlObj::Perl_rxres_restore -#define rxres_save CPerlObj::Perl_rxres_save -#define safesyscalloc CPerlObj::Perl_safesyscalloc -#define safesysfree CPerlObj::Perl_safesysfree -#define safesysmalloc CPerlObj::Perl_safesysmalloc -#define safesysrealloc CPerlObj::Perl_safesysrealloc -#define safexcalloc CPerlObj::Perl_safexcalloc -#define safexfree CPerlObj::Perl_safexfree -#define safexmalloc CPerlObj::Perl_safexmalloc -#define safexrealloc CPerlObj::Perl_safexrealloc -#define same_dirent CPerlObj::Perl_same_dirent -#define save_I16 CPerlObj::Perl_save_I16 -#define save_I32 CPerlObj::Perl_save_I32 -#define save_aelem CPerlObj::Perl_save_aelem -#define save_alloc CPerlObj::Perl_save_alloc -#define save_aptr CPerlObj::Perl_save_aptr -#define save_ary CPerlObj::Perl_save_ary -#define save_clearsv CPerlObj::Perl_save_clearsv -#define save_delete CPerlObj::Perl_save_delete -#define save_destructor CPerlObj::Perl_save_destructor -#define save_freeop CPerlObj::Perl_save_freeop -#define save_freepv CPerlObj::Perl_save_freepv -#define save_freesv CPerlObj::Perl_save_freesv -#define save_generic_svref CPerlObj::Perl_save_generic_svref -#define save_gp CPerlObj::Perl_save_gp -#define save_hash CPerlObj::Perl_save_hash #define save_hek CPerlObj::Perl_save_hek -#define save_helem CPerlObj::Perl_save_helem -#define save_hints CPerlObj::Perl_save_hints -#define save_hptr CPerlObj::Perl_save_hptr -#define save_int CPerlObj::Perl_save_int -#define save_item CPerlObj::Perl_save_item -#define save_iv CPerlObj::Perl_save_iv #define save_lines CPerlObj::Perl_save_lines -#define save_list CPerlObj::Perl_save_list -#define save_long CPerlObj::Perl_save_long #define save_magic CPerlObj::Perl_save_magic -#define save_nogv CPerlObj::Perl_save_nogv -#define save_op CPerlObj::Perl_save_op -#define save_pptr CPerlObj::Perl_save_pptr -#define save_re_context CPerlObj::Perl_save_re_context -#define save_scalar CPerlObj::Perl_save_scalar #define save_scalar_at CPerlObj::Perl_save_scalar_at -#define save_sptr CPerlObj::Perl_save_sptr -#define save_svref CPerlObj::Perl_save_svref -#define save_threadsv CPerlObj::Perl_save_threadsv -#define savepv CPerlObj::Perl_savepv -#define savepvn CPerlObj::Perl_savepvn -#define savestack_grow CPerlObj::Perl_savestack_grow -#define sawparens CPerlObj::Perl_sawparens -#define scalar CPerlObj::Perl_scalar #define scalarboolean CPerlObj::Perl_scalarboolean -#define scalarkids CPerlObj::Perl_scalarkids -#define scalarseq CPerlObj::Perl_scalarseq -#define scalarvoid CPerlObj::Perl_scalarvoid -#define scan_bin CPerlObj::Perl_scan_bin #define scan_commit CPerlObj::Perl_scan_commit #define scan_const CPerlObj::Perl_scan_const #define scan_formline CPerlObj::Perl_scan_formline #define scan_heredoc CPerlObj::Perl_scan_heredoc -#define scan_hex CPerlObj::Perl_scan_hex #define scan_ident CPerlObj::Perl_scan_ident #define scan_inputsymbol CPerlObj::Perl_scan_inputsymbol -#define scan_num CPerlObj::Perl_scan_num -#define scan_oct CPerlObj::Perl_scan_oct #define scan_pat CPerlObj::Perl_scan_pat #define scan_str CPerlObj::Perl_scan_str #define scan_subst CPerlObj::Perl_scan_subst #define scan_trans CPerlObj::Perl_scan_trans #define scan_word CPerlObj::Perl_scan_word -#define scope CPerlObj::Perl_scope -#define screaminstr CPerlObj::Perl_screaminstr #define seed CPerlObj::Perl_seed #define set_csh CPerlObj::Perl_set_csh -#define setdefout CPerlObj::Perl_setdefout -#define setenv_getix CPerlObj::Perl_setenv_getix -#define share_hek CPerlObj::Perl_share_hek -#define sharepvn CPerlObj::Perl_sharepvn -#define sighandler CPerlObj::Perl_sighandler #define simplify_sort CPerlObj::Perl_simplify_sort #define skipspace CPerlObj::Perl_skipspace #define sortcv CPerlObj::Perl_sortcv -#define stack_grow CPerlObj::Perl_stack_grow -#define start_subparse CPerlObj::Perl_start_subparse #define study_chunk CPerlObj::Perl_study_chunk -#define sub_crush_depth CPerlObj::Perl_sub_crush_depth #define sublex_done CPerlObj::Perl_sublex_done #define sublex_push CPerlObj::Perl_sublex_push #define sublex_start CPerlObj::Perl_sublex_start -#define sv_2bool CPerlObj::Perl_sv_2bool -#define sv_2cv CPerlObj::Perl_sv_2cv -#define sv_2io CPerlObj::Perl_sv_2io -#define sv_2iv CPerlObj::Perl_sv_2iv -#define sv_2mortal CPerlObj::Perl_sv_2mortal -#define sv_2nv CPerlObj::Perl_sv_2nv -#define sv_2pv CPerlObj::Perl_sv_2pv -#define sv_2pv_nolen CPerlObj::Perl_sv_2pv_nolen -#define sv_2uv CPerlObj::Perl_sv_2uv -#define sv_add_arena CPerlObj::Perl_sv_add_arena #define sv_add_backref CPerlObj::Perl_sv_add_backref -#define sv_backoff CPerlObj::Perl_sv_backoff -#define sv_bless CPerlObj::Perl_sv_bless -#define sv_catpv CPerlObj::Perl_sv_catpv -#define sv_catpv_mg CPerlObj::Perl_sv_catpv_mg -#define sv_catpvf CPerlObj::Perl_sv_catpvf -#define sv_catpvf_mg CPerlObj::Perl_sv_catpvf_mg -#define sv_catpvn CPerlObj::Perl_sv_catpvn -#define sv_catpvn_mg CPerlObj::Perl_sv_catpvn_mg -#define sv_catsv CPerlObj::Perl_sv_catsv -#define sv_catsv_mg CPerlObj::Perl_sv_catsv_mg -#define sv_chop CPerlObj::Perl_sv_chop -#define sv_clean_all CPerlObj::Perl_sv_clean_all -#define sv_clean_objs CPerlObj::Perl_sv_clean_objs -#define sv_clear CPerlObj::Perl_sv_clear -#define sv_cmp CPerlObj::Perl_sv_cmp -#define sv_cmp_locale CPerlObj::Perl_sv_cmp_locale -#define sv_collxfrm CPerlObj::Perl_sv_collxfrm -#define sv_compile_2op CPerlObj::Perl_sv_compile_2op -#define sv_dec CPerlObj::Perl_sv_dec #define sv_del_backref CPerlObj::Perl_sv_del_backref -#define sv_derived_from CPerlObj::Perl_sv_derived_from -#define sv_dump CPerlObj::Perl_sv_dump -#define sv_eq CPerlObj::Perl_sv_eq -#define sv_force_normal CPerlObj::Perl_sv_force_normal -#define sv_free CPerlObj::Perl_sv_free -#define sv_free_arenas CPerlObj::Perl_sv_free_arenas -#define sv_gets CPerlObj::Perl_sv_gets -#define sv_grow CPerlObj::Perl_sv_grow #define sv_i_ncmp CPerlObj::Perl_sv_i_ncmp -#define sv_inc CPerlObj::Perl_sv_inc -#define sv_insert CPerlObj::Perl_sv_insert -#define sv_isa CPerlObj::Perl_sv_isa -#define sv_isobject CPerlObj::Perl_sv_isobject -#define sv_iv CPerlObj::Perl_sv_iv -#define sv_len CPerlObj::Perl_sv_len -#define sv_len_utf8 CPerlObj::Perl_sv_len_utf8 -#define sv_magic CPerlObj::Perl_sv_magic -#define sv_mortalcopy CPerlObj::Perl_sv_mortalcopy #define sv_ncmp CPerlObj::Perl_sv_ncmp -#define sv_newmortal CPerlObj::Perl_sv_newmortal -#define sv_newref CPerlObj::Perl_sv_newref -#define sv_nv CPerlObj::Perl_sv_nv -#define sv_peek CPerlObj::Perl_sv_peek -#define sv_pos_b2u CPerlObj::Perl_sv_pos_b2u -#define sv_pos_u2b CPerlObj::Perl_sv_pos_u2b -#define sv_pv CPerlObj::Perl_sv_pv -#define sv_pvn CPerlObj::Perl_sv_pvn -#define sv_pvn_force CPerlObj::Perl_sv_pvn_force -#define sv_reftype CPerlObj::Perl_sv_reftype -#define sv_replace CPerlObj::Perl_sv_replace -#define sv_report_used CPerlObj::Perl_sv_report_used -#define sv_reset CPerlObj::Perl_sv_reset -#define sv_rvweaken CPerlObj::Perl_sv_rvweaken -#define sv_setiv CPerlObj::Perl_sv_setiv -#define sv_setiv_mg CPerlObj::Perl_sv_setiv_mg -#define sv_setnv CPerlObj::Perl_sv_setnv -#define sv_setnv_mg CPerlObj::Perl_sv_setnv_mg -#define sv_setpv CPerlObj::Perl_sv_setpv -#define sv_setpv_mg CPerlObj::Perl_sv_setpv_mg -#define sv_setpvf CPerlObj::Perl_sv_setpvf -#define sv_setpvf_mg CPerlObj::Perl_sv_setpvf_mg -#define sv_setpviv CPerlObj::Perl_sv_setpviv -#define sv_setpviv_mg CPerlObj::Perl_sv_setpviv_mg -#define sv_setpvn CPerlObj::Perl_sv_setpvn -#define sv_setpvn_mg CPerlObj::Perl_sv_setpvn_mg -#define sv_setref_iv CPerlObj::Perl_sv_setref_iv -#define sv_setref_nv CPerlObj::Perl_sv_setref_nv -#define sv_setref_pv CPerlObj::Perl_sv_setref_pv -#define sv_setref_pvn CPerlObj::Perl_sv_setref_pvn -#define sv_setsv CPerlObj::Perl_sv_setsv -#define sv_setsv_mg CPerlObj::Perl_sv_setsv_mg -#define sv_setuv CPerlObj::Perl_sv_setuv -#define sv_setuv_mg CPerlObj::Perl_sv_setuv_mg -#define sv_taint CPerlObj::Perl_sv_taint -#define sv_tainted CPerlObj::Perl_sv_tainted -#define sv_true CPerlObj::Perl_sv_true #define sv_unglob CPerlObj::Perl_sv_unglob -#define sv_unmagic CPerlObj::Perl_sv_unmagic -#define sv_unref CPerlObj::Perl_sv_unref -#define sv_untaint CPerlObj::Perl_sv_untaint -#define sv_upgrade CPerlObj::Perl_sv_upgrade -#define sv_usepvn CPerlObj::Perl_sv_usepvn -#define sv_usepvn_mg CPerlObj::Perl_sv_usepvn_mg -#define sv_uv CPerlObj::Perl_sv_uv -#define sv_vcatpvfn CPerlObj::Perl_sv_vcatpvfn -#define sv_vsetpvfn CPerlObj::Perl_sv_vsetpvfn -#define swash_fetch CPerlObj::Perl_swash_fetch -#define swash_init CPerlObj::Perl_swash_init -#define taint_env CPerlObj::Perl_taint_env -#define taint_proper CPerlObj::Perl_taint_proper -#define tmps_grow CPerlObj::Perl_tmps_grow -#define to_uni_lower CPerlObj::Perl_to_uni_lower -#define to_uni_lower_lc CPerlObj::Perl_to_uni_lower_lc -#define to_uni_title CPerlObj::Perl_to_uni_title -#define to_uni_title_lc CPerlObj::Perl_to_uni_title_lc -#define to_uni_upper CPerlObj::Perl_to_uni_upper -#define to_uni_upper_lc CPerlObj::Perl_to_uni_upper_lc -#define to_utf8_lower CPerlObj::Perl_to_utf8_lower -#define to_utf8_title CPerlObj::Perl_to_utf8_title -#define to_utf8_upper CPerlObj::Perl_to_utf8_upper #define tokeq CPerlObj::Perl_tokeq #define too_few_arguments CPerlObj::Perl_too_few_arguments #define too_many_arguments CPerlObj::Perl_too_many_arguments #define uni CPerlObj::Perl_uni -#define unlnk CPerlObj::Perl_unlnk -#define unlock_condpair CPerlObj::Perl_unlock_condpair -#define unshare_hek CPerlObj::Perl_unshare_hek -#define unsharepvn CPerlObj::Perl_unsharepvn #define unwind_handler_stack CPerlObj::Perl_unwind_handler_stack #define usage CPerlObj::Perl_usage -#define utf16_to_utf8 CPerlObj::Perl_utf16_to_utf8 -#define utf16_to_utf8_reversed CPerlObj::Perl_utf16_to_utf8_reversed -#define utf8_distance CPerlObj::Perl_utf8_distance -#define utf8_hop CPerlObj::Perl_utf8_hop -#define utf8_to_uv CPerlObj::Perl_utf8_to_uv -#define utilize CPerlObj::Perl_utilize -#define uv_to_utf8 CPerlObj::Perl_uv_to_utf8 #define validate_suid CPerlObj::Perl_validate_suid #define visit CPerlObj::Perl_visit -#define vivify_defelem CPerlObj::Perl_vivify_defelem -#define vivify_ref CPerlObj::Perl_vivify_ref -#define wait4pid CPerlObj::Perl_wait4pid -#define warn CPerlObj::Perl_warn -#define warner CPerlObj::Perl_warner -#define watch CPerlObj::Perl_watch -#define whichsig CPerlObj::Perl_whichsig #define win32_textfilter CPerlObj::Perl_win32_textfilter -#define yydestruct CPerlObj::Perl_yydestruct -#define yydestruct CPerlObj::Perl_yydestruct -#define yyerror CPerlObj::Perl_yyerror -#define yylex CPerlObj::Perl_yylex -#define yyparse CPerlObj::Perl_yyparse -#define yywarn CPerlObj::Perl_yywarn #endif /* PERL_OBJECT */ @@ -2155,4 +2200,21 @@ #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 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 @@ -109,7 +109,8 @@ sub hide ($$) { sub embed ($) { my ($sym) = @_; - hide($sym, "Perl_$sym"); + my $def = $sym; + hide($def, $sym) if $def =~ s/^Perl_//; } sub embedobj ($) { @@ -165,6 +166,7 @@ print EM <<'END'; END for $sym (sort keys %global) { + next if $sym =~ /^Perl_(malloc|calloc|realloc|mfree)$/; print EM embed($sym); } @@ -402,6 +404,7 @@ my @staticfuncs = qw( ); for $sym (sort(keys(%global),@staticfuncs)) { + next if $sym =~ /^Perl_(malloc|calloc|realloc|mfree)$/; print EM embedobj($sym); } @@ -413,6 +416,23 @@ print EM <<'END'; #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 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 END diff --git a/ext/POSIX/POSIX.xs b/ext/POSIX/POSIX.xs index b529dbf8fa..b196963eaf 100644 --- a/ext/POSIX/POSIX.xs +++ b/ext/POSIX/POSIX.xs @@ -3051,7 +3051,7 @@ setlocale(category, locale = 0) else #endif newctype = RETVAL; - perl_new_ctype(newctype); + new_ctype(newctype); } #endif /* USE_LOCALE_CTYPE */ #ifdef USE_LOCALE_COLLATE @@ -3068,7 +3068,7 @@ setlocale(category, locale = 0) else #endif newcoll = RETVAL; - perl_new_collate(newcoll); + new_collate(newcoll); } #endif /* USE_LOCALE_COLLATE */ #ifdef USE_LOCALE_NUMERIC @@ -3085,7 +3085,7 @@ setlocale(category, locale = 0) else #endif newnum = RETVAL; - perl_new_numeric(newnum); + new_numeric(newnum); } #endif /* USE_LOCALE_NUMERIC */ } diff --git a/global.sym b/global.sym index 35acec51d5..4c7f6c2da9 100644 --- a/global.sym +++ b/global.sym @@ -1,582 +1,613 @@ -# Global function symbols that need to be hidden in embedded applications. - -# *** Do NOT add global variables here, add them in *var*.h *** - -Gv_AMupdate -amagic_call -append_elem -append_list -apply -assertref -av_clear -av_extend -av_fake -av_fetch -av_fill -av_len -av_make -av_pop -av_push -av_reify -av_shift -av_store -av_undef -av_unshift -avhv_exists_ent -avhv_fetch_ent -avhv_iternext -avhv_iterval -avhv_keys -bind_match -block_end -block_gimme -block_start -boot_core_UNIVERSAL -bset_obj_store -call_list -cando -cast_i32 -cast_iv -cast_ulong -cast_uv -condpair_magic -convert -croak -cv_ckproto -cv_clone -cv_const_sv -cv_undef -cx_dump -cxinc -deb -deb_growlevel -debop -debprofdump -debstack -debstackptrs -default_protect -delimcpy -deprecate -die -die_where -do_aexec -do_binmode -do_chomp -do_chop -do_close -do_eof -do_exec -do_exec3 -do_execfree -do_gv_dump -do_gvgv_dump -do_hv_dump -do_ipcctl -do_ipcget -do_join -do_kv -do_magic_dump -do_msgrcv -do_msgsnd -do_op_dump -do_open -do_pipe -do_pmop_dump -do_print -do_readline -do_seek -do_semop -do_shmio -do_sprintf -do_sv_dump -do_sysseek -do_tell -do_trans -do_vecset -do_vop -dofile -dounwind -dowantarray -dump_all -dump_eval -dump_fds -dump_form -dump_indent -dump_mstats -dump_packsubs -dump_sub -fbm_compile -fbm_instr -filter_add -filter_del -filter_read -find_script -find_threadsv -fold_constants -force_list -form -free_tmps -gen_constant_list -get_no_modify -get_op_descs -get_op_names -get_opargs -get_vtbl -getenv_len -gp_free -gp_ref -gv_AVadd -gv_HVadd -gv_IOadd -gv_autoload4 -gv_check -gv_dump -gv_efullname -gv_efullname3 -gv_fetchfile -gv_fetchmeth -gv_fetchmethod -gv_fetchmethod_autoload -gv_fetchpv -gv_fullname -gv_fullname3 -gv_init -gv_stashpv -gv_stashpvn -gv_stashsv -hv_clear -hv_delayfree_ent -hv_delete -hv_delete_ent -hv_exists -hv_exists_ent -hv_fetch -hv_fetch_ent -hv_free_ent -hv_iterinit -hv_iterkey -hv_iterkeysv -hv_iternext -hv_iternextsv -hv_iterval -hv_ksplit -hv_magic -hv_store -hv_store_ent -hv_undef -ibcmp -ibcmp_locale -ingroup -init_stacks -init_thread_intern -instr -intro_my -invert -io_close -is_uni_alnum -is_uni_alnum_lc -is_uni_alpha -is_uni_alpha_lc -is_uni_digit -is_uni_digit_lc -is_uni_idfirst -is_uni_idfirst_lc -is_uni_lower -is_uni_lower_lc -is_uni_print -is_uni_print_lc -is_uni_space -is_uni_space_lc -is_uni_upper -is_uni_upper_lc -is_utf8_alnum -is_utf8_alpha -is_utf8_digit -is_utf8_idfirst -is_utf8_lower -is_utf8_mark -is_utf8_print -is_utf8_space -is_utf8_upper -jmaybe -keyword -leave_scope -lex_end -lex_start -linklist -list -listkids -localize -looks_like_number -magic_clear_all_env -magic_clearenv -magic_clearpack -magic_clearsig -magic_dump -magic_existspack -magic_freeregexp -magic_get -magic_getarylen -magic_getdefelem -magic_getglob -magic_getnkeys -magic_getpack -magic_getpos -magic_getsig -magic_getsubstr -magic_gettaint -magic_getuvar -magic_getvec -magic_killbackrefs -magic_len -magic_mutexfree -magic_nextpack -magic_regdata_cnt -magic_regdatum_get -magic_set -magic_set_all_env -magic_setamagic -magic_setarylen -magic_setbm -magic_setcollxfrm -magic_setdbline -magic_setdefelem -magic_setenv -magic_setfm -magic_setglob -magic_setisa -magic_setmglob -magic_setnkeys -magic_setpack -magic_setpos -magic_setsig -magic_setsubstr -magic_settaint -magic_setuvar -magic_setvec -magic_sizepack -magic_wipepack -magicname -malloced_size -markstack_grow -mem_collxfrm -mess -mg_clear -mg_copy -mg_find -mg_free -mg_get -mg_length -mg_magical -mg_set -mg_size -mod -moreswitches -my -my_bcopy -my_bzero -my_chsize -my_exit -my_failure_exit -my_fflush_all -my_htonl -my_lstat -my_memcmp -my_memset -my_ntohl -my_pclose -my_popen -my_setenv -my_stat -my_swap -my_unexec -newANONHASH -newANONLIST -newANONSUB -newASSIGNOP -newAV -newAVREF -newBINOP -newCONDOP -newCONSTSUB -newCVREF -newFORM -newFOROP -newGVOP -newGVREF -newGVgen -newHV -newHVREF -newHVhv -newIO -newLISTOP -newLOGOP -newLOOPEX -newLOOPOP -newNULLLIST -newOP -newPMOP -newPROG -newPVOP -newRANGE -newRV -newRV_noinc -newSLICEOP -newSTATEOP -newSUB -newSV -newSVOP -newSVREF -newSViv -newSVnv -newSVpv -newSVpvf -newSVpvn -newSVrv -newSVsv -newUNOP -newWHILEOP -newXS -new_stackinfo -new_struct_thread -nextargv -ninstr -oopsAV -oopsCV -oopsHV -op_const_sv -op_dump -op_free -package -pad_alloc -pad_allocmy -pad_findmy -pad_free -pad_leavemy -pad_reset -pad_sv -pad_swipe -peep -pidgone -pmflag -pmop_dump -pmruntime -pmtrans -pop_return -pop_scope -pregcomp -pregexec -pregfree -prepend_elem -push_return -push_scope -pv_display -ref -refkids -regdump -regexec_flags -reginitcolors -regnext -regprop -repeatcpy -rninstr -rsignal -rsignal_restore -rsignal_save -rsignal_state -runops_debug -runops_standard -rxres_free -rxres_restore -rxres_save -safesyscalloc -safesysfree -safesysmalloc -safesysrealloc -safexcalloc -safexfree -safexmalloc -safexrealloc -same_dirent -save_I16 -save_I32 -save_aelem -save_alloc -save_aptr -save_ary -save_clearsv -save_delete -save_destructor -save_freeop -save_freepv -save_freesv -save_generic_svref -save_gp -save_hash -save_helem -save_hints -save_hptr -save_int -save_item -save_iv -save_list -save_long -save_nogv -save_op -save_pptr -save_re_context -save_scalar -save_sptr -save_svref -save_threadsv -savepv -savepvn -savestack_grow -sawparens -scalar -scalarkids -scalarseq -scalarvoid -scan_bin -scan_hex -scan_num -scan_oct -scope -screaminstr -setdefout -setenv_getix -share_hek -sharepvn -sighandler -stack_grow -start_subparse -sub_crush_depth -sv_2bool -sv_2cv -sv_2io -sv_2iv -sv_2mortal -sv_2nv -sv_2pv -sv_2pv_nolen -sv_2uv -sv_add_arena -sv_backoff -sv_bless -sv_catpv -sv_catpv_mg -sv_catpvf -sv_catpvf_mg -sv_catpvn -sv_catpvn_mg -sv_catsv -sv_catsv_mg -sv_chop -sv_clean_all -sv_clean_objs -sv_clear -sv_cmp -sv_cmp_locale -sv_collxfrm -sv_compile_2op -sv_dec -sv_derived_from -sv_dump -sv_eq -sv_force_normal -sv_free -sv_free_arenas -sv_gets -sv_grow -sv_inc -sv_insert -sv_isa -sv_isobject -sv_iv -sv_len -sv_len_utf8 -sv_magic -sv_mortalcopy -sv_newmortal -sv_newref -sv_nv -sv_peek -sv_pos_b2u -sv_pos_u2b -sv_pv -sv_pvn -sv_pvn_force -sv_reftype -sv_replace -sv_report_used -sv_reset -sv_rvweaken -sv_setiv -sv_setiv_mg -sv_setnv -sv_setnv_mg -sv_setpv -sv_setpv_mg -sv_setpvf -sv_setpvf_mg -sv_setpviv -sv_setpviv_mg -sv_setpvn -sv_setpvn_mg -sv_setref_iv -sv_setref_nv -sv_setref_pv -sv_setref_pvn -sv_setsv -sv_setsv_mg -sv_setuv -sv_setuv_mg -sv_taint -sv_tainted -sv_true -sv_unmagic -sv_unref -sv_untaint -sv_upgrade -sv_usepvn -sv_usepvn_mg -sv_uv -sv_vcatpvfn -sv_vsetpvfn -swash_fetch -swash_init -taint_env -taint_proper -tmps_grow -to_uni_lower -to_uni_lower_lc -to_uni_title -to_uni_title_lc -to_uni_upper -to_uni_upper_lc -to_utf8_lower -to_utf8_title -to_utf8_upper -unlnk -unlock_condpair -unshare_hek -unsharepvn -utf16_to_utf8 -utf16_to_utf8_reversed -utf8_distance -utf8_hop -utf8_to_uv -utilize -uv_to_utf8 -vivify_defelem -vivify_ref -wait4pid -warn -warner -watch -whichsig -yydestruct -yyerror -yylex -yyparse -yywarn +# !!!!!!! DO NOT EDIT THIS FILE !!!!!!! +# This file is autogenerated from data in proto.pl. Edit that file +# and run 'make regen_headers' to effect changes. +# +Perl_ErrorNo +Perl_GetVars +Perl_Gv_AMupdate +Perl_amagic_call +Perl_append_elem +Perl_append_list +Perl_apply +Perl_assertref +Perl_av_clear +Perl_av_extend +Perl_av_fake +Perl_av_fetch +Perl_av_fill +Perl_av_len +Perl_av_make +Perl_av_pop +Perl_av_push +Perl_av_reify +Perl_av_shift +Perl_av_store +Perl_av_undef +Perl_av_unshift +Perl_avhv_exists_ent +Perl_avhv_fetch_ent +Perl_avhv_iternext +Perl_avhv_iterval +Perl_avhv_keys +Perl_bind_match +Perl_block_end +Perl_block_gimme +Perl_block_start +Perl_boot_core_UNIVERSAL +Perl_bset_obj_store +Perl_call_argv +Perl_call_atexit +Perl_call_list +Perl_call_method +Perl_call_pv +Perl_call_sv +Perl_calloc +Perl_cando +Perl_cast_i32 +Perl_cast_iv +Perl_cast_ulong +Perl_cast_uv +Perl_condpair_magic +Perl_convert +Perl_croak +Perl_cv_ckproto +Perl_cv_clone +Perl_cv_const_sv +Perl_cv_undef +Perl_cx_dump +Perl_cxinc +Perl_deb +Perl_deb_growlevel +Perl_debop +Perl_debprofdump +Perl_debstack +Perl_debstackptrs +Perl_default_protect +Perl_delimcpy +Perl_deprecate +Perl_die +Perl_die_where +Perl_do_aexec +Perl_do_binmode +Perl_do_chomp +Perl_do_chop +Perl_do_close +Perl_do_eof +Perl_do_exec +Perl_do_exec3 +Perl_do_execfree +Perl_do_gv_dump +Perl_do_gvgv_dump +Perl_do_hv_dump +Perl_do_ipcctl +Perl_do_ipcget +Perl_do_join +Perl_do_kv +Perl_do_magic_dump +Perl_do_msgrcv +Perl_do_msgsnd +Perl_do_op_dump +Perl_do_open +Perl_do_pipe +Perl_do_pmop_dump +Perl_do_print +Perl_do_readline +Perl_do_seek +Perl_do_semop +Perl_do_shmio +Perl_do_sprintf +Perl_do_sv_dump +Perl_do_sysseek +Perl_do_tell +Perl_do_trans +Perl_do_vecset +Perl_do_vop +Perl_dofile +Perl_dounwind +Perl_dowantarray +Perl_dump_all +Perl_dump_eval +Perl_dump_fds +Perl_dump_form +Perl_dump_indent +Perl_dump_mstats +Perl_dump_packsubs +Perl_dump_sub +Perl_eval_pv +Perl_eval_sv +Perl_fbm_compile +Perl_fbm_instr +Perl_filter_add +Perl_filter_del +Perl_filter_read +Perl_find_script +Perl_find_threadsv +Perl_fold_constants +Perl_force_list +Perl_form +Perl_free_tmps +Perl_gen_constant_list +Perl_get_av +Perl_get_cv +Perl_get_hv +Perl_get_no_modify +Perl_get_op_descs +Perl_get_op_names +Perl_get_opargs +Perl_get_sv +Perl_get_vtbl +Perl_getenv_len +Perl_gp_free +Perl_gp_ref +Perl_gv_AVadd +Perl_gv_HVadd +Perl_gv_IOadd +Perl_gv_autoload4 +Perl_gv_check +Perl_gv_dump +Perl_gv_efullname +Perl_gv_efullname3 +Perl_gv_fetchfile +Perl_gv_fetchmeth +Perl_gv_fetchmethod +Perl_gv_fetchmethod_autoload +Perl_gv_fetchpv +Perl_gv_fullname +Perl_gv_fullname3 +Perl_gv_init +Perl_gv_stashpv +Perl_gv_stashpvn +Perl_gv_stashsv +Perl_hv_clear +Perl_hv_delayfree_ent +Perl_hv_delete +Perl_hv_delete_ent +Perl_hv_exists +Perl_hv_exists_ent +Perl_hv_fetch +Perl_hv_fetch_ent +Perl_hv_free_ent +Perl_hv_iterinit +Perl_hv_iterkey +Perl_hv_iterkeysv +Perl_hv_iternext +Perl_hv_iternextsv +Perl_hv_iterval +Perl_hv_ksplit +Perl_hv_magic +Perl_hv_store +Perl_hv_store_ent +Perl_hv_undef +Perl_ibcmp +Perl_ibcmp_locale +Perl_ingroup +Perl_init_i18nl10n +Perl_init_i18nl14n +Perl_init_stacks +Perl_instr +Perl_intro_my +Perl_invert +Perl_io_close +Perl_is_uni_alnum +Perl_is_uni_alnum_lc +Perl_is_uni_alpha +Perl_is_uni_alpha_lc +Perl_is_uni_digit +Perl_is_uni_digit_lc +Perl_is_uni_idfirst +Perl_is_uni_idfirst_lc +Perl_is_uni_lower +Perl_is_uni_lower_lc +Perl_is_uni_print +Perl_is_uni_print_lc +Perl_is_uni_space +Perl_is_uni_space_lc +Perl_is_uni_upper +Perl_is_uni_upper_lc +Perl_is_utf8_alnum +Perl_is_utf8_alpha +Perl_is_utf8_digit +Perl_is_utf8_idfirst +Perl_is_utf8_lower +Perl_is_utf8_mark +Perl_is_utf8_print +Perl_is_utf8_space +Perl_is_utf8_upper +Perl_jmaybe +Perl_keyword +Perl_leave_scope +Perl_lex_end +Perl_lex_start +Perl_linklist +Perl_list +Perl_listkids +Perl_localize +Perl_looks_like_number +Perl_magic_clear_all_env +Perl_magic_clearenv +Perl_magic_clearpack +Perl_magic_clearsig +Perl_magic_dump +Perl_magic_existspack +Perl_magic_freeregexp +Perl_magic_get +Perl_magic_getarylen +Perl_magic_getdefelem +Perl_magic_getglob +Perl_magic_getnkeys +Perl_magic_getpack +Perl_magic_getpos +Perl_magic_getsig +Perl_magic_getsubstr +Perl_magic_gettaint +Perl_magic_getuvar +Perl_magic_getvec +Perl_magic_killbackrefs +Perl_magic_len +Perl_magic_mutexfree +Perl_magic_nextpack +Perl_magic_regdata_cnt +Perl_magic_regdatum_get +Perl_magic_set +Perl_magic_set_all_env +Perl_magic_setamagic +Perl_magic_setarylen +Perl_magic_setbm +Perl_magic_setcollxfrm +Perl_magic_setdbline +Perl_magic_setdefelem +Perl_magic_setenv +Perl_magic_setfm +Perl_magic_setglob +Perl_magic_setisa +Perl_magic_setmglob +Perl_magic_setnkeys +Perl_magic_setpack +Perl_magic_setpos +Perl_magic_setsig +Perl_magic_setsubstr +Perl_magic_settaint +Perl_magic_setuvar +Perl_magic_setvec +Perl_magic_sizepack +Perl_magic_wipepack +Perl_magicname +main +Perl_malloc +Perl_malloced_size +Perl_markstack_grow +Perl_mem_collxfrm +Perl_mess +Perl_mfree +Perl_mg_clear +Perl_mg_copy +Perl_mg_find +Perl_mg_free +Perl_mg_get +Perl_mg_length +Perl_mg_magical +Perl_mg_set +Perl_mg_size +Perl_mod +Perl_moreswitches +Perl_my +Perl_my_bcopy +Perl_my_bzero +Perl_my_chsize +Perl_my_exit +Perl_my_failure_exit +Perl_my_fflush_all +Perl_my_htonl +Perl_my_lstat +Perl_my_memcmp +Perl_my_memset +Perl_my_ntohl +Perl_my_pclose +Perl_my_popen +Perl_my_setenv +Perl_my_stat +Perl_my_swap +Perl_my_unexec +Perl_newANONHASH +Perl_newANONLIST +Perl_newANONSUB +Perl_newASSIGNOP +Perl_newAV +Perl_newAVREF +Perl_newBINOP +Perl_newCONDOP +Perl_newCONSTSUB +Perl_newCVREF +Perl_newFORM +Perl_newFOROP +Perl_newGVOP +Perl_newGVREF +Perl_newGVgen +Perl_newHV +Perl_newHVREF +Perl_newHVhv +Perl_newIO +Perl_newLISTOP +Perl_newLOGOP +Perl_newLOOPEX +Perl_newLOOPOP +Perl_newNULLLIST +Perl_newOP +Perl_newPMOP +Perl_newPROG +Perl_newPVOP +Perl_newRANGE +Perl_newRV +Perl_newRV_noinc +Perl_newSLICEOP +Perl_newSTATEOP +Perl_newSUB +Perl_newSV +Perl_newSVOP +Perl_newSVREF +Perl_newSViv +Perl_newSVnv +Perl_newSVpv +Perl_newSVpvf +Perl_newSVpvn +Perl_newSVrv +Perl_newSVsv +Perl_newUNOP +Perl_newWHILEOP +Perl_newXS +Perl_new_collate +Perl_new_ctype +Perl_new_numeric +Perl_new_stackinfo +Perl_new_struct_thread +Perl_nextargv +Perl_ninstr +Perl_oopsAV +Perl_oopsCV +Perl_oopsHV +Perl_op_const_sv +Perl_op_dump +Perl_op_free +Perl_package +Perl_pad_alloc +Perl_pad_allocmy +Perl_pad_findmy +Perl_pad_free +Perl_pad_leavemy +Perl_pad_reset +Perl_pad_sv +Perl_pad_swipe +Perl_peep +perl_alloc +perl_construct +perl_destruct +perl_free +perl_parse +perl_run +Perl_pidgone +Perl_pmflag +Perl_pmop_dump +Perl_pmruntime +Perl_pmtrans +Perl_pop_return +Perl_pop_scope +Perl_pregcomp +Perl_pregexec +Perl_pregfree +Perl_prepend_elem +Perl_push_return +Perl_push_scope +Perl_pv_display +Perl_realloc +Perl_ref +Perl_refkids +Perl_regdump +Perl_regexec_flags +Perl_reginitcolors +Perl_regnext +Perl_regprop +Perl_repeatcpy +Perl_require_pv +Perl_rninstr +Perl_rsignal +Perl_rsignal_restore +Perl_rsignal_save +Perl_rsignal_state +Perl_runops_debug +Perl_runops_standard +Perl_rxres_free +Perl_rxres_restore +Perl_rxres_save +Perl_safesyscalloc +Perl_safesysfree +Perl_safesysmalloc +Perl_safesysrealloc +Perl_safexcalloc +Perl_safexfree +Perl_safexmalloc +Perl_safexrealloc +Perl_same_dirent +Perl_save_I16 +Perl_save_I32 +Perl_save_aelem +Perl_save_alloc +Perl_save_aptr +Perl_save_ary +Perl_save_clearsv +Perl_save_delete +Perl_save_destructor +Perl_save_freeop +Perl_save_freepv +Perl_save_freesv +Perl_save_generic_svref +Perl_save_gp +Perl_save_hash +Perl_save_helem +Perl_save_hints +Perl_save_hptr +Perl_save_int +Perl_save_item +Perl_save_iv +Perl_save_list +Perl_save_long +Perl_save_nogv +Perl_save_op +Perl_save_pptr +Perl_save_re_context +Perl_save_scalar +Perl_save_sptr +Perl_save_svref +Perl_save_threadsv +Perl_savepv +Perl_savepvn +Perl_savestack_grow +Perl_sawparens +Perl_scalar +Perl_scalarkids +Perl_scalarseq +Perl_scalarvoid +Perl_scan_bin +Perl_scan_hex +Perl_scan_num +Perl_scan_oct +Perl_scope +Perl_screaminstr +Perl_set_numeric_local +Perl_set_numeric_standard +Perl_setdefout +Perl_setenv_getix +Perl_share_hek +Perl_sharepvn +Perl_sighandler +Perl_stack_grow +Perl_start_subparse +Perl_sub_crush_depth +Perl_sv_2bool +Perl_sv_2cv +Perl_sv_2io +Perl_sv_2iv +Perl_sv_2mortal +Perl_sv_2nv +Perl_sv_2pv +Perl_sv_2pv_nolen +Perl_sv_2uv +Perl_sv_add_arena +Perl_sv_backoff +Perl_sv_bless +Perl_sv_catpv +Perl_sv_catpv_mg +Perl_sv_catpvf +Perl_sv_catpvf_mg +Perl_sv_catpvn +Perl_sv_catpvn_mg +Perl_sv_catsv +Perl_sv_catsv_mg +Perl_sv_chop +Perl_sv_clean_all +Perl_sv_clean_objs +Perl_sv_clear +Perl_sv_cmp +Perl_sv_cmp_locale +Perl_sv_collxfrm +Perl_sv_compile_2op +Perl_sv_dec +Perl_sv_derived_from +Perl_sv_dump +Perl_sv_eq +Perl_sv_force_normal +Perl_sv_free +Perl_sv_free_arenas +Perl_sv_gets +Perl_sv_grow +Perl_sv_inc +Perl_sv_insert +Perl_sv_isa +Perl_sv_isobject +Perl_sv_iv +Perl_sv_len +Perl_sv_len_utf8 +Perl_sv_magic +Perl_sv_mortalcopy +Perl_sv_newmortal +Perl_sv_newref +Perl_sv_nv +Perl_sv_peek +Perl_sv_pos_b2u +Perl_sv_pos_u2b +Perl_sv_pv +Perl_sv_pvn +Perl_sv_pvn_force +Perl_sv_reftype +Perl_sv_replace +Perl_sv_report_used +Perl_sv_reset +Perl_sv_rvweaken +Perl_sv_setiv +Perl_sv_setiv_mg +Perl_sv_setnv +Perl_sv_setnv_mg +Perl_sv_setpv +Perl_sv_setpv_mg +Perl_sv_setpvf +Perl_sv_setpvf_mg +Perl_sv_setpviv +Perl_sv_setpviv_mg +Perl_sv_setpvn +Perl_sv_setpvn_mg +Perl_sv_setref_iv +Perl_sv_setref_nv +Perl_sv_setref_pv +Perl_sv_setref_pvn +Perl_sv_setsv +Perl_sv_setsv_mg +Perl_sv_setuv +Perl_sv_setuv_mg +Perl_sv_taint +Perl_sv_tainted +Perl_sv_true +Perl_sv_unmagic +Perl_sv_unref +Perl_sv_untaint +Perl_sv_upgrade +Perl_sv_usepvn +Perl_sv_usepvn_mg +Perl_sv_uv +Perl_sv_vcatpvfn +Perl_sv_vsetpvfn +Perl_swash_fetch +Perl_swash_init +Perl_taint_env +Perl_taint_proper +Perl_tmps_grow +Perl_to_uni_lower +Perl_to_uni_lower_lc +Perl_to_uni_title +Perl_to_uni_title_lc +Perl_to_uni_upper +Perl_to_uni_upper_lc +Perl_to_utf8_lower +Perl_to_utf8_title +Perl_to_utf8_upper +Perl_unlnk +Perl_unlock_condpair +Perl_unshare_hek +Perl_unsharepvn +Perl_utf16_to_utf8 +Perl_utf16_to_utf8_reversed +Perl_utf8_distance +Perl_utf8_hop +Perl_utf8_to_uv +Perl_utilize +Perl_uv_to_utf8 +Perl_vivify_defelem +Perl_vivify_ref +Perl_wait4pid +Perl_warn +Perl_warner +Perl_watch +Perl_whichsig +Perl_yydestruct +Perl_yyerror +Perl_yylex +Perl_yyparse +Perl_yywarn @@ -1,4 +1,5 @@ #include "INTERN.h" +#define PERL_IN_GLOBALS_C #include "perl.h" #ifdef PERL_OBJECT @@ -11,7 +12,8 @@ #define PERLVARIC(x, y, z) PL_##x = z; CPerlObj::CPerlObj(IPerlMem* ipM, IPerlEnv* ipE, IPerlStdIO* ipStd, - IPerlLIO* ipLIO, IPerlDir* ipD, IPerlSock* ipS, IPerlProc* ipP) + IPerlLIO* ipLIO, IPerlDir* ipD, IPerlSock* ipS, + IPerlProc* ipP) { memset(((char*)this)+sizeof(void*), 0, sizeof(CPerlObj)-sizeof(void*)); @@ -48,23 +50,15 @@ CPerlObj::Init(void) { } -int -fprintf(PerlIO *stream, const char *format, ...) -{ - va_list(arglist); - va_start(arglist, format); - return PerlIO_vprintf(stream, format, arglist); -} - #ifdef WIN32 /* XXX why are these needed? */ bool -do_exec(char *cmd) +Perl_do_exec(pTHX_ char *cmd) { return PerlProc_Cmd(cmd); } int -do_aspawn(void *vreally, void **vmark, void **vsp) +do_aspawn(pTHX_ void *vreally, void **vmark, void **vsp) { return PerlProc_aspawn(vreally, vmark, vsp); } @@ -17,10 +17,11 @@ */ #include "EXTERN.h" +#define PERL_IN_GV_C #include "perl.h" GV * -gv_AVadd(register GV *gv) +Perl_gv_AVadd(pTHX_ register GV *gv) { if (!gv || SvTYPE((SV*)gv) != SVt_PVGV) croak("Bad symbol for array"); @@ -30,7 +31,7 @@ gv_AVadd(register GV *gv) } GV * -gv_HVadd(register GV *gv) +Perl_gv_HVadd(pTHX_ register GV *gv) { if (!gv || SvTYPE((SV*)gv) != SVt_PVGV) croak("Bad symbol for hash"); @@ -40,7 +41,7 @@ gv_HVadd(register GV *gv) } GV * -gv_IOadd(register GV *gv) +Perl_gv_IOadd(pTHX_ register GV *gv) { if (!gv || SvTYPE((SV*)gv) != SVt_PVGV) croak("Bad symbol for filehandle"); @@ -50,7 +51,7 @@ gv_IOadd(register GV *gv) } GV * -gv_fetchfile(const char *name) +Perl_gv_fetchfile(pTHX_ const char *name) { dTHR; char smallbuf[256]; @@ -80,7 +81,7 @@ gv_fetchfile(const char *name) } void -gv_init(GV *gv, HV *stash, const char *name, STRLEN len, int multi) +Perl_gv_init(pTHX_ GV *gv, HV *stash, const char *name, STRLEN len, int multi) { dTHR; register GP *gp; @@ -136,7 +137,7 @@ gv_init(GV *gv, HV *stash, const char *name, STRLEN len, int multi) } STATIC void -gv_init_sv(GV *gv, I32 sv_type) +gv_init_sv(pTHX_ GV *gv, I32 sv_type) { switch (sv_type) { case SVt_PVIO: @@ -152,7 +153,7 @@ gv_init_sv(GV *gv, I32 sv_type) } GV * -gv_fetchmeth(HV *stash, const char *name, STRLEN len, I32 level) +Perl_gv_fetchmeth(pTHX_ HV *stash, const char *name, STRLEN len, I32 level) { AV* av; GV* topgv; @@ -273,13 +274,13 @@ gv_fetchmeth(HV *stash, const char *name, STRLEN len, I32 level) } GV * -gv_fetchmethod(HV *stash, const char *name) +Perl_gv_fetchmethod(pTHX_ HV *stash, const char *name) { return gv_fetchmethod_autoload(stash, name, TRUE); } GV * -gv_fetchmethod_autoload(HV *stash, const char *name, I32 autoload) +Perl_gv_fetchmethod_autoload(pTHX_ HV *stash, const char *name, I32 autoload) { dTHR; register const char *nend; @@ -340,7 +341,7 @@ gv_fetchmethod_autoload(HV *stash, const char *name, I32 autoload) } GV* -gv_autoload4(HV *stash, const char *name, STRLEN len, I32 method) +Perl_gv_autoload4(pTHX_ HV *stash, const char *name, STRLEN len, I32 method) { dTHR; static char autoload[] = "AUTOLOAD"; @@ -385,13 +386,13 @@ gv_autoload4(HV *stash, const char *name, STRLEN len, I32 method) } HV* -gv_stashpv(const char *name, I32 create) +Perl_gv_stashpv(pTHX_ const char *name, I32 create) { return gv_stashpvn(name, strlen(name), create); } HV* -gv_stashpvn(const char *name, U32 namelen, I32 create) +Perl_gv_stashpvn(pTHX_ const char *name, U32 namelen, I32 create) { char smallbuf[256]; char *tmpbuf; @@ -420,7 +421,7 @@ gv_stashpvn(const char *name, U32 namelen, I32 create) } HV* -gv_stashsv(SV *sv, I32 create) +Perl_gv_stashsv(pTHX_ SV *sv, I32 create) { register char *ptr; STRLEN len; @@ -430,7 +431,7 @@ gv_stashsv(SV *sv, I32 create) GV * -gv_fetchpv(const char *nambeg, I32 add, I32 sv_type) +Perl_gv_fetchpv(pTHX_ const char *nambeg, I32 add, I32 sv_type) { dTHR; register const char *name = nambeg; @@ -820,7 +821,7 @@ gv_fetchpv(const char *nambeg, I32 add, I32 sv_type) } void -gv_fullname3(SV *sv, GV *gv, const char *prefix) +Perl_gv_fullname3(pTHX_ SV *sv, GV *gv, const char *prefix) { HV *hv = GvSTASH(gv); if (!hv) { @@ -834,7 +835,7 @@ gv_fullname3(SV *sv, GV *gv, const char *prefix) } void -gv_efullname3(SV *sv, GV *gv, const char *prefix) +Perl_gv_efullname3(pTHX_ SV *sv, GV *gv, const char *prefix) { GV *egv = GvEGV(gv); if (!egv) @@ -844,20 +845,20 @@ gv_efullname3(SV *sv, GV *gv, const char *prefix) /* XXX compatibility with versions <= 5.003. */ void -gv_fullname(SV *sv, GV *gv) +Perl_gv_fullname(pTHX_ SV *sv, GV *gv) { gv_fullname3(sv, gv, sv == (SV*)gv ? "*" : ""); } /* XXX compatibility with versions <= 5.003. */ void -gv_efullname(SV *sv, GV *gv) +Perl_gv_efullname(pTHX_ SV *sv, GV *gv) { gv_efullname3(sv, gv, sv == (SV*)gv ? "*" : ""); } IO * -newIO(void) +Perl_newIO(pTHX) { dTHR; IO *io; @@ -876,7 +877,7 @@ newIO(void) } void -gv_check(HV *stash) +Perl_gv_check(pTHX_ HV *stash) { dTHR; register HE *entry; @@ -913,7 +914,7 @@ gv_check(HV *stash) } GV * -newGVgen(char *pack) +Perl_newGVgen(pTHX_ char *pack) { return gv_fetchpv(form("%s::_GEN_%ld", pack, (long)PL_gensym++), TRUE, SVt_PVGV); @@ -922,7 +923,7 @@ newGVgen(char *pack) /* hopefully this is only called on local symbol table entries */ GP* -gp_ref(GP *gp) +Perl_gp_ref(pTHX_ GP *gp) { gp->gp_refcnt++; if (gp->gp_cv) { @@ -941,7 +942,7 @@ gp_ref(GP *gp) } void -gp_free(GV *gv) +Perl_gp_free(pTHX_ GV *gv) { GP* gp; CV* cv; @@ -1000,7 +1001,7 @@ register GV *gv; /* Updates and caches the CV's */ bool -Gv_AMupdate(HV *stash) +Perl_Gv_AMupdate(pTHX_ HV *stash) { dTHR; GV** gvp; @@ -1158,7 +1159,7 @@ Gv_AMupdate(HV *stash) } SV* -amagic_call(SV *left, SV *right, int method, int flags) +Perl_amagic_call(pTHX_ SV *left, SV *right, int method, int flags) { dTHR; MAGIC *mg; @@ -128,7 +128,7 @@ HV *GvHVn(); #define DM_DELAY 0x100 /* - * symbol creation flags, for use in gv_fetchpv() and perl_get_*v() + * symbol creation flags, for use in gv_fetchpv() and get_*v() */ #define GV_ADD 0x01 /* add, if symbol not already there */ #define GV_ADDMULTI 0x02 /* add, pretending it has been added already */ @@ -12,16 +12,9 @@ */ #include "EXTERN.h" +#define PERL_IN_HV_C #include "perl.h" -static void hv_magic_check (HV *hv, bool *needs_copy, bool *needs_store); -#ifndef PERL_OBJECT -static void hsplit (HV *hv); -static void hfreeentries (HV *hv); -static void more_he (void); -static HEK *save_hek (const char *str, I32 len, U32 hash); -#endif - #if defined(STRANGE_MALLOC) || defined(MYMALLOC) # define ARRAY_ALLOC_BYTES(size) ( (size)*sizeof(HE*) ) #else @@ -32,7 +25,7 @@ static HEK *save_hek (const char *str, I32 len, U32 hash); #endif STATIC HE* -new_he(void) +new_he(pTHX) { HE* he; LOCK_SV_MUTEX; @@ -45,7 +38,7 @@ new_he(void) } STATIC void -del_he(HE *p) +del_he(pTHX_ HE *p) { LOCK_SV_MUTEX; HeNEXT(p) = (HE*)PL_he_root; @@ -54,7 +47,7 @@ del_he(HE *p) } STATIC void -more_he(void) +more_he(pTHX) { register HE* he; register HE* heend; @@ -69,7 +62,7 @@ more_he(void) } STATIC HEK * -save_hek(const char *str, I32 len, U32 hash) +save_hek(pTHX_ const char *str, I32 len, U32 hash) { char *k; register HEK *hek; @@ -84,7 +77,7 @@ save_hek(const char *str, I32 len, U32 hash) } void -unshare_hek(HEK *hek) +Perl_unshare_hek(pTHX_ HEK *hek) { unsharepvn(HEK_KEY(hek),HEK_LEN(hek),HEK_HASH(hek)); } @@ -93,7 +86,7 @@ unshare_hek(HEK *hek) * contains an SV* */ SV** -hv_fetch(HV *hv, const char *key, U32 klen, I32 lval) +Perl_hv_fetch(pTHX_ HV *hv, const char *key, U32 klen, I32 lval) { register XPVHV* xhv; register U32 hash; @@ -171,7 +164,7 @@ hv_fetch(HV *hv, const char *key, U32 klen, I32 lval) /* returns a HE * structure with the all fields set */ /* note that hent_val will be a mortal sv for MAGICAL hashes */ HE * -hv_fetch_ent(HV *hv, SV *keysv, I32 lval, register U32 hash) +Perl_hv_fetch_ent(pTHX_ HV *hv, SV *keysv, I32 lval, register U32 hash) { register XPVHV* xhv; register char *key; @@ -259,8 +252,8 @@ hv_fetch_ent(HV *hv, SV *keysv, I32 lval, register U32 hash) return 0; } -static void -hv_magic_check (HV *hv, bool *needs_copy, bool *needs_store) +STATIC void +hv_magic_check(pTHX_ HV *hv, bool *needs_copy, bool *needs_store) { MAGIC *mg = SvMAGIC(hv); *needs_copy = FALSE; @@ -279,7 +272,7 @@ hv_magic_check (HV *hv, bool *needs_copy, bool *needs_store) } SV** -hv_store(HV *hv, const char *key, U32 klen, SV *val, register U32 hash) +Perl_hv_store(pTHX_ HV *hv, const char *key, U32 klen, SV *val, register U32 hash) { register XPVHV* xhv; register I32 i; @@ -348,7 +341,7 @@ hv_store(HV *hv, const char *key, U32 klen, SV *val, register U32 hash) } HE * -hv_store_ent(HV *hv, SV *keysv, SV *val, register U32 hash) +Perl_hv_store_ent(pTHX_ HV *hv, SV *keysv, SV *val, register U32 hash) { register XPVHV* xhv; register char *key; @@ -429,7 +422,7 @@ hv_store_ent(HV *hv, SV *keysv, SV *val, register U32 hash) } SV * -hv_delete(HV *hv, const char *key, U32 klen, I32 flags) +Perl_hv_delete(pTHX_ HV *hv, const char *key, U32 klen, I32 flags) { register XPVHV* xhv; register I32 i; @@ -498,7 +491,7 @@ hv_delete(HV *hv, const char *key, U32 klen, I32 flags) } SV * -hv_delete_ent(HV *hv, SV *keysv, I32 flags, U32 hash) +Perl_hv_delete_ent(pTHX_ HV *hv, SV *keysv, I32 flags, U32 hash) { register XPVHV* xhv; register I32 i; @@ -572,7 +565,7 @@ hv_delete_ent(HV *hv, SV *keysv, I32 flags, U32 hash) } bool -hv_exists(HV *hv, const char *key, U32 klen) +Perl_hv_exists(pTHX_ HV *hv, const char *key, U32 klen) { register XPVHV* xhv; register U32 hash; @@ -637,7 +630,7 @@ hv_exists(HV *hv, const char *key, U32 klen) bool -hv_exists_ent(HV *hv, SV *keysv, U32 hash) +Perl_hv_exists_ent(pTHX_ HV *hv, SV *keysv, U32 hash) { register XPVHV* xhv; register char *key; @@ -707,7 +700,7 @@ hv_exists_ent(HV *hv, SV *keysv, U32 hash) } STATIC void -hsplit(HV *hv) +hsplit(pTHX_ HV *hv) { register XPVHV* xhv = (XPVHV*)SvANY(hv); I32 oldsize = (I32) xhv->xhv_max + 1; /* sic(k) */ @@ -769,7 +762,7 @@ hsplit(HV *hv) } void -hv_ksplit(HV *hv, IV newmax) +Perl_hv_ksplit(pTHX_ HV *hv, IV newmax) { register XPVHV* xhv = (XPVHV*)SvANY(hv); I32 oldsize = (I32) xhv->xhv_max + 1; /* sic(k) */ @@ -847,7 +840,7 @@ hv_ksplit(HV *hv, IV newmax) } HV * -newHV(void) +Perl_newHV(pTHX) { register HV *hv; register XPVHV* xhv; @@ -868,7 +861,7 @@ newHV(void) } HV * -newHVhv(HV *ohv) +Perl_newHVhv(pTHX_ HV *ohv) { register HV *hv; STRLEN hv_max = ohv ? HvMAX(ohv) : 0; @@ -906,7 +899,7 @@ newHVhv(HV *ohv) } void -hv_free_ent(HV *hv, register HE *entry) +Perl_hv_free_ent(pTHX_ HV *hv, register HE *entry) { SV *val; @@ -928,7 +921,7 @@ hv_free_ent(HV *hv, register HE *entry) } void -hv_delayfree_ent(HV *hv, register HE *entry) +Perl_hv_delayfree_ent(pTHX_ HV *hv, register HE *entry) { if (!entry) return; @@ -947,7 +940,7 @@ hv_delayfree_ent(HV *hv, register HE *entry) } void -hv_clear(HV *hv) +Perl_hv_clear(pTHX_ HV *hv) { register XPVHV* xhv; if (!hv) @@ -964,7 +957,7 @@ hv_clear(HV *hv) } STATIC void -hfreeentries(HV *hv) +hfreeentries(pTHX_ HV *hv) { register HE **array; register HE *entry; @@ -997,7 +990,7 @@ hfreeentries(HV *hv) } void -hv_undef(HV *hv) +Perl_hv_undef(pTHX_ HV *hv) { register XPVHV* xhv; if (!hv) @@ -1019,7 +1012,7 @@ hv_undef(HV *hv) } I32 -hv_iterinit(HV *hv) +Perl_hv_iterinit(pTHX_ HV *hv) { register XPVHV* xhv; HE *entry; @@ -1038,7 +1031,7 @@ hv_iterinit(HV *hv) } HE * -hv_iternext(HV *hv) +Perl_hv_iternext(pTHX_ HV *hv) { register XPVHV* xhv; register HE *entry; @@ -1108,7 +1101,7 @@ hv_iternext(HV *hv) } char * -hv_iterkey(register HE *entry, I32 *retlen) +Perl_hv_iterkey(pTHX_ register HE *entry, I32 *retlen) { if (HeKLEN(entry) == HEf_SVKEY) { STRLEN len; @@ -1124,7 +1117,7 @@ hv_iterkey(register HE *entry, I32 *retlen) /* unlike hv_iterval(), this always returns a mortal copy of the key */ SV * -hv_iterkeysv(register HE *entry) +Perl_hv_iterkeysv(pTHX_ register HE *entry) { if (HeKLEN(entry) == HEf_SVKEY) return sv_mortalcopy(HeKEY_sv(entry)); @@ -1134,7 +1127,7 @@ hv_iterkeysv(register HE *entry) } SV * -hv_iterval(HV *hv, register HE *entry) +Perl_hv_iterval(pTHX_ HV *hv, register HE *entry) { if (SvRMAGICAL(hv)) { if (mg_find((SV*)hv,'P')) { @@ -1149,7 +1142,7 @@ hv_iterval(HV *hv, register HE *entry) } SV * -hv_iternextsv(HV *hv, char **key, I32 *retlen) +Perl_hv_iternextsv(pTHX_ HV *hv, char **key, I32 *retlen) { HE *he; if ( (he = hv_iternext(hv)) == NULL) @@ -1159,13 +1152,13 @@ hv_iternextsv(HV *hv, char **key, I32 *retlen) } void -hv_magic(HV *hv, GV *gv, int how) +Perl_hv_magic(pTHX_ HV *hv, GV *gv, int how) { sv_magic((SV*)hv, (SV*)gv, how, Nullch, 0); } char* -sharepvn(const char *sv, I32 len, U32 hash) +Perl_sharepvn(pTHX_ const char *sv, I32 len, U32 hash) { return HEK_KEY(share_hek(sv, len, hash)); } @@ -1174,7 +1167,7 @@ sharepvn(const char *sv, I32 len, U32 hash) * len and hash must both be valid for str. */ void -unsharepvn(const char *str, I32 len, U32 hash) +Perl_unsharepvn(pTHX_ const char *str, I32 len, U32 hash) { register XPVHV* xhv; register HE *entry; @@ -1220,7 +1213,7 @@ unsharepvn(const char *str, I32 len, U32 hash) * len and hash must both be valid for str. */ HEK * -share_hek(const char *str, I32 len, register U32 hash) +Perl_share_hek(pTHX_ const char *str, I32 len, register U32 hash) { register XPVHV* xhv; register HE *entry; @@ -227,6 +227,7 @@ #ifdef PERL_CORE # include "EXTERN.h" +#define PERL_IN_MALLOC_C # include "perl.h" #else # ifdef PERL_FOR_X2P @@ -411,13 +412,6 @@ union overhead { #define ov_rmagic ovu.ovu_rmagic }; -#ifdef DEBUGGING -static void botch (char *diag, char *s); -#endif -static void morecore (int bucket); -static int findbucket (union overhead *freep, int srchlen); -static void add_to_chain(void *p, MEM_SIZE size, MEM_SIZE chip); - #define MAGIC 0xff /* magic # on accounting info */ #define RMAGIC 0x55555555 /* magic # on range info */ #define RMAGIC_C 0x55 /* magic # on range info */ @@ -715,10 +709,9 @@ static char bucket_of[] = static char *emergency_buffer; static MEM_SIZE emergency_buffer_size; -static Malloc_t emergency_sbrk(MEM_SIZE size); -static Malloc_t -emergency_sbrk(MEM_SIZE size) +STATIC Malloc_t +emergency_sbrk(pTHX_ MEM_SIZE size) { MEM_SIZE rsize = (((size - 1)>>LOG_OF_MIN_ARENA) + 1)<<LOG_OF_MIN_ARENA; @@ -816,8 +809,8 @@ static u_int goodsbrk; #ifdef DEBUGGING #undef ASSERT #define ASSERT(p,diag) if (!(p)) botch(diag,STRINGIFY(p)); else -static void -botch(char *diag, char *s) +STATIC void +botch(pTHX_ char *diag, char *s) { PerlIO_printf(PerlIO_stderr(), "assertion botched (%s?): %s\n", diag, s); PerlProc_abort(); @@ -954,8 +947,8 @@ static int n_chunks; static char max_bucket; /* Cutoff a piece of one of the chunks in the chain. Prefer smaller chunk. */ -static void * -get_from_chain(MEM_SIZE size) +STATIC void * +get_from_chain(pTHX_ MEM_SIZE size) { struct chunk_chain_s *elt = chunk_chain, **oldp = &chunk_chain; struct chunk_chain_s **oldgoodp = NULL; @@ -992,8 +985,8 @@ get_from_chain(MEM_SIZE size) } } -static void -add_to_chain(void *p, MEM_SIZE size, MEM_SIZE chip) +STATIC void +add_to_chain(pTHX_ void *p, MEM_SIZE size, MEM_SIZE chip) { struct chunk_chain_s *next = chunk_chain; char *cp = (char*)p; @@ -1005,8 +998,8 @@ add_to_chain(void *p, MEM_SIZE size, MEM_SIZE chip) n_chunks++; } -static void * -get_from_bigger_buckets(int bucket, MEM_SIZE size) +STATIC void * +get_from_bigger_buckets(pTHX_ int bucket, MEM_SIZE size) { int price = 1; static int bucketprice[NBUCKETS]; @@ -1035,8 +1028,8 @@ get_from_bigger_buckets(int bucket, MEM_SIZE size) return NULL; } -static union overhead * -getpages(int needed, int *nblksp, int bucket) +STATIC union overhead * +getpages(pTHX_ int needed, int *nblksp, int bucket) { /* Need to do (possibly expensive) system call. Try to optimize it for rare calling. */ @@ -1188,8 +1181,8 @@ getpages(int needed, int *nblksp, int bucket) return ovp; } -static int -getpages_adjacent(int require) +STATIC int +getpages_adjacent(pTHX_ int require) { if (require <= sbrked_remains) { sbrked_remains -= require; @@ -1232,8 +1225,8 @@ getpages_adjacent(int require) /* * Allocate more memory to the indicated bucket. */ -static void -morecore(register int bucket) +STATIC void +morecore(pTHX_ register int bucket) { register union overhead *ovp; register int rnu; /* 2^rnu bytes will be requested */ @@ -1613,7 +1606,7 @@ Perl_calloc(register size_t elements, register size_t size) } MEM_SIZE -malloced_size(void *p) +Perl_malloced_size(pTHX_ void *p) { union overhead *ovp = (union overhead *) ((caddr_t)p - sizeof (union overhead) * CHUNK_SHIFT); @@ -1643,7 +1636,7 @@ malloced_size(void *p) * frees for each size category. */ void -dump_mstats(char *s) +Perl_dump_mstats(pTHX_ char *s) { #ifdef DEBUGGING_MSTATS register int i, j; @@ -13,6 +13,7 @@ */ #include "EXTERN.h" +#define PERL_IN_MG_C #include "perl.h" /* XXX If this causes problems, set i_unistd=undef in the hint file. */ @@ -30,8 +31,6 @@ # define VTBL this->*vtbl #else # define VTBL *vtbl -static void restore_magic (void *p); -static int magic_methcall(SV *sv, MAGIC *mg, char *meth, I32 f, int n, SV *val); #endif /* @@ -46,7 +45,7 @@ struct magic_state { /* MGS is typedef'ed to struct magic_state in perl.h */ STATIC void -save_magic(I32 mgs_ix, SV *sv) +save_magic(pTHX_ I32 mgs_ix, SV *sv) { dTHR; MGS* mgs; @@ -65,7 +64,7 @@ save_magic(I32 mgs_ix, SV *sv) } STATIC void -restore_magic(void *p) +restore_magic(pTHX_ void *p) { dTHR; MGS* mgs = SSPTR((I32)p, MGS*); @@ -107,7 +106,7 @@ restore_magic(void *p) } void -mg_magical(SV *sv) +Perl_mg_magical(pTHX_ SV *sv) { MAGIC* mg; for (mg = SvMAGIC(sv); mg; mg = mg->mg_moremagic) { @@ -124,7 +123,7 @@ mg_magical(SV *sv) } int -mg_get(SV *sv) +Perl_mg_get(pTHX_ SV *sv) { dTHR; I32 mgs_ix; @@ -159,7 +158,7 @@ mg_get(SV *sv) } int -mg_set(SV *sv) +Perl_mg_set(pTHX_ SV *sv) { dTHR; I32 mgs_ix; @@ -185,7 +184,7 @@ mg_set(SV *sv) } U32 -mg_length(SV *sv) +Perl_mg_length(pTHX_ SV *sv) { MAGIC* mg; char *junk; @@ -210,7 +209,7 @@ mg_length(SV *sv) } I32 -mg_size(SV *sv) +Perl_mg_size(pTHX_ SV *sv) { MAGIC* mg; I32 len; @@ -243,7 +242,7 @@ mg_size(SV *sv) } int -mg_clear(SV *sv) +Perl_mg_clear(pTHX_ SV *sv) { I32 mgs_ix; MAGIC* mg; @@ -264,7 +263,7 @@ mg_clear(SV *sv) } MAGIC* -mg_find(SV *sv, int type) +Perl_mg_find(pTHX_ SV *sv, int type) { MAGIC* mg; for (mg = SvMAGIC(sv); mg; mg = mg->mg_moremagic) { @@ -275,7 +274,7 @@ mg_find(SV *sv, int type) } int -mg_copy(SV *sv, SV *nsv, const char *key, I32 klen) +Perl_mg_copy(pTHX_ SV *sv, SV *nsv, const char *key, I32 klen) { int count = 0; MAGIC* mg; @@ -291,7 +290,7 @@ mg_copy(SV *sv, SV *nsv, const char *key, I32 klen) } int -mg_free(SV *sv) +Perl_mg_free(pTHX_ SV *sv) { MAGIC* mg; MAGIC* moremagic; @@ -318,7 +317,7 @@ mg_free(SV *sv) #endif U32 -magic_regdata_cnt(SV *sv, MAGIC *mg) +Perl_magic_regdata_cnt(pTHX_ SV *sv, MAGIC *mg) { dTHR; register char *s; @@ -337,7 +336,7 @@ magic_regdata_cnt(SV *sv, MAGIC *mg) } int -magic_regdatum_get(SV *sv, MAGIC *mg) +Perl_magic_regdatum_get(pTHX_ SV *sv, MAGIC *mg) { dTHR; register I32 paren; @@ -365,7 +364,7 @@ magic_regdatum_get(SV *sv, MAGIC *mg) } U32 -magic_len(SV *sv, MAGIC *mg) +Perl_magic_len(pTHX_ SV *sv, MAGIC *mg) { dTHR; register I32 paren; @@ -460,7 +459,7 @@ printW(SV *sv) #endif int -magic_get(SV *sv, MAGIC *mg) +Perl_magic_get(pTHX_ SV *sv, MAGIC *mg) { dTHR; register I32 paren; @@ -764,7 +763,7 @@ magic_get(SV *sv, MAGIC *mg) } int -magic_getuvar(SV *sv, MAGIC *mg) +Perl_magic_getuvar(pTHX_ SV *sv, MAGIC *mg) { struct ufuncs *uf = (struct ufuncs *)mg->mg_ptr; @@ -774,7 +773,7 @@ magic_getuvar(SV *sv, MAGIC *mg) } int -magic_setenv(SV *sv, MAGIC *mg) +Perl_magic_setenv(pTHX_ SV *sv, MAGIC *mg) { register char *s; char *ptr; @@ -850,7 +849,7 @@ magic_setenv(SV *sv, MAGIC *mg) } int -magic_clearenv(SV *sv, MAGIC *mg) +Perl_magic_clearenv(pTHX_ SV *sv, MAGIC *mg) { STRLEN n_a; my_setenv(MgPV(mg,n_a),Nullch); @@ -858,7 +857,7 @@ magic_clearenv(SV *sv, MAGIC *mg) } int -magic_set_all_env(SV *sv, MAGIC *mg) +Perl_magic_set_all_env(pTHX_ SV *sv, MAGIC *mg) { #if defined(VMS) die("Can't make list assignment to %%ENV on this system"); @@ -880,7 +879,7 @@ magic_set_all_env(SV *sv, MAGIC *mg) } int -magic_clear_all_env(SV *sv, MAGIC *mg) +Perl_magic_clear_all_env(pTHX_ SV *sv, MAGIC *mg) { #if defined(VMS) die("Can't make list assignment to %%ENV on this system"); @@ -920,7 +919,7 @@ magic_clear_all_env(SV *sv, MAGIC *mg) } int -magic_getsig(SV *sv, MAGIC *mg) +Perl_magic_getsig(pTHX_ SV *sv, MAGIC *mg) { I32 i; STRLEN n_a; @@ -944,7 +943,7 @@ magic_getsig(SV *sv, MAGIC *mg) return 0; } int -magic_clearsig(SV *sv, MAGIC *mg) +Perl_magic_clearsig(pTHX_ SV *sv, MAGIC *mg) { I32 i; STRLEN n_a; @@ -964,7 +963,7 @@ magic_clearsig(SV *sv, MAGIC *mg) } int -magic_setsig(SV *sv, MAGIC *mg) +Perl_magic_setsig(pTHX_ SV *sv, MAGIC *mg) { dTHR; register char *s; @@ -1039,14 +1038,14 @@ magic_setsig(SV *sv, MAGIC *mg) } int -magic_setisa(SV *sv, MAGIC *mg) +Perl_magic_setisa(pTHX_ SV *sv, MAGIC *mg) { PL_sub_generation++; return 0; } int -magic_setamagic(SV *sv, MAGIC *mg) +Perl_magic_setamagic(pTHX_ SV *sv, MAGIC *mg) { /* HV_badAMAGIC_on(Sv_STASH(sv)); */ PL_amagic_generation++; @@ -1055,7 +1054,7 @@ magic_setamagic(SV *sv, MAGIC *mg) } int -magic_getnkeys(SV *sv, MAGIC *mg) +Perl_magic_getnkeys(pTHX_ SV *sv, MAGIC *mg) { HV *hv = (HV*)LvTARG(sv); HE *entry; @@ -1078,7 +1077,7 @@ magic_getnkeys(SV *sv, MAGIC *mg) } int -magic_setnkeys(SV *sv, MAGIC *mg) +Perl_magic_setnkeys(pTHX_ SV *sv, MAGIC *mg) { if (LvTARG(sv)) { hv_ksplit((HV*)LvTARG(sv), SvIV(sv)); @@ -1088,7 +1087,7 @@ magic_setnkeys(SV *sv, MAGIC *mg) /* caller is responsible for stack switching/cleanup */ STATIC int -magic_methcall(SV *sv, MAGIC *mg, char *meth, I32 flags, int n, SV *val) +magic_methcall(pTHX_ SV *sv, MAGIC *mg, char *meth, I32 flags, int n, SV *val) { dSP; @@ -1111,11 +1110,11 @@ magic_methcall(SV *sv, MAGIC *mg, char *meth, I32 flags, int n, SV *val) } PUTBACK; - return perl_call_method(meth, flags); + return call_method(meth, flags); } STATIC int -magic_methpack(SV *sv, MAGIC *mg, char *meth) +magic_methpack(pTHX_ SV *sv, MAGIC *mg, char *meth) { dSP; @@ -1134,7 +1133,7 @@ magic_methpack(SV *sv, MAGIC *mg, char *meth) } int -magic_getpack(SV *sv, MAGIC *mg) +Perl_magic_getpack(pTHX_ SV *sv, MAGIC *mg) { magic_methpack(sv,mg,"FETCH"); if (mg->mg_ptr) @@ -1143,7 +1142,7 @@ magic_getpack(SV *sv, MAGIC *mg) } int -magic_setpack(SV *sv, MAGIC *mg) +Perl_magic_setpack(pTHX_ SV *sv, MAGIC *mg) { dSP; ENTER; @@ -1155,14 +1154,14 @@ magic_setpack(SV *sv, MAGIC *mg) } int -magic_clearpack(SV *sv, MAGIC *mg) +Perl_magic_clearpack(pTHX_ SV *sv, MAGIC *mg) { return magic_methpack(sv,mg,"DELETE"); } U32 -magic_sizepack(SV *sv, MAGIC *mg) +Perl_magic_sizepack(pTHX_ SV *sv, MAGIC *mg) { dSP; U32 retval = 0; @@ -1189,14 +1188,14 @@ int magic_wipepack(SV *sv, MAGIC *mg) PUSHMARK(SP); XPUSHs(SvTIED_obj(sv, mg)); PUTBACK; - perl_call_method("CLEAR", G_SCALAR|G_DISCARD); + call_method("CLEAR", G_SCALAR|G_DISCARD); POPSTACK; LEAVE; return 0; } int -magic_nextpack(SV *sv, MAGIC *mg, SV *key) +Perl_magic_nextpack(pTHX_ SV *sv, MAGIC *mg, SV *key) { dSP; char *meth = SvOK(key) ? "NEXTKEY" : "FIRSTKEY"; @@ -1211,7 +1210,7 @@ magic_nextpack(SV *sv, MAGIC *mg, SV *key) PUSHs(key); PUTBACK; - if (perl_call_method(meth, G_SCALAR)) + if (call_method(meth, G_SCALAR)) sv_setsv(key, *PL_stack_sp--); POPSTACK; @@ -1221,13 +1220,13 @@ magic_nextpack(SV *sv, MAGIC *mg, SV *key) } int -magic_existspack(SV *sv, MAGIC *mg) +Perl_magic_existspack(pTHX_ SV *sv, MAGIC *mg) { return magic_methpack(sv,mg,"EXISTS"); } int -magic_setdbline(SV *sv, MAGIC *mg) +Perl_magic_setdbline(pTHX_ SV *sv, MAGIC *mg) { dTHR; OP *o; @@ -1248,7 +1247,7 @@ magic_setdbline(SV *sv, MAGIC *mg) } int -magic_getarylen(SV *sv, MAGIC *mg) +Perl_magic_getarylen(pTHX_ SV *sv, MAGIC *mg) { dTHR; sv_setiv(sv, AvFILL((AV*)mg->mg_obj) + PL_curcop->cop_arybase); @@ -1256,7 +1255,7 @@ magic_getarylen(SV *sv, MAGIC *mg) } int -magic_setarylen(SV *sv, MAGIC *mg) +Perl_magic_setarylen(pTHX_ SV *sv, MAGIC *mg) { dTHR; av_fill((AV*)mg->mg_obj, SvIV(sv) - PL_curcop->cop_arybase); @@ -1264,7 +1263,7 @@ magic_setarylen(SV *sv, MAGIC *mg) } int -magic_getpos(SV *sv, MAGIC *mg) +Perl_magic_getpos(pTHX_ SV *sv, MAGIC *mg) { SV* lsv = LvTARG(sv); @@ -1284,7 +1283,7 @@ magic_getpos(SV *sv, MAGIC *mg) } int -magic_setpos(SV *sv, MAGIC *mg) +Perl_magic_setpos(pTHX_ SV *sv, MAGIC *mg) { SV* lsv = LvTARG(sv); SSize_t pos; @@ -1339,7 +1338,7 @@ magic_setpos(SV *sv, MAGIC *mg) } int -magic_getglob(SV *sv, MAGIC *mg) +Perl_magic_getglob(pTHX_ SV *sv, MAGIC *mg) { if (SvFAKE(sv)) { /* FAKE globs can get coerced */ SvFAKE_off(sv); @@ -1352,7 +1351,7 @@ magic_getglob(SV *sv, MAGIC *mg) } int -magic_setglob(SV *sv, MAGIC *mg) +Perl_magic_setglob(pTHX_ SV *sv, MAGIC *mg) { register char *s; GV* gv; @@ -1373,7 +1372,7 @@ magic_setglob(SV *sv, MAGIC *mg) } int -magic_getsubstr(SV *sv, MAGIC *mg) +Perl_magic_getsubstr(pTHX_ SV *sv, MAGIC *mg) { STRLEN len; SV *lsv = LvTARG(sv); @@ -1390,7 +1389,7 @@ magic_getsubstr(SV *sv, MAGIC *mg) } int -magic_setsubstr(SV *sv, MAGIC *mg) +Perl_magic_setsubstr(pTHX_ SV *sv, MAGIC *mg) { STRLEN len; char *tmps = SvPV(sv,len); @@ -1399,7 +1398,7 @@ magic_setsubstr(SV *sv, MAGIC *mg) } int -magic_gettaint(SV *sv, MAGIC *mg) +Perl_magic_gettaint(pTHX_ SV *sv, MAGIC *mg) { dTHR; TAINT_IF((mg->mg_len & 1) || @@ -1408,7 +1407,7 @@ magic_gettaint(SV *sv, MAGIC *mg) } int -magic_settaint(SV *sv, MAGIC *mg) +Perl_magic_settaint(pTHX_ SV *sv, MAGIC *mg) { dTHR; if (PL_localizing) { @@ -1425,7 +1424,7 @@ magic_settaint(SV *sv, MAGIC *mg) } int -magic_getvec(SV *sv, MAGIC *mg) +Perl_magic_getvec(pTHX_ SV *sv, MAGIC *mg) { SV *lsv = LvTARG(sv); unsigned char *s; @@ -1491,14 +1490,14 @@ magic_getvec(SV *sv, MAGIC *mg) } int -magic_setvec(SV *sv, MAGIC *mg) +Perl_magic_setvec(pTHX_ SV *sv, MAGIC *mg) { do_vecset(sv); /* XXX slurp this routine */ return 0; } int -magic_getdefelem(SV *sv, MAGIC *mg) +Perl_magic_getdefelem(pTHX_ SV *sv, MAGIC *mg) { SV *targ = Nullsv; if (LvTARGLEN(sv)) { @@ -1538,7 +1537,7 @@ magic_getdefelem(SV *sv, MAGIC *mg) } int -magic_setdefelem(SV *sv, MAGIC *mg) +Perl_magic_setdefelem(pTHX_ SV *sv, MAGIC *mg) { if (LvTARGLEN(sv)) vivify_defelem(sv); @@ -1550,7 +1549,7 @@ magic_setdefelem(SV *sv, MAGIC *mg) } void -vivify_defelem(SV *sv) +Perl_vivify_defelem(pTHX_ SV *sv) { dTHR; /* just for SvREFCNT_inc and SvREFCNT_dec*/ MAGIC *mg; @@ -1594,7 +1593,7 @@ vivify_defelem(SV *sv) } int -magic_killbackrefs(SV *sv, MAGIC *mg) +Perl_magic_killbackrefs(pTHX_ SV *sv, MAGIC *mg) { AV *av = (AV*)mg->mg_obj; SV **svp = AvARRAY(av); @@ -1615,7 +1614,7 @@ magic_killbackrefs(SV *sv, MAGIC *mg) } int -magic_setmglob(SV *sv, MAGIC *mg) +Perl_magic_setmglob(pTHX_ SV *sv, MAGIC *mg) { mg->mg_len = -1; SvSCREAM_off(sv); @@ -1623,7 +1622,7 @@ magic_setmglob(SV *sv, MAGIC *mg) } int -magic_setbm(SV *sv, MAGIC *mg) +Perl_magic_setbm(pTHX_ SV *sv, MAGIC *mg) { sv_unmagic(sv, 'B'); SvVALID_off(sv); @@ -1631,7 +1630,7 @@ magic_setbm(SV *sv, MAGIC *mg) } int -magic_setfm(SV *sv, MAGIC *mg) +Perl_magic_setfm(pTHX_ SV *sv, MAGIC *mg) { sv_unmagic(sv, 'f'); SvCOMPILED_off(sv); @@ -1639,7 +1638,7 @@ magic_setfm(SV *sv, MAGIC *mg) } int -magic_setuvar(SV *sv, MAGIC *mg) +Perl_magic_setuvar(pTHX_ SV *sv, MAGIC *mg) { struct ufuncs *uf = (struct ufuncs *)mg->mg_ptr; @@ -1649,7 +1648,7 @@ magic_setuvar(SV *sv, MAGIC *mg) } int -magic_freeregexp(SV *sv, MAGIC *mg) +Perl_magic_freeregexp(pTHX_ SV *sv, MAGIC *mg) { regexp *re = (regexp *)mg->mg_obj; ReREFCNT_dec(re); @@ -1658,7 +1657,7 @@ magic_freeregexp(SV *sv, MAGIC *mg) #ifdef USE_LOCALE_COLLATE int -magic_setcollxfrm(SV *sv, MAGIC *mg) +Perl_magic_setcollxfrm(pTHX_ SV *sv, MAGIC *mg) { /* * RenE<eacute> Descartes said "I think not." @@ -1674,7 +1673,7 @@ magic_setcollxfrm(SV *sv, MAGIC *mg) #endif /* USE_LOCALE_COLLATE */ int -magic_set(SV *sv, MAGIC *mg) +Perl_magic_set(pTHX_ SV *sv, MAGIC *mg) { dTHR; register char *s; @@ -2056,7 +2055,7 @@ magic_set(SV *sv, MAGIC *mg) #ifdef USE_THREADS int -magic_mutexfree(SV *sv, MAGIC *mg) +Perl_magic_mutexfree(pTHX_ SV *sv, MAGIC *mg) { dTHR; DEBUG_S(PerlIO_printf(PerlIO_stderr(), "0x%lx: magic_mutexfree 0x%lx\n", @@ -2070,7 +2069,7 @@ magic_mutexfree(SV *sv, MAGIC *mg) #endif /* USE_THREADS */ I32 -whichsig(char *sig) +Perl_whichsig(pTHX_ char *sig) { register char **sigv; @@ -2091,7 +2090,7 @@ whichsig(char *sig) static SV* sig_sv; STATIC void -unwind_handler_stack(void *p) +unwind_handler_stack(pTHX_ void *p) { dTHR; U32 flags = *(U32*)p; @@ -2104,7 +2103,7 @@ unwind_handler_stack(void *p) } Signal_t -sighandler(int sig) +Perl_sighandler(pTHX_ int sig) { dSP; GV *gv = Nullgv; @@ -2173,7 +2172,7 @@ sighandler(int sig) PUSHs(sv); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); POPSTACK; cleanup: diff --git a/miniperlmain.c b/miniperlmain.c index 4a0fe67e3f..3265bc76da 100644 --- a/miniperlmain.c +++ b/miniperlmain.c @@ -8,9 +8,10 @@ #include "EXTERN.h" +#define PERL_IN_MINIPERLMAIN_C #include "perl.h" -static void xs_init (void); +static void xs_init (pTHX); static PerlInterpreter *my_perl; #if defined (__MINT__) || defined (atarist) @@ -36,7 +37,7 @@ main(int argc, char **argv, char **env) PERL_SYS_INIT(&argc,&argv); - perl_init_i18nl10n(1); + init_i18nl10n(1); if (!PL_do_undump) { my_perl = perl_alloc(); @@ -65,7 +66,7 @@ main(int argc, char **argv, char **env) /* Do not delete this line--writemain depends on it */ static void -xs_init(void) +xs_init(pTHX) { dXSUB_SYS; } @@ -789,12 +789,1966 @@ /* Functions */ -#undef Gv_AMupdate -#define Gv_AMupdate pPerl->Perl_Gv_AMupdate +#undef Perl_ErrorNo +#define Perl_ErrorNo pPerl->Perl_ErrorNo +#undef Perl_GetVars +#define Perl_GetVars pPerl->Perl_GetVars +#undef Perl_Gv_AMupdate +#define Perl_Gv_AMupdate pPerl->Perl_Gv_AMupdate +#undef Perl_amagic_call +#define Perl_amagic_call pPerl->Perl_amagic_call +#undef Perl_append_elem +#define Perl_append_elem pPerl->Perl_append_elem +#undef Perl_append_list +#define Perl_append_list pPerl->Perl_append_list +#undef Perl_apply +#define Perl_apply pPerl->Perl_apply +#undef Perl_assertref +#define Perl_assertref pPerl->Perl_assertref +#undef Perl_av_clear +#define Perl_av_clear pPerl->Perl_av_clear +#undef Perl_av_extend +#define Perl_av_extend pPerl->Perl_av_extend +#undef Perl_av_fake +#define Perl_av_fake pPerl->Perl_av_fake +#undef Perl_av_fetch +#define Perl_av_fetch pPerl->Perl_av_fetch +#undef Perl_av_fill +#define Perl_av_fill pPerl->Perl_av_fill +#undef Perl_av_len +#define Perl_av_len pPerl->Perl_av_len +#undef Perl_av_make +#define Perl_av_make pPerl->Perl_av_make +#undef Perl_av_pop +#define Perl_av_pop pPerl->Perl_av_pop +#undef Perl_av_push +#define Perl_av_push pPerl->Perl_av_push +#undef Perl_av_reify +#define Perl_av_reify pPerl->Perl_av_reify +#undef Perl_av_shift +#define Perl_av_shift pPerl->Perl_av_shift +#undef Perl_av_store +#define Perl_av_store pPerl->Perl_av_store +#undef Perl_av_undef +#define Perl_av_undef pPerl->Perl_av_undef +#undef Perl_av_unshift +#define Perl_av_unshift pPerl->Perl_av_unshift +#undef Perl_avhv_exists_ent +#define Perl_avhv_exists_ent pPerl->Perl_avhv_exists_ent +#undef Perl_avhv_fetch_ent +#define Perl_avhv_fetch_ent pPerl->Perl_avhv_fetch_ent +#undef Perl_avhv_iternext +#define Perl_avhv_iternext pPerl->Perl_avhv_iternext +#undef Perl_avhv_iterval +#define Perl_avhv_iterval pPerl->Perl_avhv_iterval +#undef Perl_avhv_keys +#define Perl_avhv_keys pPerl->Perl_avhv_keys +#undef Perl_bind_match +#define Perl_bind_match pPerl->Perl_bind_match +#undef Perl_block_end +#define Perl_block_end pPerl->Perl_block_end +#undef Perl_block_gimme +#define Perl_block_gimme pPerl->Perl_block_gimme +#undef Perl_block_start +#define Perl_block_start pPerl->Perl_block_start +#undef Perl_boot_core_UNIVERSAL +#define Perl_boot_core_UNIVERSAL pPerl->Perl_boot_core_UNIVERSAL +#undef Perl_bset_obj_store +#define Perl_bset_obj_store pPerl->Perl_bset_obj_store +#undef Perl_call_argv +#define Perl_call_argv pPerl->Perl_call_argv +#undef Perl_call_atexit +#define Perl_call_atexit pPerl->Perl_call_atexit +#undef Perl_call_list +#define Perl_call_list pPerl->Perl_call_list +#undef Perl_call_method +#define Perl_call_method pPerl->Perl_call_method +#undef Perl_call_pv +#define Perl_call_pv pPerl->Perl_call_pv +#undef Perl_call_sv +#define Perl_call_sv pPerl->Perl_call_sv +#undef Perl_calloc +#define Perl_calloc pPerl->Perl_calloc +#undef Perl_cando +#define Perl_cando pPerl->Perl_cando +#undef Perl_cast_i32 +#define Perl_cast_i32 pPerl->Perl_cast_i32 +#undef Perl_cast_iv +#define Perl_cast_iv pPerl->Perl_cast_iv +#undef Perl_cast_ulong +#define Perl_cast_ulong pPerl->Perl_cast_ulong +#undef Perl_cast_uv +#define Perl_cast_uv pPerl->Perl_cast_uv +#undef Perl_ck_anoncode +#define Perl_ck_anoncode pPerl->Perl_ck_anoncode +#undef Perl_ck_bitop +#define Perl_ck_bitop pPerl->Perl_ck_bitop +#undef Perl_ck_concat +#define Perl_ck_concat pPerl->Perl_ck_concat +#undef Perl_ck_defined +#define Perl_ck_defined pPerl->Perl_ck_defined +#undef Perl_ck_delete +#define Perl_ck_delete pPerl->Perl_ck_delete +#undef Perl_ck_eof +#define Perl_ck_eof pPerl->Perl_ck_eof +#undef Perl_ck_eval +#define Perl_ck_eval pPerl->Perl_ck_eval +#undef Perl_ck_exec +#define Perl_ck_exec pPerl->Perl_ck_exec +#undef Perl_ck_exists +#define Perl_ck_exists pPerl->Perl_ck_exists +#undef Perl_ck_ftst +#define Perl_ck_ftst pPerl->Perl_ck_ftst +#undef Perl_ck_fun +#define Perl_ck_fun pPerl->Perl_ck_fun +#undef Perl_ck_fun_locale +#define Perl_ck_fun_locale pPerl->Perl_ck_fun_locale +#undef Perl_ck_glob +#define Perl_ck_glob pPerl->Perl_ck_glob +#undef Perl_ck_grep +#define Perl_ck_grep pPerl->Perl_ck_grep +#undef Perl_ck_index +#define Perl_ck_index pPerl->Perl_ck_index +#undef Perl_ck_lengthconst +#define Perl_ck_lengthconst pPerl->Perl_ck_lengthconst +#undef Perl_ck_lfun +#define Perl_ck_lfun pPerl->Perl_ck_lfun +#undef Perl_ck_listiob +#define Perl_ck_listiob pPerl->Perl_ck_listiob +#undef Perl_ck_match +#define Perl_ck_match pPerl->Perl_ck_match +#undef Perl_ck_null +#define Perl_ck_null pPerl->Perl_ck_null +#undef Perl_ck_repeat +#define Perl_ck_repeat pPerl->Perl_ck_repeat +#undef Perl_ck_require +#define Perl_ck_require pPerl->Perl_ck_require +#undef Perl_ck_rfun +#define Perl_ck_rfun pPerl->Perl_ck_rfun +#undef Perl_ck_rvconst +#define Perl_ck_rvconst pPerl->Perl_ck_rvconst +#undef Perl_ck_scmp +#define Perl_ck_scmp pPerl->Perl_ck_scmp +#undef Perl_ck_select +#define Perl_ck_select pPerl->Perl_ck_select +#undef Perl_ck_shift +#define Perl_ck_shift pPerl->Perl_ck_shift +#undef Perl_ck_sort +#define Perl_ck_sort pPerl->Perl_ck_sort +#undef Perl_ck_spair +#define Perl_ck_spair pPerl->Perl_ck_spair +#undef Perl_ck_split +#define Perl_ck_split pPerl->Perl_ck_split +#undef Perl_ck_subr +#define Perl_ck_subr pPerl->Perl_ck_subr +#undef Perl_ck_svconst +#define Perl_ck_svconst pPerl->Perl_ck_svconst +#undef Perl_ck_trunc +#define Perl_ck_trunc pPerl->Perl_ck_trunc +#undef Perl_condpair_magic +#define Perl_condpair_magic pPerl->Perl_condpair_magic +#undef Perl_convert +#define Perl_convert pPerl->Perl_convert +#undef Perl_croak +#define Perl_croak pPerl->Perl_croak +#undef Perl_cv_ckproto +#define Perl_cv_ckproto pPerl->Perl_cv_ckproto +#undef Perl_cv_clone +#define Perl_cv_clone pPerl->Perl_cv_clone +#undef Perl_cv_const_sv +#define Perl_cv_const_sv pPerl->Perl_cv_const_sv +#undef Perl_cv_undef +#define Perl_cv_undef pPerl->Perl_cv_undef +#undef Perl_cx_dump +#define Perl_cx_dump pPerl->Perl_cx_dump +#undef Perl_cxinc +#define Perl_cxinc pPerl->Perl_cxinc +#undef Perl_deb +#define Perl_deb pPerl->Perl_deb +#undef Perl_deb_growlevel +#define Perl_deb_growlevel pPerl->Perl_deb_growlevel +#undef Perl_debop +#define Perl_debop pPerl->Perl_debop +#undef Perl_debprofdump +#define Perl_debprofdump pPerl->Perl_debprofdump +#undef Perl_debstack +#define Perl_debstack pPerl->Perl_debstack +#undef Perl_debstackptrs +#define Perl_debstackptrs pPerl->Perl_debstackptrs +#undef Perl_default_protect +#define Perl_default_protect pPerl->Perl_default_protect +#undef Perl_delimcpy +#define Perl_delimcpy pPerl->Perl_delimcpy +#undef Perl_deprecate +#define Perl_deprecate pPerl->Perl_deprecate +#undef Perl_die +#define Perl_die pPerl->Perl_die +#undef Perl_die_where +#define Perl_die_where pPerl->Perl_die_where +#undef Perl_do_aexec +#define Perl_do_aexec pPerl->Perl_do_aexec +#undef Perl_do_binmode +#define Perl_do_binmode pPerl->Perl_do_binmode +#undef Perl_do_chomp +#define Perl_do_chomp pPerl->Perl_do_chomp +#undef Perl_do_chop +#define Perl_do_chop pPerl->Perl_do_chop +#undef Perl_do_close +#define Perl_do_close pPerl->Perl_do_close +#undef Perl_do_eof +#define Perl_do_eof pPerl->Perl_do_eof +#undef Perl_do_exec +#define Perl_do_exec pPerl->Perl_do_exec +#undef Perl_do_exec3 +#define Perl_do_exec3 pPerl->Perl_do_exec3 +#undef Perl_do_execfree +#define Perl_do_execfree pPerl->Perl_do_execfree +#undef Perl_do_gv_dump +#define Perl_do_gv_dump pPerl->Perl_do_gv_dump +#undef Perl_do_gvgv_dump +#define Perl_do_gvgv_dump pPerl->Perl_do_gvgv_dump +#undef Perl_do_hv_dump +#define Perl_do_hv_dump pPerl->Perl_do_hv_dump +#undef Perl_do_ipcctl +#define Perl_do_ipcctl pPerl->Perl_do_ipcctl +#undef Perl_do_ipcget +#define Perl_do_ipcget pPerl->Perl_do_ipcget +#undef Perl_do_join +#define Perl_do_join pPerl->Perl_do_join +#undef Perl_do_kv +#define Perl_do_kv pPerl->Perl_do_kv +#undef Perl_do_magic_dump +#define Perl_do_magic_dump pPerl->Perl_do_magic_dump +#undef Perl_do_msgrcv +#define Perl_do_msgrcv pPerl->Perl_do_msgrcv +#undef Perl_do_msgsnd +#define Perl_do_msgsnd pPerl->Perl_do_msgsnd +#undef Perl_do_op_dump +#define Perl_do_op_dump pPerl->Perl_do_op_dump +#undef Perl_do_open +#define Perl_do_open pPerl->Perl_do_open +#undef Perl_do_pipe +#define Perl_do_pipe pPerl->Perl_do_pipe +#undef Perl_do_pmop_dump +#define Perl_do_pmop_dump pPerl->Perl_do_pmop_dump +#undef Perl_do_print +#define Perl_do_print pPerl->Perl_do_print +#undef Perl_do_readline +#define Perl_do_readline pPerl->Perl_do_readline +#undef Perl_do_seek +#define Perl_do_seek pPerl->Perl_do_seek +#undef Perl_do_semop +#define Perl_do_semop pPerl->Perl_do_semop +#undef Perl_do_shmio +#define Perl_do_shmio pPerl->Perl_do_shmio +#undef Perl_do_sprintf +#define Perl_do_sprintf pPerl->Perl_do_sprintf +#undef Perl_do_sv_dump +#define Perl_do_sv_dump pPerl->Perl_do_sv_dump +#undef Perl_do_sysseek +#define Perl_do_sysseek pPerl->Perl_do_sysseek +#undef Perl_do_tell +#define Perl_do_tell pPerl->Perl_do_tell +#undef Perl_do_trans +#define Perl_do_trans pPerl->Perl_do_trans +#undef Perl_do_vecset +#define Perl_do_vecset pPerl->Perl_do_vecset +#undef Perl_do_vop +#define Perl_do_vop pPerl->Perl_do_vop +#undef Perl_dofile +#define Perl_dofile pPerl->Perl_dofile +#undef Perl_dounwind +#define Perl_dounwind pPerl->Perl_dounwind +#undef Perl_dowantarray +#define Perl_dowantarray pPerl->Perl_dowantarray +#undef Perl_dump_all +#define Perl_dump_all pPerl->Perl_dump_all +#undef Perl_dump_eval +#define Perl_dump_eval pPerl->Perl_dump_eval +#undef Perl_dump_fds +#define Perl_dump_fds pPerl->Perl_dump_fds +#undef Perl_dump_form +#define Perl_dump_form pPerl->Perl_dump_form +#undef Perl_dump_indent +#define Perl_dump_indent pPerl->Perl_dump_indent +#undef Perl_dump_mstats +#define Perl_dump_mstats pPerl->Perl_dump_mstats +#undef Perl_dump_packsubs +#define Perl_dump_packsubs pPerl->Perl_dump_packsubs +#undef Perl_dump_sub +#define Perl_dump_sub pPerl->Perl_dump_sub +#undef Perl_eval_pv +#define Perl_eval_pv pPerl->Perl_eval_pv +#undef Perl_eval_sv +#define Perl_eval_sv pPerl->Perl_eval_sv +#undef Perl_fbm_compile +#define Perl_fbm_compile pPerl->Perl_fbm_compile +#undef Perl_fbm_instr +#define Perl_fbm_instr pPerl->Perl_fbm_instr +#undef Perl_filter_add +#define Perl_filter_add pPerl->Perl_filter_add +#undef Perl_filter_del +#define Perl_filter_del pPerl->Perl_filter_del +#undef Perl_filter_read +#define Perl_filter_read pPerl->Perl_filter_read +#undef Perl_find_script +#define Perl_find_script pPerl->Perl_find_script +#undef Perl_find_threadsv +#define Perl_find_threadsv pPerl->Perl_find_threadsv +#undef Perl_fold_constants +#define Perl_fold_constants pPerl->Perl_fold_constants +#undef Perl_force_list +#define Perl_force_list pPerl->Perl_force_list +#undef Perl_form +#define Perl_form pPerl->Perl_form +#undef Perl_free_tmps +#define Perl_free_tmps pPerl->Perl_free_tmps +#undef Perl_gen_constant_list +#define Perl_gen_constant_list pPerl->Perl_gen_constant_list +#undef Perl_get_av +#define Perl_get_av pPerl->Perl_get_av +#undef Perl_get_cv +#define Perl_get_cv pPerl->Perl_get_cv +#undef Perl_get_hv +#define Perl_get_hv pPerl->Perl_get_hv +#undef Perl_get_no_modify +#define Perl_get_no_modify pPerl->Perl_get_no_modify +#undef Perl_get_op_descs +#define Perl_get_op_descs pPerl->Perl_get_op_descs +#undef Perl_get_op_names +#define Perl_get_op_names pPerl->Perl_get_op_names +#undef Perl_get_opargs +#define Perl_get_opargs pPerl->Perl_get_opargs +#undef Perl_get_sv +#define Perl_get_sv pPerl->Perl_get_sv +#undef Perl_get_vtbl +#define Perl_get_vtbl pPerl->Perl_get_vtbl +#undef Perl_getenv_len +#define Perl_getenv_len pPerl->Perl_getenv_len +#undef Perl_gp_free +#define Perl_gp_free pPerl->Perl_gp_free +#undef Perl_gp_ref +#define Perl_gp_ref pPerl->Perl_gp_ref +#undef Perl_gv_AVadd +#define Perl_gv_AVadd pPerl->Perl_gv_AVadd +#undef Perl_gv_HVadd +#define Perl_gv_HVadd pPerl->Perl_gv_HVadd +#undef Perl_gv_IOadd +#define Perl_gv_IOadd pPerl->Perl_gv_IOadd +#undef Perl_gv_autoload4 +#define Perl_gv_autoload4 pPerl->Perl_gv_autoload4 +#undef Perl_gv_check +#define Perl_gv_check pPerl->Perl_gv_check +#undef Perl_gv_dump +#define Perl_gv_dump pPerl->Perl_gv_dump +#undef Perl_gv_efullname +#define Perl_gv_efullname pPerl->Perl_gv_efullname +#undef Perl_gv_efullname3 +#define Perl_gv_efullname3 pPerl->Perl_gv_efullname3 +#undef Perl_gv_fetchfile +#define Perl_gv_fetchfile pPerl->Perl_gv_fetchfile +#undef Perl_gv_fetchmeth +#define Perl_gv_fetchmeth pPerl->Perl_gv_fetchmeth +#undef Perl_gv_fetchmethod +#define Perl_gv_fetchmethod pPerl->Perl_gv_fetchmethod +#undef Perl_gv_fetchmethod_autoload +#define Perl_gv_fetchmethod_autoload pPerl->Perl_gv_fetchmethod_autoload +#undef Perl_gv_fetchpv +#define Perl_gv_fetchpv pPerl->Perl_gv_fetchpv +#undef Perl_gv_fullname +#define Perl_gv_fullname pPerl->Perl_gv_fullname +#undef Perl_gv_fullname3 +#define Perl_gv_fullname3 pPerl->Perl_gv_fullname3 +#undef Perl_gv_init +#define Perl_gv_init pPerl->Perl_gv_init +#undef Perl_gv_stashpv +#define Perl_gv_stashpv pPerl->Perl_gv_stashpv +#undef Perl_gv_stashpvn +#define Perl_gv_stashpvn pPerl->Perl_gv_stashpvn +#undef Perl_gv_stashsv +#define Perl_gv_stashsv pPerl->Perl_gv_stashsv +#undef Perl_hv_clear +#define Perl_hv_clear pPerl->Perl_hv_clear +#undef Perl_hv_delayfree_ent +#define Perl_hv_delayfree_ent pPerl->Perl_hv_delayfree_ent +#undef Perl_hv_delete +#define Perl_hv_delete pPerl->Perl_hv_delete +#undef Perl_hv_delete_ent +#define Perl_hv_delete_ent pPerl->Perl_hv_delete_ent +#undef Perl_hv_exists +#define Perl_hv_exists pPerl->Perl_hv_exists +#undef Perl_hv_exists_ent +#define Perl_hv_exists_ent pPerl->Perl_hv_exists_ent +#undef Perl_hv_fetch +#define Perl_hv_fetch pPerl->Perl_hv_fetch +#undef Perl_hv_fetch_ent +#define Perl_hv_fetch_ent pPerl->Perl_hv_fetch_ent +#undef Perl_hv_free_ent +#define Perl_hv_free_ent pPerl->Perl_hv_free_ent +#undef Perl_hv_iterinit +#define Perl_hv_iterinit pPerl->Perl_hv_iterinit +#undef Perl_hv_iterkey +#define Perl_hv_iterkey pPerl->Perl_hv_iterkey +#undef Perl_hv_iterkeysv +#define Perl_hv_iterkeysv pPerl->Perl_hv_iterkeysv +#undef Perl_hv_iternext +#define Perl_hv_iternext pPerl->Perl_hv_iternext +#undef Perl_hv_iternextsv +#define Perl_hv_iternextsv pPerl->Perl_hv_iternextsv +#undef Perl_hv_iterval +#define Perl_hv_iterval pPerl->Perl_hv_iterval +#undef Perl_hv_ksplit +#define Perl_hv_ksplit pPerl->Perl_hv_ksplit +#undef Perl_hv_magic +#define Perl_hv_magic pPerl->Perl_hv_magic +#undef Perl_hv_store +#define Perl_hv_store pPerl->Perl_hv_store +#undef Perl_hv_store_ent +#define Perl_hv_store_ent pPerl->Perl_hv_store_ent +#undef Perl_hv_undef +#define Perl_hv_undef pPerl->Perl_hv_undef +#undef Perl_ibcmp +#define Perl_ibcmp pPerl->Perl_ibcmp +#undef Perl_ibcmp_locale +#define Perl_ibcmp_locale pPerl->Perl_ibcmp_locale +#undef Perl_ingroup +#define Perl_ingroup pPerl->Perl_ingroup +#undef Perl_init_i18nl10n +#define Perl_init_i18nl10n pPerl->Perl_init_i18nl10n +#undef Perl_init_i18nl14n +#define Perl_init_i18nl14n pPerl->Perl_init_i18nl14n +#undef Perl_init_stacks +#define Perl_init_stacks pPerl->Perl_init_stacks +#undef Perl_instr +#define Perl_instr pPerl->Perl_instr +#undef Perl_intro_my +#define Perl_intro_my pPerl->Perl_intro_my +#undef Perl_invert +#define Perl_invert pPerl->Perl_invert +#undef Perl_io_close +#define Perl_io_close pPerl->Perl_io_close +#undef Perl_is_uni_alnum +#define Perl_is_uni_alnum pPerl->Perl_is_uni_alnum +#undef Perl_is_uni_alnum_lc +#define Perl_is_uni_alnum_lc pPerl->Perl_is_uni_alnum_lc +#undef Perl_is_uni_alpha +#define Perl_is_uni_alpha pPerl->Perl_is_uni_alpha +#undef Perl_is_uni_alpha_lc +#define Perl_is_uni_alpha_lc pPerl->Perl_is_uni_alpha_lc +#undef Perl_is_uni_digit +#define Perl_is_uni_digit pPerl->Perl_is_uni_digit +#undef Perl_is_uni_digit_lc +#define Perl_is_uni_digit_lc pPerl->Perl_is_uni_digit_lc +#undef Perl_is_uni_idfirst +#define Perl_is_uni_idfirst pPerl->Perl_is_uni_idfirst +#undef Perl_is_uni_idfirst_lc +#define Perl_is_uni_idfirst_lc pPerl->Perl_is_uni_idfirst_lc +#undef Perl_is_uni_lower +#define Perl_is_uni_lower pPerl->Perl_is_uni_lower +#undef Perl_is_uni_lower_lc +#define Perl_is_uni_lower_lc pPerl->Perl_is_uni_lower_lc +#undef Perl_is_uni_print +#define Perl_is_uni_print pPerl->Perl_is_uni_print +#undef Perl_is_uni_print_lc +#define Perl_is_uni_print_lc pPerl->Perl_is_uni_print_lc +#undef Perl_is_uni_space +#define Perl_is_uni_space pPerl->Perl_is_uni_space +#undef Perl_is_uni_space_lc +#define Perl_is_uni_space_lc pPerl->Perl_is_uni_space_lc +#undef Perl_is_uni_upper +#define Perl_is_uni_upper pPerl->Perl_is_uni_upper +#undef Perl_is_uni_upper_lc +#define Perl_is_uni_upper_lc pPerl->Perl_is_uni_upper_lc +#undef Perl_is_utf8_alnum +#define Perl_is_utf8_alnum pPerl->Perl_is_utf8_alnum +#undef Perl_is_utf8_alpha +#define Perl_is_utf8_alpha pPerl->Perl_is_utf8_alpha +#undef Perl_is_utf8_digit +#define Perl_is_utf8_digit pPerl->Perl_is_utf8_digit +#undef Perl_is_utf8_idfirst +#define Perl_is_utf8_idfirst pPerl->Perl_is_utf8_idfirst +#undef Perl_is_utf8_lower +#define Perl_is_utf8_lower pPerl->Perl_is_utf8_lower +#undef Perl_is_utf8_mark +#define Perl_is_utf8_mark pPerl->Perl_is_utf8_mark +#undef Perl_is_utf8_print +#define Perl_is_utf8_print pPerl->Perl_is_utf8_print +#undef Perl_is_utf8_space +#define Perl_is_utf8_space pPerl->Perl_is_utf8_space +#undef Perl_is_utf8_upper +#define Perl_is_utf8_upper pPerl->Perl_is_utf8_upper +#undef Perl_jmaybe +#define Perl_jmaybe pPerl->Perl_jmaybe +#undef Perl_keyword +#define Perl_keyword pPerl->Perl_keyword +#undef Perl_leave_scope +#define Perl_leave_scope pPerl->Perl_leave_scope +#undef Perl_lex_end +#define Perl_lex_end pPerl->Perl_lex_end +#undef Perl_lex_start +#define Perl_lex_start pPerl->Perl_lex_start +#undef Perl_linklist +#define Perl_linklist pPerl->Perl_linklist +#undef Perl_list +#define Perl_list pPerl->Perl_list +#undef Perl_listkids +#define Perl_listkids pPerl->Perl_listkids +#undef Perl_localize +#define Perl_localize pPerl->Perl_localize +#undef Perl_looks_like_number +#define Perl_looks_like_number pPerl->Perl_looks_like_number +#undef Perl_magic_clear_all_env +#define Perl_magic_clear_all_env pPerl->Perl_magic_clear_all_env +#undef Perl_magic_clearenv +#define Perl_magic_clearenv pPerl->Perl_magic_clearenv +#undef Perl_magic_clearpack +#define Perl_magic_clearpack pPerl->Perl_magic_clearpack +#undef Perl_magic_clearsig +#define Perl_magic_clearsig pPerl->Perl_magic_clearsig +#undef Perl_magic_dump +#define Perl_magic_dump pPerl->Perl_magic_dump +#undef Perl_magic_existspack +#define Perl_magic_existspack pPerl->Perl_magic_existspack +#undef Perl_magic_freeregexp +#define Perl_magic_freeregexp pPerl->Perl_magic_freeregexp +#undef Perl_magic_get +#define Perl_magic_get pPerl->Perl_magic_get +#undef Perl_magic_getarylen +#define Perl_magic_getarylen pPerl->Perl_magic_getarylen +#undef Perl_magic_getdefelem +#define Perl_magic_getdefelem pPerl->Perl_magic_getdefelem +#undef Perl_magic_getglob +#define Perl_magic_getglob pPerl->Perl_magic_getglob +#undef Perl_magic_getnkeys +#define Perl_magic_getnkeys pPerl->Perl_magic_getnkeys +#undef Perl_magic_getpack +#define Perl_magic_getpack pPerl->Perl_magic_getpack +#undef Perl_magic_getpos +#define Perl_magic_getpos pPerl->Perl_magic_getpos +#undef Perl_magic_getsig +#define Perl_magic_getsig pPerl->Perl_magic_getsig +#undef Perl_magic_getsubstr +#define Perl_magic_getsubstr pPerl->Perl_magic_getsubstr +#undef Perl_magic_gettaint +#define Perl_magic_gettaint pPerl->Perl_magic_gettaint +#undef Perl_magic_getuvar +#define Perl_magic_getuvar pPerl->Perl_magic_getuvar +#undef Perl_magic_getvec +#define Perl_magic_getvec pPerl->Perl_magic_getvec +#undef Perl_magic_killbackrefs +#define Perl_magic_killbackrefs pPerl->Perl_magic_killbackrefs +#undef Perl_magic_len +#define Perl_magic_len pPerl->Perl_magic_len +#undef Perl_magic_mutexfree +#define Perl_magic_mutexfree pPerl->Perl_magic_mutexfree +#undef Perl_magic_nextpack +#define Perl_magic_nextpack pPerl->Perl_magic_nextpack +#undef Perl_magic_regdata_cnt +#define Perl_magic_regdata_cnt pPerl->Perl_magic_regdata_cnt +#undef Perl_magic_regdatum_get +#define Perl_magic_regdatum_get pPerl->Perl_magic_regdatum_get +#undef Perl_magic_set +#define Perl_magic_set pPerl->Perl_magic_set +#undef Perl_magic_set_all_env +#define Perl_magic_set_all_env pPerl->Perl_magic_set_all_env +#undef Perl_magic_setamagic +#define Perl_magic_setamagic pPerl->Perl_magic_setamagic +#undef Perl_magic_setarylen +#define Perl_magic_setarylen pPerl->Perl_magic_setarylen +#undef Perl_magic_setbm +#define Perl_magic_setbm pPerl->Perl_magic_setbm +#undef Perl_magic_setcollxfrm +#define Perl_magic_setcollxfrm pPerl->Perl_magic_setcollxfrm +#undef Perl_magic_setdbline +#define Perl_magic_setdbline pPerl->Perl_magic_setdbline +#undef Perl_magic_setdefelem +#define Perl_magic_setdefelem pPerl->Perl_magic_setdefelem +#undef Perl_magic_setenv +#define Perl_magic_setenv pPerl->Perl_magic_setenv +#undef Perl_magic_setfm +#define Perl_magic_setfm pPerl->Perl_magic_setfm +#undef Perl_magic_setglob +#define Perl_magic_setglob pPerl->Perl_magic_setglob +#undef Perl_magic_setisa +#define Perl_magic_setisa pPerl->Perl_magic_setisa +#undef Perl_magic_setmglob +#define Perl_magic_setmglob pPerl->Perl_magic_setmglob +#undef Perl_magic_setnkeys +#define Perl_magic_setnkeys pPerl->Perl_magic_setnkeys +#undef Perl_magic_setpack +#define Perl_magic_setpack pPerl->Perl_magic_setpack +#undef Perl_magic_setpos +#define Perl_magic_setpos pPerl->Perl_magic_setpos +#undef Perl_magic_setsig +#define Perl_magic_setsig pPerl->Perl_magic_setsig +#undef Perl_magic_setsubstr +#define Perl_magic_setsubstr pPerl->Perl_magic_setsubstr +#undef Perl_magic_settaint +#define Perl_magic_settaint pPerl->Perl_magic_settaint +#undef Perl_magic_setuvar +#define Perl_magic_setuvar pPerl->Perl_magic_setuvar +#undef Perl_magic_setvec +#define Perl_magic_setvec pPerl->Perl_magic_setvec +#undef Perl_magic_sizepack +#define Perl_magic_sizepack pPerl->Perl_magic_sizepack +#undef Perl_magic_wipepack +#define Perl_magic_wipepack pPerl->Perl_magic_wipepack +#undef Perl_magicname +#define Perl_magicname pPerl->Perl_magicname +#undef Perl_malloc +#define Perl_malloc pPerl->Perl_malloc +#undef Perl_malloced_size +#define Perl_malloced_size pPerl->Perl_malloced_size +#undef Perl_markstack_grow +#define Perl_markstack_grow pPerl->Perl_markstack_grow +#undef Perl_mem_collxfrm +#define Perl_mem_collxfrm pPerl->Perl_mem_collxfrm +#undef Perl_mess +#define Perl_mess pPerl->Perl_mess +#undef Perl_mfree +#define Perl_mfree pPerl->Perl_mfree +#undef Perl_mg_clear +#define Perl_mg_clear pPerl->Perl_mg_clear +#undef Perl_mg_copy +#define Perl_mg_copy pPerl->Perl_mg_copy +#undef Perl_mg_find +#define Perl_mg_find pPerl->Perl_mg_find +#undef Perl_mg_free +#define Perl_mg_free pPerl->Perl_mg_free +#undef Perl_mg_get +#define Perl_mg_get pPerl->Perl_mg_get +#undef Perl_mg_length +#define Perl_mg_length pPerl->Perl_mg_length +#undef Perl_mg_magical +#define Perl_mg_magical pPerl->Perl_mg_magical +#undef Perl_mg_set +#define Perl_mg_set pPerl->Perl_mg_set +#undef Perl_mg_size +#define Perl_mg_size pPerl->Perl_mg_size +#undef Perl_mod +#define Perl_mod pPerl->Perl_mod +#undef Perl_moreswitches +#define Perl_moreswitches pPerl->Perl_moreswitches +#undef Perl_my +#define Perl_my pPerl->Perl_my +#undef Perl_my_bcopy +#define Perl_my_bcopy pPerl->Perl_my_bcopy +#undef Perl_my_bzero +#define Perl_my_bzero pPerl->Perl_my_bzero +#undef Perl_my_chsize +#define Perl_my_chsize pPerl->Perl_my_chsize +#undef Perl_my_exit +#define Perl_my_exit pPerl->Perl_my_exit +#undef Perl_my_failure_exit +#define Perl_my_failure_exit pPerl->Perl_my_failure_exit +#undef Perl_my_fflush_all +#define Perl_my_fflush_all pPerl->Perl_my_fflush_all +#undef Perl_my_htonl +#define Perl_my_htonl pPerl->Perl_my_htonl +#undef Perl_my_lstat +#define Perl_my_lstat pPerl->Perl_my_lstat +#undef Perl_my_memcmp +#define Perl_my_memcmp pPerl->Perl_my_memcmp +#undef Perl_my_memset +#define Perl_my_memset pPerl->Perl_my_memset +#undef Perl_my_ntohl +#define Perl_my_ntohl pPerl->Perl_my_ntohl +#undef Perl_my_pclose +#define Perl_my_pclose pPerl->Perl_my_pclose +#undef Perl_my_popen +#define Perl_my_popen pPerl->Perl_my_popen +#undef Perl_my_setenv +#define Perl_my_setenv pPerl->Perl_my_setenv +#undef Perl_my_stat +#define Perl_my_stat pPerl->Perl_my_stat +#undef Perl_my_swap +#define Perl_my_swap pPerl->Perl_my_swap +#undef Perl_my_unexec +#define Perl_my_unexec pPerl->Perl_my_unexec +#undef Perl_newANONHASH +#define Perl_newANONHASH pPerl->Perl_newANONHASH +#undef Perl_newANONLIST +#define Perl_newANONLIST pPerl->Perl_newANONLIST +#undef Perl_newANONSUB +#define Perl_newANONSUB pPerl->Perl_newANONSUB +#undef Perl_newASSIGNOP +#define Perl_newASSIGNOP pPerl->Perl_newASSIGNOP +#undef Perl_newAV +#define Perl_newAV pPerl->Perl_newAV +#undef Perl_newAVREF +#define Perl_newAVREF pPerl->Perl_newAVREF +#undef Perl_newBINOP +#define Perl_newBINOP pPerl->Perl_newBINOP +#undef Perl_newCONDOP +#define Perl_newCONDOP pPerl->Perl_newCONDOP +#undef Perl_newCONSTSUB +#define Perl_newCONSTSUB pPerl->Perl_newCONSTSUB +#undef Perl_newCVREF +#define Perl_newCVREF pPerl->Perl_newCVREF +#undef Perl_newFORM +#define Perl_newFORM pPerl->Perl_newFORM +#undef Perl_newFOROP +#define Perl_newFOROP pPerl->Perl_newFOROP +#undef Perl_newGVOP +#define Perl_newGVOP pPerl->Perl_newGVOP +#undef Perl_newGVREF +#define Perl_newGVREF pPerl->Perl_newGVREF +#undef Perl_newGVgen +#define Perl_newGVgen pPerl->Perl_newGVgen +#undef Perl_newHV +#define Perl_newHV pPerl->Perl_newHV +#undef Perl_newHVREF +#define Perl_newHVREF pPerl->Perl_newHVREF +#undef Perl_newHVhv +#define Perl_newHVhv pPerl->Perl_newHVhv +#undef Perl_newIO +#define Perl_newIO pPerl->Perl_newIO +#undef Perl_newLISTOP +#define Perl_newLISTOP pPerl->Perl_newLISTOP +#undef Perl_newLOGOP +#define Perl_newLOGOP pPerl->Perl_newLOGOP +#undef Perl_newLOOPEX +#define Perl_newLOOPEX pPerl->Perl_newLOOPEX +#undef Perl_newLOOPOP +#define Perl_newLOOPOP pPerl->Perl_newLOOPOP +#undef Perl_newNULLLIST +#define Perl_newNULLLIST pPerl->Perl_newNULLLIST +#undef Perl_newOP +#define Perl_newOP pPerl->Perl_newOP +#undef Perl_newPMOP +#define Perl_newPMOP pPerl->Perl_newPMOP +#undef Perl_newPROG +#define Perl_newPROG pPerl->Perl_newPROG +#undef Perl_newPVOP +#define Perl_newPVOP pPerl->Perl_newPVOP +#undef Perl_newRANGE +#define Perl_newRANGE pPerl->Perl_newRANGE +#undef Perl_newRV +#define Perl_newRV pPerl->Perl_newRV +#undef Perl_newRV_noinc +#define Perl_newRV_noinc pPerl->Perl_newRV_noinc +#undef Perl_newSLICEOP +#define Perl_newSLICEOP pPerl->Perl_newSLICEOP +#undef Perl_newSTATEOP +#define Perl_newSTATEOP pPerl->Perl_newSTATEOP +#undef Perl_newSUB +#define Perl_newSUB pPerl->Perl_newSUB +#undef Perl_newSV +#define Perl_newSV pPerl->Perl_newSV +#undef Perl_newSVOP +#define Perl_newSVOP pPerl->Perl_newSVOP +#undef Perl_newSVREF +#define Perl_newSVREF pPerl->Perl_newSVREF +#undef Perl_newSViv +#define Perl_newSViv pPerl->Perl_newSViv +#undef Perl_newSVnv +#define Perl_newSVnv pPerl->Perl_newSVnv +#undef Perl_newSVpv +#define Perl_newSVpv pPerl->Perl_newSVpv +#undef Perl_newSVpvf +#define Perl_newSVpvf pPerl->Perl_newSVpvf +#undef Perl_newSVpvn +#define Perl_newSVpvn pPerl->Perl_newSVpvn +#undef Perl_newSVrv +#define Perl_newSVrv pPerl->Perl_newSVrv +#undef Perl_newSVsv +#define Perl_newSVsv pPerl->Perl_newSVsv +#undef Perl_newUNOP +#define Perl_newUNOP pPerl->Perl_newUNOP +#undef Perl_newWHILEOP +#define Perl_newWHILEOP pPerl->Perl_newWHILEOP +#undef Perl_newXS +#define Perl_newXS pPerl->Perl_newXS +#undef Perl_new_collate +#define Perl_new_collate pPerl->Perl_new_collate +#undef Perl_new_ctype +#define Perl_new_ctype pPerl->Perl_new_ctype +#undef Perl_new_numeric +#define Perl_new_numeric pPerl->Perl_new_numeric +#undef Perl_new_stackinfo +#define Perl_new_stackinfo pPerl->Perl_new_stackinfo +#undef Perl_new_struct_thread +#define Perl_new_struct_thread pPerl->Perl_new_struct_thread +#undef Perl_nextargv +#define Perl_nextargv pPerl->Perl_nextargv +#undef Perl_ninstr +#define Perl_ninstr pPerl->Perl_ninstr +#undef Perl_oopsAV +#define Perl_oopsAV pPerl->Perl_oopsAV +#undef Perl_oopsCV +#define Perl_oopsCV pPerl->Perl_oopsCV +#undef Perl_oopsHV +#define Perl_oopsHV pPerl->Perl_oopsHV +#undef Perl_op_const_sv +#define Perl_op_const_sv pPerl->Perl_op_const_sv +#undef Perl_op_dump +#define Perl_op_dump pPerl->Perl_op_dump +#undef Perl_op_free +#define Perl_op_free pPerl->Perl_op_free +#undef Perl_package +#define Perl_package pPerl->Perl_package +#undef Perl_pad_alloc +#define Perl_pad_alloc pPerl->Perl_pad_alloc +#undef Perl_pad_allocmy +#define Perl_pad_allocmy pPerl->Perl_pad_allocmy +#undef Perl_pad_findmy +#define Perl_pad_findmy pPerl->Perl_pad_findmy +#undef Perl_pad_free +#define Perl_pad_free pPerl->Perl_pad_free +#undef Perl_pad_leavemy +#define Perl_pad_leavemy pPerl->Perl_pad_leavemy +#undef Perl_pad_reset +#define Perl_pad_reset pPerl->Perl_pad_reset +#undef Perl_pad_sv +#define Perl_pad_sv pPerl->Perl_pad_sv +#undef Perl_pad_swipe +#define Perl_pad_swipe pPerl->Perl_pad_swipe +#undef Perl_peep +#define Perl_peep pPerl->Perl_peep +#undef Perl_pidgone +#define Perl_pidgone pPerl->Perl_pidgone +#undef Perl_pmflag +#define Perl_pmflag pPerl->Perl_pmflag +#undef Perl_pmop_dump +#define Perl_pmop_dump pPerl->Perl_pmop_dump +#undef Perl_pmruntime +#define Perl_pmruntime pPerl->Perl_pmruntime +#undef Perl_pmtrans +#define Perl_pmtrans pPerl->Perl_pmtrans +#undef Perl_pop_return +#define Perl_pop_return pPerl->Perl_pop_return +#undef Perl_pop_scope +#define Perl_pop_scope pPerl->Perl_pop_scope +#undef Perl_pp_aassign +#define Perl_pp_aassign pPerl->Perl_pp_aassign +#undef Perl_pp_abs +#define Perl_pp_abs pPerl->Perl_pp_abs +#undef Perl_pp_accept +#define Perl_pp_accept pPerl->Perl_pp_accept +#undef Perl_pp_add +#define Perl_pp_add pPerl->Perl_pp_add +#undef Perl_pp_aelem +#define Perl_pp_aelem pPerl->Perl_pp_aelem +#undef Perl_pp_aelemfast +#define Perl_pp_aelemfast pPerl->Perl_pp_aelemfast +#undef Perl_pp_alarm +#define Perl_pp_alarm pPerl->Perl_pp_alarm +#undef Perl_pp_and +#define Perl_pp_and pPerl->Perl_pp_and +#undef Perl_pp_andassign +#define Perl_pp_andassign pPerl->Perl_pp_andassign +#undef Perl_pp_anoncode +#define Perl_pp_anoncode pPerl->Perl_pp_anoncode +#undef Perl_pp_anonhash +#define Perl_pp_anonhash pPerl->Perl_pp_anonhash +#undef Perl_pp_anonlist +#define Perl_pp_anonlist pPerl->Perl_pp_anonlist +#undef Perl_pp_aslice +#define Perl_pp_aslice pPerl->Perl_pp_aslice +#undef Perl_pp_atan2 +#define Perl_pp_atan2 pPerl->Perl_pp_atan2 +#undef Perl_pp_av2arylen +#define Perl_pp_av2arylen pPerl->Perl_pp_av2arylen +#undef Perl_pp_backtick +#define Perl_pp_backtick pPerl->Perl_pp_backtick +#undef Perl_pp_bind +#define Perl_pp_bind pPerl->Perl_pp_bind +#undef Perl_pp_binmode +#define Perl_pp_binmode pPerl->Perl_pp_binmode +#undef Perl_pp_bit_and +#define Perl_pp_bit_and pPerl->Perl_pp_bit_and +#undef Perl_pp_bit_or +#define Perl_pp_bit_or pPerl->Perl_pp_bit_or +#undef Perl_pp_bit_xor +#define Perl_pp_bit_xor pPerl->Perl_pp_bit_xor +#undef Perl_pp_bless +#define Perl_pp_bless pPerl->Perl_pp_bless +#undef Perl_pp_caller +#define Perl_pp_caller pPerl->Perl_pp_caller +#undef Perl_pp_chdir +#define Perl_pp_chdir pPerl->Perl_pp_chdir +#undef Perl_pp_chmod +#define Perl_pp_chmod pPerl->Perl_pp_chmod +#undef Perl_pp_chomp +#define Perl_pp_chomp pPerl->Perl_pp_chomp +#undef Perl_pp_chop +#define Perl_pp_chop pPerl->Perl_pp_chop +#undef Perl_pp_chown +#define Perl_pp_chown pPerl->Perl_pp_chown +#undef Perl_pp_chr +#define Perl_pp_chr pPerl->Perl_pp_chr +#undef Perl_pp_chroot +#define Perl_pp_chroot pPerl->Perl_pp_chroot +#undef Perl_pp_close +#define Perl_pp_close pPerl->Perl_pp_close +#undef Perl_pp_closedir +#define Perl_pp_closedir pPerl->Perl_pp_closedir +#undef Perl_pp_complement +#define Perl_pp_complement pPerl->Perl_pp_complement +#undef Perl_pp_concat +#define Perl_pp_concat pPerl->Perl_pp_concat +#undef Perl_pp_cond_expr +#define Perl_pp_cond_expr pPerl->Perl_pp_cond_expr +#undef Perl_pp_connect +#define Perl_pp_connect pPerl->Perl_pp_connect +#undef Perl_pp_const +#define Perl_pp_const pPerl->Perl_pp_const +#undef Perl_pp_cos +#define Perl_pp_cos pPerl->Perl_pp_cos +#undef Perl_pp_crypt +#define Perl_pp_crypt pPerl->Perl_pp_crypt +#undef Perl_pp_dbmclose +#define Perl_pp_dbmclose pPerl->Perl_pp_dbmclose +#undef Perl_pp_dbmopen +#define Perl_pp_dbmopen pPerl->Perl_pp_dbmopen +#undef Perl_pp_dbstate +#define Perl_pp_dbstate pPerl->Perl_pp_dbstate +#undef Perl_pp_defined +#define Perl_pp_defined pPerl->Perl_pp_defined +#undef Perl_pp_delete +#define Perl_pp_delete pPerl->Perl_pp_delete +#undef Perl_pp_die +#define Perl_pp_die pPerl->Perl_pp_die +#undef Perl_pp_divide +#define Perl_pp_divide pPerl->Perl_pp_divide +#undef Perl_pp_dofile +#define Perl_pp_dofile pPerl->Perl_pp_dofile +#undef Perl_pp_dump +#define Perl_pp_dump pPerl->Perl_pp_dump +#undef Perl_pp_each +#define Perl_pp_each pPerl->Perl_pp_each +#undef Perl_pp_egrent +#define Perl_pp_egrent pPerl->Perl_pp_egrent +#undef Perl_pp_ehostent +#define Perl_pp_ehostent pPerl->Perl_pp_ehostent +#undef Perl_pp_enetent +#define Perl_pp_enetent pPerl->Perl_pp_enetent +#undef Perl_pp_enter +#define Perl_pp_enter pPerl->Perl_pp_enter +#undef Perl_pp_entereval +#define Perl_pp_entereval pPerl->Perl_pp_entereval +#undef Perl_pp_enteriter +#define Perl_pp_enteriter pPerl->Perl_pp_enteriter +#undef Perl_pp_enterloop +#define Perl_pp_enterloop pPerl->Perl_pp_enterloop +#undef Perl_pp_entersub +#define Perl_pp_entersub pPerl->Perl_pp_entersub +#undef Perl_pp_entertry +#define Perl_pp_entertry pPerl->Perl_pp_entertry +#undef Perl_pp_enterwrite +#define Perl_pp_enterwrite pPerl->Perl_pp_enterwrite +#undef Perl_pp_eof +#define Perl_pp_eof pPerl->Perl_pp_eof +#undef Perl_pp_eprotoent +#define Perl_pp_eprotoent pPerl->Perl_pp_eprotoent +#undef Perl_pp_epwent +#define Perl_pp_epwent pPerl->Perl_pp_epwent +#undef Perl_pp_eq +#define Perl_pp_eq pPerl->Perl_pp_eq +#undef Perl_pp_eservent +#define Perl_pp_eservent pPerl->Perl_pp_eservent +#undef Perl_pp_exec +#define Perl_pp_exec pPerl->Perl_pp_exec +#undef Perl_pp_exists +#define Perl_pp_exists pPerl->Perl_pp_exists +#undef Perl_pp_exit +#define Perl_pp_exit pPerl->Perl_pp_exit +#undef Perl_pp_exp +#define Perl_pp_exp pPerl->Perl_pp_exp +#undef Perl_pp_fcntl +#define Perl_pp_fcntl pPerl->Perl_pp_fcntl +#undef Perl_pp_fileno +#define Perl_pp_fileno pPerl->Perl_pp_fileno +#undef Perl_pp_flip +#define Perl_pp_flip pPerl->Perl_pp_flip +#undef Perl_pp_flock +#define Perl_pp_flock pPerl->Perl_pp_flock +#undef Perl_pp_flop +#define Perl_pp_flop pPerl->Perl_pp_flop +#undef Perl_pp_fork +#define Perl_pp_fork pPerl->Perl_pp_fork +#undef Perl_pp_formline +#define Perl_pp_formline pPerl->Perl_pp_formline +#undef Perl_pp_ftatime +#define Perl_pp_ftatime pPerl->Perl_pp_ftatime +#undef Perl_pp_ftbinary +#define Perl_pp_ftbinary pPerl->Perl_pp_ftbinary +#undef Perl_pp_ftblk +#define Perl_pp_ftblk pPerl->Perl_pp_ftblk +#undef Perl_pp_ftchr +#define Perl_pp_ftchr pPerl->Perl_pp_ftchr +#undef Perl_pp_ftctime +#define Perl_pp_ftctime pPerl->Perl_pp_ftctime +#undef Perl_pp_ftdir +#define Perl_pp_ftdir pPerl->Perl_pp_ftdir +#undef Perl_pp_fteexec +#define Perl_pp_fteexec pPerl->Perl_pp_fteexec +#undef Perl_pp_fteowned +#define Perl_pp_fteowned pPerl->Perl_pp_fteowned +#undef Perl_pp_fteread +#define Perl_pp_fteread pPerl->Perl_pp_fteread +#undef Perl_pp_ftewrite +#define Perl_pp_ftewrite pPerl->Perl_pp_ftewrite +#undef Perl_pp_ftfile +#define Perl_pp_ftfile pPerl->Perl_pp_ftfile +#undef Perl_pp_ftis +#define Perl_pp_ftis pPerl->Perl_pp_ftis +#undef Perl_pp_ftlink +#define Perl_pp_ftlink pPerl->Perl_pp_ftlink +#undef Perl_pp_ftmtime +#define Perl_pp_ftmtime pPerl->Perl_pp_ftmtime +#undef Perl_pp_ftpipe +#define Perl_pp_ftpipe pPerl->Perl_pp_ftpipe +#undef Perl_pp_ftrexec +#define Perl_pp_ftrexec pPerl->Perl_pp_ftrexec +#undef Perl_pp_ftrowned +#define Perl_pp_ftrowned pPerl->Perl_pp_ftrowned +#undef Perl_pp_ftrread +#define Perl_pp_ftrread pPerl->Perl_pp_ftrread +#undef Perl_pp_ftrwrite +#define Perl_pp_ftrwrite pPerl->Perl_pp_ftrwrite +#undef Perl_pp_ftsgid +#define Perl_pp_ftsgid pPerl->Perl_pp_ftsgid +#undef Perl_pp_ftsize +#define Perl_pp_ftsize pPerl->Perl_pp_ftsize +#undef Perl_pp_ftsock +#define Perl_pp_ftsock pPerl->Perl_pp_ftsock +#undef Perl_pp_ftsuid +#define Perl_pp_ftsuid pPerl->Perl_pp_ftsuid +#undef Perl_pp_ftsvtx +#define Perl_pp_ftsvtx pPerl->Perl_pp_ftsvtx +#undef Perl_pp_fttext +#define Perl_pp_fttext pPerl->Perl_pp_fttext +#undef Perl_pp_fttty +#define Perl_pp_fttty pPerl->Perl_pp_fttty +#undef Perl_pp_ftzero +#define Perl_pp_ftzero pPerl->Perl_pp_ftzero +#undef Perl_pp_ge +#define Perl_pp_ge pPerl->Perl_pp_ge +#undef Perl_pp_gelem +#define Perl_pp_gelem pPerl->Perl_pp_gelem +#undef Perl_pp_getc +#define Perl_pp_getc pPerl->Perl_pp_getc +#undef Perl_pp_getlogin +#define Perl_pp_getlogin pPerl->Perl_pp_getlogin +#undef Perl_pp_getpeername +#define Perl_pp_getpeername pPerl->Perl_pp_getpeername +#undef Perl_pp_getpgrp +#define Perl_pp_getpgrp pPerl->Perl_pp_getpgrp +#undef Perl_pp_getppid +#define Perl_pp_getppid pPerl->Perl_pp_getppid +#undef Perl_pp_getpriority +#define Perl_pp_getpriority pPerl->Perl_pp_getpriority +#undef Perl_pp_getsockname +#define Perl_pp_getsockname pPerl->Perl_pp_getsockname +#undef Perl_pp_ggrent +#define Perl_pp_ggrent pPerl->Perl_pp_ggrent +#undef Perl_pp_ggrgid +#define Perl_pp_ggrgid pPerl->Perl_pp_ggrgid +#undef Perl_pp_ggrnam +#define Perl_pp_ggrnam pPerl->Perl_pp_ggrnam +#undef Perl_pp_ghbyaddr +#define Perl_pp_ghbyaddr pPerl->Perl_pp_ghbyaddr +#undef Perl_pp_ghbyname +#define Perl_pp_ghbyname pPerl->Perl_pp_ghbyname +#undef Perl_pp_ghostent +#define Perl_pp_ghostent pPerl->Perl_pp_ghostent +#undef Perl_pp_glob +#define Perl_pp_glob pPerl->Perl_pp_glob +#undef Perl_pp_gmtime +#define Perl_pp_gmtime pPerl->Perl_pp_gmtime +#undef Perl_pp_gnbyaddr +#define Perl_pp_gnbyaddr pPerl->Perl_pp_gnbyaddr +#undef Perl_pp_gnbyname +#define Perl_pp_gnbyname pPerl->Perl_pp_gnbyname +#undef Perl_pp_gnetent +#define Perl_pp_gnetent pPerl->Perl_pp_gnetent +#undef Perl_pp_goto +#define Perl_pp_goto pPerl->Perl_pp_goto +#undef Perl_pp_gpbyname +#define Perl_pp_gpbyname pPerl->Perl_pp_gpbyname +#undef Perl_pp_gpbynumber +#define Perl_pp_gpbynumber pPerl->Perl_pp_gpbynumber +#undef Perl_pp_gprotoent +#define Perl_pp_gprotoent pPerl->Perl_pp_gprotoent +#undef Perl_pp_gpwent +#define Perl_pp_gpwent pPerl->Perl_pp_gpwent +#undef Perl_pp_gpwnam +#define Perl_pp_gpwnam pPerl->Perl_pp_gpwnam +#undef Perl_pp_gpwuid +#define Perl_pp_gpwuid pPerl->Perl_pp_gpwuid +#undef Perl_pp_grepstart +#define Perl_pp_grepstart pPerl->Perl_pp_grepstart +#undef Perl_pp_grepwhile +#define Perl_pp_grepwhile pPerl->Perl_pp_grepwhile +#undef Perl_pp_gsbyname +#define Perl_pp_gsbyname pPerl->Perl_pp_gsbyname +#undef Perl_pp_gsbyport +#define Perl_pp_gsbyport pPerl->Perl_pp_gsbyport +#undef Perl_pp_gservent +#define Perl_pp_gservent pPerl->Perl_pp_gservent +#undef Perl_pp_gsockopt +#define Perl_pp_gsockopt pPerl->Perl_pp_gsockopt +#undef Perl_pp_gt +#define Perl_pp_gt pPerl->Perl_pp_gt +#undef Perl_pp_gv +#define Perl_pp_gv pPerl->Perl_pp_gv +#undef Perl_pp_gvsv +#define Perl_pp_gvsv pPerl->Perl_pp_gvsv +#undef Perl_pp_helem +#define Perl_pp_helem pPerl->Perl_pp_helem +#undef Perl_pp_hex +#define Perl_pp_hex pPerl->Perl_pp_hex +#undef Perl_pp_hslice +#define Perl_pp_hslice pPerl->Perl_pp_hslice +#undef Perl_pp_i_add +#define Perl_pp_i_add pPerl->Perl_pp_i_add +#undef Perl_pp_i_divide +#define Perl_pp_i_divide pPerl->Perl_pp_i_divide +#undef Perl_pp_i_eq +#define Perl_pp_i_eq pPerl->Perl_pp_i_eq +#undef Perl_pp_i_ge +#define Perl_pp_i_ge pPerl->Perl_pp_i_ge +#undef Perl_pp_i_gt +#define Perl_pp_i_gt pPerl->Perl_pp_i_gt +#undef Perl_pp_i_le +#define Perl_pp_i_le pPerl->Perl_pp_i_le +#undef Perl_pp_i_lt +#define Perl_pp_i_lt pPerl->Perl_pp_i_lt +#undef Perl_pp_i_modulo +#define Perl_pp_i_modulo pPerl->Perl_pp_i_modulo +#undef Perl_pp_i_multiply +#define Perl_pp_i_multiply pPerl->Perl_pp_i_multiply +#undef Perl_pp_i_ncmp +#define Perl_pp_i_ncmp pPerl->Perl_pp_i_ncmp +#undef Perl_pp_i_ne +#define Perl_pp_i_ne pPerl->Perl_pp_i_ne +#undef Perl_pp_i_negate +#define Perl_pp_i_negate pPerl->Perl_pp_i_negate +#undef Perl_pp_i_subtract +#define Perl_pp_i_subtract pPerl->Perl_pp_i_subtract +#undef Perl_pp_index +#define Perl_pp_index pPerl->Perl_pp_index +#undef Perl_pp_int +#define Perl_pp_int pPerl->Perl_pp_int +#undef Perl_pp_ioctl +#define Perl_pp_ioctl pPerl->Perl_pp_ioctl +#undef Perl_pp_iter +#define Perl_pp_iter pPerl->Perl_pp_iter +#undef Perl_pp_join +#define Perl_pp_join pPerl->Perl_pp_join +#undef Perl_pp_keys +#define Perl_pp_keys pPerl->Perl_pp_keys +#undef Perl_pp_kill +#define Perl_pp_kill pPerl->Perl_pp_kill +#undef Perl_pp_last +#define Perl_pp_last pPerl->Perl_pp_last +#undef Perl_pp_lc +#define Perl_pp_lc pPerl->Perl_pp_lc +#undef Perl_pp_lcfirst +#define Perl_pp_lcfirst pPerl->Perl_pp_lcfirst +#undef Perl_pp_le +#define Perl_pp_le pPerl->Perl_pp_le +#undef Perl_pp_leave +#define Perl_pp_leave pPerl->Perl_pp_leave +#undef Perl_pp_leaveeval +#define Perl_pp_leaveeval pPerl->Perl_pp_leaveeval +#undef Perl_pp_leaveloop +#define Perl_pp_leaveloop pPerl->Perl_pp_leaveloop +#undef Perl_pp_leavesub +#define Perl_pp_leavesub pPerl->Perl_pp_leavesub +#undef Perl_pp_leavetry +#define Perl_pp_leavetry pPerl->Perl_pp_leavetry +#undef Perl_pp_leavewrite +#define Perl_pp_leavewrite pPerl->Perl_pp_leavewrite +#undef Perl_pp_left_shift +#define Perl_pp_left_shift pPerl->Perl_pp_left_shift +#undef Perl_pp_length +#define Perl_pp_length pPerl->Perl_pp_length +#undef Perl_pp_lineseq +#define Perl_pp_lineseq pPerl->Perl_pp_lineseq +#undef Perl_pp_link +#define Perl_pp_link pPerl->Perl_pp_link +#undef Perl_pp_list +#define Perl_pp_list pPerl->Perl_pp_list +#undef Perl_pp_listen +#define Perl_pp_listen pPerl->Perl_pp_listen +#undef Perl_pp_localtime +#define Perl_pp_localtime pPerl->Perl_pp_localtime +#undef Perl_pp_lock +#define Perl_pp_lock pPerl->Perl_pp_lock +#undef Perl_pp_log +#define Perl_pp_log pPerl->Perl_pp_log +#undef Perl_pp_lslice +#define Perl_pp_lslice pPerl->Perl_pp_lslice +#undef Perl_pp_lstat +#define Perl_pp_lstat pPerl->Perl_pp_lstat +#undef Perl_pp_lt +#define Perl_pp_lt pPerl->Perl_pp_lt +#undef Perl_pp_mapstart +#define Perl_pp_mapstart pPerl->Perl_pp_mapstart +#undef Perl_pp_mapwhile +#define Perl_pp_mapwhile pPerl->Perl_pp_mapwhile +#undef Perl_pp_match +#define Perl_pp_match pPerl->Perl_pp_match +#undef Perl_pp_method +#define Perl_pp_method pPerl->Perl_pp_method +#undef Perl_pp_mkdir +#define Perl_pp_mkdir pPerl->Perl_pp_mkdir +#undef Perl_pp_modulo +#define Perl_pp_modulo pPerl->Perl_pp_modulo +#undef Perl_pp_msgctl +#define Perl_pp_msgctl pPerl->Perl_pp_msgctl +#undef Perl_pp_msgget +#define Perl_pp_msgget pPerl->Perl_pp_msgget +#undef Perl_pp_msgrcv +#define Perl_pp_msgrcv pPerl->Perl_pp_msgrcv +#undef Perl_pp_msgsnd +#define Perl_pp_msgsnd pPerl->Perl_pp_msgsnd +#undef Perl_pp_multiply +#define Perl_pp_multiply pPerl->Perl_pp_multiply +#undef Perl_pp_ncmp +#define Perl_pp_ncmp pPerl->Perl_pp_ncmp +#undef Perl_pp_ne +#define Perl_pp_ne pPerl->Perl_pp_ne +#undef Perl_pp_negate +#define Perl_pp_negate pPerl->Perl_pp_negate +#undef Perl_pp_next +#define Perl_pp_next pPerl->Perl_pp_next +#undef Perl_pp_nextstate +#define Perl_pp_nextstate pPerl->Perl_pp_nextstate +#undef Perl_pp_not +#define Perl_pp_not pPerl->Perl_pp_not +#undef Perl_pp_null +#define Perl_pp_null pPerl->Perl_pp_null +#undef Perl_pp_oct +#define Perl_pp_oct pPerl->Perl_pp_oct +#undef Perl_pp_open +#define Perl_pp_open pPerl->Perl_pp_open +#undef Perl_pp_open_dir +#define Perl_pp_open_dir pPerl->Perl_pp_open_dir +#undef Perl_pp_or +#define Perl_pp_or pPerl->Perl_pp_or +#undef Perl_pp_orassign +#define Perl_pp_orassign pPerl->Perl_pp_orassign +#undef Perl_pp_ord +#define Perl_pp_ord pPerl->Perl_pp_ord +#undef Perl_pp_pack +#define Perl_pp_pack pPerl->Perl_pp_pack +#undef Perl_pp_padany +#define Perl_pp_padany pPerl->Perl_pp_padany +#undef Perl_pp_padav +#define Perl_pp_padav pPerl->Perl_pp_padav +#undef Perl_pp_padhv +#define Perl_pp_padhv pPerl->Perl_pp_padhv +#undef Perl_pp_padsv +#define Perl_pp_padsv pPerl->Perl_pp_padsv +#undef Perl_pp_pipe_op +#define Perl_pp_pipe_op pPerl->Perl_pp_pipe_op +#undef Perl_pp_pop +#define Perl_pp_pop pPerl->Perl_pp_pop +#undef Perl_pp_pos +#define Perl_pp_pos pPerl->Perl_pp_pos +#undef Perl_pp_postdec +#define Perl_pp_postdec pPerl->Perl_pp_postdec +#undef Perl_pp_postinc +#define Perl_pp_postinc pPerl->Perl_pp_postinc +#undef Perl_pp_pow +#define Perl_pp_pow pPerl->Perl_pp_pow +#undef Perl_pp_predec +#define Perl_pp_predec pPerl->Perl_pp_predec +#undef Perl_pp_preinc +#define Perl_pp_preinc pPerl->Perl_pp_preinc +#undef Perl_pp_print +#define Perl_pp_print pPerl->Perl_pp_print +#undef Perl_pp_prototype +#define Perl_pp_prototype pPerl->Perl_pp_prototype +#undef Perl_pp_prtf +#define Perl_pp_prtf pPerl->Perl_pp_prtf +#undef Perl_pp_push +#define Perl_pp_push pPerl->Perl_pp_push +#undef Perl_pp_pushmark +#define Perl_pp_pushmark pPerl->Perl_pp_pushmark +#undef Perl_pp_pushre +#define Perl_pp_pushre pPerl->Perl_pp_pushre +#undef Perl_pp_qr +#define Perl_pp_qr pPerl->Perl_pp_qr +#undef Perl_pp_quotemeta +#define Perl_pp_quotemeta pPerl->Perl_pp_quotemeta +#undef Perl_pp_rand +#define Perl_pp_rand pPerl->Perl_pp_rand +#undef Perl_pp_range +#define Perl_pp_range pPerl->Perl_pp_range +#undef Perl_pp_rcatline +#define Perl_pp_rcatline pPerl->Perl_pp_rcatline +#undef Perl_pp_read +#define Perl_pp_read pPerl->Perl_pp_read +#undef Perl_pp_readdir +#define Perl_pp_readdir pPerl->Perl_pp_readdir +#undef Perl_pp_readline +#define Perl_pp_readline pPerl->Perl_pp_readline +#undef Perl_pp_readlink +#define Perl_pp_readlink pPerl->Perl_pp_readlink +#undef Perl_pp_recv +#define Perl_pp_recv pPerl->Perl_pp_recv +#undef Perl_pp_redo +#define Perl_pp_redo pPerl->Perl_pp_redo +#undef Perl_pp_ref +#define Perl_pp_ref pPerl->Perl_pp_ref +#undef Perl_pp_refgen +#define Perl_pp_refgen pPerl->Perl_pp_refgen +#undef Perl_pp_regcmaybe +#define Perl_pp_regcmaybe pPerl->Perl_pp_regcmaybe +#undef Perl_pp_regcomp +#define Perl_pp_regcomp pPerl->Perl_pp_regcomp +#undef Perl_pp_regcreset +#define Perl_pp_regcreset pPerl->Perl_pp_regcreset +#undef Perl_pp_rename +#define Perl_pp_rename pPerl->Perl_pp_rename +#undef Perl_pp_repeat +#define Perl_pp_repeat pPerl->Perl_pp_repeat +#undef Perl_pp_require +#define Perl_pp_require pPerl->Perl_pp_require +#undef Perl_pp_reset +#define Perl_pp_reset pPerl->Perl_pp_reset +#undef Perl_pp_return +#define Perl_pp_return pPerl->Perl_pp_return +#undef Perl_pp_reverse +#define Perl_pp_reverse pPerl->Perl_pp_reverse +#undef Perl_pp_rewinddir +#define Perl_pp_rewinddir pPerl->Perl_pp_rewinddir +#undef Perl_pp_right_shift +#define Perl_pp_right_shift pPerl->Perl_pp_right_shift +#undef Perl_pp_rindex +#define Perl_pp_rindex pPerl->Perl_pp_rindex +#undef Perl_pp_rmdir +#define Perl_pp_rmdir pPerl->Perl_pp_rmdir +#undef Perl_pp_rv2av +#define Perl_pp_rv2av pPerl->Perl_pp_rv2av +#undef Perl_pp_rv2cv +#define Perl_pp_rv2cv pPerl->Perl_pp_rv2cv +#undef Perl_pp_rv2gv +#define Perl_pp_rv2gv pPerl->Perl_pp_rv2gv +#undef Perl_pp_rv2hv +#define Perl_pp_rv2hv pPerl->Perl_pp_rv2hv +#undef Perl_pp_rv2sv +#define Perl_pp_rv2sv pPerl->Perl_pp_rv2sv +#undef Perl_pp_sassign +#define Perl_pp_sassign pPerl->Perl_pp_sassign +#undef Perl_pp_scalar +#define Perl_pp_scalar pPerl->Perl_pp_scalar +#undef Perl_pp_schomp +#define Perl_pp_schomp pPerl->Perl_pp_schomp +#undef Perl_pp_schop +#define Perl_pp_schop pPerl->Perl_pp_schop +#undef Perl_pp_scmp +#define Perl_pp_scmp pPerl->Perl_pp_scmp +#undef Perl_pp_scope +#define Perl_pp_scope pPerl->Perl_pp_scope +#undef Perl_pp_seek +#define Perl_pp_seek pPerl->Perl_pp_seek +#undef Perl_pp_seekdir +#define Perl_pp_seekdir pPerl->Perl_pp_seekdir +#undef Perl_pp_select +#define Perl_pp_select pPerl->Perl_pp_select +#undef Perl_pp_semctl +#define Perl_pp_semctl pPerl->Perl_pp_semctl +#undef Perl_pp_semget +#define Perl_pp_semget pPerl->Perl_pp_semget +#undef Perl_pp_semop +#define Perl_pp_semop pPerl->Perl_pp_semop +#undef Perl_pp_send +#define Perl_pp_send pPerl->Perl_pp_send +#undef Perl_pp_seq +#define Perl_pp_seq pPerl->Perl_pp_seq +#undef Perl_pp_setpgrp +#define Perl_pp_setpgrp pPerl->Perl_pp_setpgrp +#undef Perl_pp_setpriority +#define Perl_pp_setpriority pPerl->Perl_pp_setpriority +#undef Perl_pp_sge +#define Perl_pp_sge pPerl->Perl_pp_sge +#undef Perl_pp_sgrent +#define Perl_pp_sgrent pPerl->Perl_pp_sgrent +#undef Perl_pp_sgt +#define Perl_pp_sgt pPerl->Perl_pp_sgt +#undef Perl_pp_shift +#define Perl_pp_shift pPerl->Perl_pp_shift +#undef Perl_pp_shmctl +#define Perl_pp_shmctl pPerl->Perl_pp_shmctl +#undef Perl_pp_shmget +#define Perl_pp_shmget pPerl->Perl_pp_shmget +#undef Perl_pp_shmread +#define Perl_pp_shmread pPerl->Perl_pp_shmread +#undef Perl_pp_shmwrite +#define Perl_pp_shmwrite pPerl->Perl_pp_shmwrite +#undef Perl_pp_shostent +#define Perl_pp_shostent pPerl->Perl_pp_shostent +#undef Perl_pp_shutdown +#define Perl_pp_shutdown pPerl->Perl_pp_shutdown +#undef Perl_pp_sin +#define Perl_pp_sin pPerl->Perl_pp_sin +#undef Perl_pp_sle +#define Perl_pp_sle pPerl->Perl_pp_sle +#undef Perl_pp_sleep +#define Perl_pp_sleep pPerl->Perl_pp_sleep +#undef Perl_pp_slt +#define Perl_pp_slt pPerl->Perl_pp_slt +#undef Perl_pp_sne +#define Perl_pp_sne pPerl->Perl_pp_sne +#undef Perl_pp_snetent +#define Perl_pp_snetent pPerl->Perl_pp_snetent +#undef Perl_pp_socket +#define Perl_pp_socket pPerl->Perl_pp_socket +#undef Perl_pp_sockpair +#define Perl_pp_sockpair pPerl->Perl_pp_sockpair +#undef Perl_pp_sort +#define Perl_pp_sort pPerl->Perl_pp_sort +#undef Perl_pp_splice +#define Perl_pp_splice pPerl->Perl_pp_splice +#undef Perl_pp_split +#define Perl_pp_split pPerl->Perl_pp_split +#undef Perl_pp_sprintf +#define Perl_pp_sprintf pPerl->Perl_pp_sprintf +#undef Perl_pp_sprotoent +#define Perl_pp_sprotoent pPerl->Perl_pp_sprotoent +#undef Perl_pp_spwent +#define Perl_pp_spwent pPerl->Perl_pp_spwent +#undef Perl_pp_sqrt +#define Perl_pp_sqrt pPerl->Perl_pp_sqrt +#undef Perl_pp_srand +#define Perl_pp_srand pPerl->Perl_pp_srand +#undef Perl_pp_srefgen +#define Perl_pp_srefgen pPerl->Perl_pp_srefgen +#undef Perl_pp_sselect +#define Perl_pp_sselect pPerl->Perl_pp_sselect +#undef Perl_pp_sservent +#define Perl_pp_sservent pPerl->Perl_pp_sservent +#undef Perl_pp_ssockopt +#define Perl_pp_ssockopt pPerl->Perl_pp_ssockopt +#undef Perl_pp_stat +#define Perl_pp_stat pPerl->Perl_pp_stat +#undef Perl_pp_stringify +#define Perl_pp_stringify pPerl->Perl_pp_stringify +#undef Perl_pp_stub +#define Perl_pp_stub pPerl->Perl_pp_stub +#undef Perl_pp_study +#define Perl_pp_study pPerl->Perl_pp_study +#undef Perl_pp_subst +#define Perl_pp_subst pPerl->Perl_pp_subst +#undef Perl_pp_substcont +#define Perl_pp_substcont pPerl->Perl_pp_substcont +#undef Perl_pp_substr +#define Perl_pp_substr pPerl->Perl_pp_substr +#undef Perl_pp_subtract +#define Perl_pp_subtract pPerl->Perl_pp_subtract +#undef Perl_pp_symlink +#define Perl_pp_symlink pPerl->Perl_pp_symlink +#undef Perl_pp_syscall +#define Perl_pp_syscall pPerl->Perl_pp_syscall +#undef Perl_pp_sysopen +#define Perl_pp_sysopen pPerl->Perl_pp_sysopen +#undef Perl_pp_sysread +#define Perl_pp_sysread pPerl->Perl_pp_sysread +#undef Perl_pp_sysseek +#define Perl_pp_sysseek pPerl->Perl_pp_sysseek +#undef Perl_pp_system +#define Perl_pp_system pPerl->Perl_pp_system +#undef Perl_pp_syswrite +#define Perl_pp_syswrite pPerl->Perl_pp_syswrite +#undef Perl_pp_tell +#define Perl_pp_tell pPerl->Perl_pp_tell +#undef Perl_pp_telldir +#define Perl_pp_telldir pPerl->Perl_pp_telldir +#undef Perl_pp_threadsv +#define Perl_pp_threadsv pPerl->Perl_pp_threadsv +#undef Perl_pp_tie +#define Perl_pp_tie pPerl->Perl_pp_tie +#undef Perl_pp_tied +#define Perl_pp_tied pPerl->Perl_pp_tied +#undef Perl_pp_time +#define Perl_pp_time pPerl->Perl_pp_time +#undef Perl_pp_tms +#define Perl_pp_tms pPerl->Perl_pp_tms +#undef Perl_pp_trans +#define Perl_pp_trans pPerl->Perl_pp_trans +#undef Perl_pp_truncate +#define Perl_pp_truncate pPerl->Perl_pp_truncate +#undef Perl_pp_uc +#define Perl_pp_uc pPerl->Perl_pp_uc +#undef Perl_pp_ucfirst +#define Perl_pp_ucfirst pPerl->Perl_pp_ucfirst +#undef Perl_pp_umask +#define Perl_pp_umask pPerl->Perl_pp_umask +#undef Perl_pp_undef +#define Perl_pp_undef pPerl->Perl_pp_undef +#undef Perl_pp_unlink +#define Perl_pp_unlink pPerl->Perl_pp_unlink +#undef Perl_pp_unpack +#define Perl_pp_unpack pPerl->Perl_pp_unpack +#undef Perl_pp_unshift +#define Perl_pp_unshift pPerl->Perl_pp_unshift +#undef Perl_pp_unstack +#define Perl_pp_unstack pPerl->Perl_pp_unstack +#undef Perl_pp_untie +#define Perl_pp_untie pPerl->Perl_pp_untie +#undef Perl_pp_utime +#define Perl_pp_utime pPerl->Perl_pp_utime +#undef Perl_pp_values +#define Perl_pp_values pPerl->Perl_pp_values +#undef Perl_pp_vec +#define Perl_pp_vec pPerl->Perl_pp_vec +#undef Perl_pp_wait +#define Perl_pp_wait pPerl->Perl_pp_wait +#undef Perl_pp_waitpid +#define Perl_pp_waitpid pPerl->Perl_pp_waitpid +#undef Perl_pp_wantarray +#define Perl_pp_wantarray pPerl->Perl_pp_wantarray +#undef Perl_pp_warn +#define Perl_pp_warn pPerl->Perl_pp_warn +#undef Perl_pp_xor +#define Perl_pp_xor pPerl->Perl_pp_xor +#undef Perl_pregcomp +#define Perl_pregcomp pPerl->Perl_pregcomp +#undef Perl_pregexec +#define Perl_pregexec pPerl->Perl_pregexec +#undef Perl_pregfree +#define Perl_pregfree pPerl->Perl_pregfree +#undef Perl_prepend_elem +#define Perl_prepend_elem pPerl->Perl_prepend_elem +#undef Perl_push_return +#define Perl_push_return pPerl->Perl_push_return +#undef Perl_push_scope +#define Perl_push_scope pPerl->Perl_push_scope +#undef Perl_pv_display +#define Perl_pv_display pPerl->Perl_pv_display +#undef Perl_realloc +#define Perl_realloc pPerl->Perl_realloc +#undef Perl_ref +#define Perl_ref pPerl->Perl_ref +#undef Perl_refkids +#define Perl_refkids pPerl->Perl_refkids +#undef Perl_regdump +#define Perl_regdump pPerl->Perl_regdump +#undef Perl_regexec_flags +#define Perl_regexec_flags pPerl->Perl_regexec_flags +#undef Perl_reginitcolors +#define Perl_reginitcolors pPerl->Perl_reginitcolors +#undef Perl_regnext +#define Perl_regnext pPerl->Perl_regnext +#undef Perl_regprop +#define Perl_regprop pPerl->Perl_regprop +#undef Perl_repeatcpy +#define Perl_repeatcpy pPerl->Perl_repeatcpy +#undef Perl_require_pv +#define Perl_require_pv pPerl->Perl_require_pv +#undef Perl_rninstr +#define Perl_rninstr pPerl->Perl_rninstr +#undef Perl_rsignal +#define Perl_rsignal pPerl->Perl_rsignal +#undef Perl_rsignal_restore +#define Perl_rsignal_restore pPerl->Perl_rsignal_restore +#undef Perl_rsignal_save +#define Perl_rsignal_save pPerl->Perl_rsignal_save +#undef Perl_rsignal_state +#define Perl_rsignal_state pPerl->Perl_rsignal_state +#undef Perl_runops_debug +#define Perl_runops_debug pPerl->Perl_runops_debug +#undef Perl_runops_standard +#define Perl_runops_standard pPerl->Perl_runops_standard +#undef Perl_rxres_free +#define Perl_rxres_free pPerl->Perl_rxres_free +#undef Perl_rxres_restore +#define Perl_rxres_restore pPerl->Perl_rxres_restore +#undef Perl_rxres_save +#define Perl_rxres_save pPerl->Perl_rxres_save +#undef Perl_safesyscalloc +#define Perl_safesyscalloc pPerl->Perl_safesyscalloc +#undef Perl_safesysfree +#define Perl_safesysfree pPerl->Perl_safesysfree +#undef Perl_safesysmalloc +#define Perl_safesysmalloc pPerl->Perl_safesysmalloc +#undef Perl_safesysrealloc +#define Perl_safesysrealloc pPerl->Perl_safesysrealloc +#undef Perl_safexcalloc +#define Perl_safexcalloc pPerl->Perl_safexcalloc +#undef Perl_safexfree +#define Perl_safexfree pPerl->Perl_safexfree +#undef Perl_safexmalloc +#define Perl_safexmalloc pPerl->Perl_safexmalloc +#undef Perl_safexrealloc +#define Perl_safexrealloc pPerl->Perl_safexrealloc +#undef Perl_same_dirent +#define Perl_same_dirent pPerl->Perl_same_dirent +#undef Perl_save_I16 +#define Perl_save_I16 pPerl->Perl_save_I16 +#undef Perl_save_I32 +#define Perl_save_I32 pPerl->Perl_save_I32 +#undef Perl_save_aelem +#define Perl_save_aelem pPerl->Perl_save_aelem +#undef Perl_save_alloc +#define Perl_save_alloc pPerl->Perl_save_alloc +#undef Perl_save_aptr +#define Perl_save_aptr pPerl->Perl_save_aptr +#undef Perl_save_ary +#define Perl_save_ary pPerl->Perl_save_ary +#undef Perl_save_clearsv +#define Perl_save_clearsv pPerl->Perl_save_clearsv +#undef Perl_save_delete +#define Perl_save_delete pPerl->Perl_save_delete +#undef Perl_save_destructor +#define Perl_save_destructor pPerl->Perl_save_destructor +#undef Perl_save_freeop +#define Perl_save_freeop pPerl->Perl_save_freeop +#undef Perl_save_freepv +#define Perl_save_freepv pPerl->Perl_save_freepv +#undef Perl_save_freesv +#define Perl_save_freesv pPerl->Perl_save_freesv +#undef Perl_save_generic_svref +#define Perl_save_generic_svref pPerl->Perl_save_generic_svref +#undef Perl_save_gp +#define Perl_save_gp pPerl->Perl_save_gp +#undef Perl_save_hash +#define Perl_save_hash pPerl->Perl_save_hash +#undef Perl_save_helem +#define Perl_save_helem pPerl->Perl_save_helem +#undef Perl_save_hints +#define Perl_save_hints pPerl->Perl_save_hints +#undef Perl_save_hptr +#define Perl_save_hptr pPerl->Perl_save_hptr +#undef Perl_save_int +#define Perl_save_int pPerl->Perl_save_int +#undef Perl_save_item +#define Perl_save_item pPerl->Perl_save_item +#undef Perl_save_iv +#define Perl_save_iv pPerl->Perl_save_iv +#undef Perl_save_list +#define Perl_save_list pPerl->Perl_save_list +#undef Perl_save_long +#define Perl_save_long pPerl->Perl_save_long +#undef Perl_save_nogv +#define Perl_save_nogv pPerl->Perl_save_nogv +#undef Perl_save_op +#define Perl_save_op pPerl->Perl_save_op +#undef Perl_save_pptr +#define Perl_save_pptr pPerl->Perl_save_pptr +#undef Perl_save_re_context +#define Perl_save_re_context pPerl->Perl_save_re_context +#undef Perl_save_scalar +#define Perl_save_scalar pPerl->Perl_save_scalar +#undef Perl_save_sptr +#define Perl_save_sptr pPerl->Perl_save_sptr +#undef Perl_save_svref +#define Perl_save_svref pPerl->Perl_save_svref +#undef Perl_save_threadsv +#define Perl_save_threadsv pPerl->Perl_save_threadsv +#undef Perl_savepv +#define Perl_savepv pPerl->Perl_savepv +#undef Perl_savepvn +#define Perl_savepvn pPerl->Perl_savepvn +#undef Perl_savestack_grow +#define Perl_savestack_grow pPerl->Perl_savestack_grow +#undef Perl_sawparens +#define Perl_sawparens pPerl->Perl_sawparens +#undef Perl_scalar +#define Perl_scalar pPerl->Perl_scalar +#undef Perl_scalarkids +#define Perl_scalarkids pPerl->Perl_scalarkids +#undef Perl_scalarseq +#define Perl_scalarseq pPerl->Perl_scalarseq +#undef Perl_scalarvoid +#define Perl_scalarvoid pPerl->Perl_scalarvoid +#undef Perl_scan_bin +#define Perl_scan_bin pPerl->Perl_scan_bin +#undef Perl_scan_hex +#define Perl_scan_hex pPerl->Perl_scan_hex +#undef Perl_scan_num +#define Perl_scan_num pPerl->Perl_scan_num +#undef Perl_scan_oct +#define Perl_scan_oct pPerl->Perl_scan_oct +#undef Perl_scope +#define Perl_scope pPerl->Perl_scope +#undef Perl_screaminstr +#define Perl_screaminstr pPerl->Perl_screaminstr +#undef Perl_set_numeric_local +#define Perl_set_numeric_local pPerl->Perl_set_numeric_local +#undef Perl_set_numeric_standard +#define Perl_set_numeric_standard pPerl->Perl_set_numeric_standard +#undef Perl_setdefout +#define Perl_setdefout pPerl->Perl_setdefout +#undef Perl_setenv_getix +#define Perl_setenv_getix pPerl->Perl_setenv_getix +#undef Perl_share_hek +#define Perl_share_hek pPerl->Perl_share_hek +#undef Perl_sharepvn +#define Perl_sharepvn pPerl->Perl_sharepvn +#undef Perl_sighandler +#define Perl_sighandler pPerl->Perl_sighandler +#undef Perl_stack_grow +#define Perl_stack_grow pPerl->Perl_stack_grow +#undef Perl_start_subparse +#define Perl_start_subparse pPerl->Perl_start_subparse +#undef Perl_sub_crush_depth +#define Perl_sub_crush_depth pPerl->Perl_sub_crush_depth +#undef Perl_sv_2bool +#define Perl_sv_2bool pPerl->Perl_sv_2bool +#undef Perl_sv_2cv +#define Perl_sv_2cv pPerl->Perl_sv_2cv +#undef Perl_sv_2io +#define Perl_sv_2io pPerl->Perl_sv_2io +#undef Perl_sv_2iv +#define Perl_sv_2iv pPerl->Perl_sv_2iv +#undef Perl_sv_2mortal +#define Perl_sv_2mortal pPerl->Perl_sv_2mortal +#undef Perl_sv_2nv +#define Perl_sv_2nv pPerl->Perl_sv_2nv +#undef Perl_sv_2pv +#define Perl_sv_2pv pPerl->Perl_sv_2pv +#undef Perl_sv_2pv_nolen +#define Perl_sv_2pv_nolen pPerl->Perl_sv_2pv_nolen +#undef Perl_sv_2uv +#define Perl_sv_2uv pPerl->Perl_sv_2uv +#undef Perl_sv_add_arena +#define Perl_sv_add_arena pPerl->Perl_sv_add_arena +#undef Perl_sv_backoff +#define Perl_sv_backoff pPerl->Perl_sv_backoff +#undef Perl_sv_bless +#define Perl_sv_bless pPerl->Perl_sv_bless +#undef Perl_sv_catpv +#define Perl_sv_catpv pPerl->Perl_sv_catpv +#undef Perl_sv_catpv_mg +#define Perl_sv_catpv_mg pPerl->Perl_sv_catpv_mg +#undef Perl_sv_catpvf +#define Perl_sv_catpvf pPerl->Perl_sv_catpvf +#undef Perl_sv_catpvf_mg +#define Perl_sv_catpvf_mg pPerl->Perl_sv_catpvf_mg +#undef Perl_sv_catpvn +#define Perl_sv_catpvn pPerl->Perl_sv_catpvn +#undef Perl_sv_catpvn_mg +#define Perl_sv_catpvn_mg pPerl->Perl_sv_catpvn_mg +#undef Perl_sv_catsv +#define Perl_sv_catsv pPerl->Perl_sv_catsv +#undef Perl_sv_catsv_mg +#define Perl_sv_catsv_mg pPerl->Perl_sv_catsv_mg +#undef Perl_sv_chop +#define Perl_sv_chop pPerl->Perl_sv_chop +#undef Perl_sv_clean_all +#define Perl_sv_clean_all pPerl->Perl_sv_clean_all +#undef Perl_sv_clean_objs +#define Perl_sv_clean_objs pPerl->Perl_sv_clean_objs +#undef Perl_sv_clear +#define Perl_sv_clear pPerl->Perl_sv_clear +#undef Perl_sv_cmp +#define Perl_sv_cmp pPerl->Perl_sv_cmp +#undef Perl_sv_cmp_locale +#define Perl_sv_cmp_locale pPerl->Perl_sv_cmp_locale +#undef Perl_sv_collxfrm +#define Perl_sv_collxfrm pPerl->Perl_sv_collxfrm +#undef Perl_sv_compile_2op +#define Perl_sv_compile_2op pPerl->Perl_sv_compile_2op +#undef Perl_sv_dec +#define Perl_sv_dec pPerl->Perl_sv_dec +#undef Perl_sv_derived_from +#define Perl_sv_derived_from pPerl->Perl_sv_derived_from +#undef Perl_sv_dump +#define Perl_sv_dump pPerl->Perl_sv_dump +#undef Perl_sv_eq +#define Perl_sv_eq pPerl->Perl_sv_eq +#undef Perl_sv_force_normal +#define Perl_sv_force_normal pPerl->Perl_sv_force_normal +#undef Perl_sv_free +#define Perl_sv_free pPerl->Perl_sv_free +#undef Perl_sv_free_arenas +#define Perl_sv_free_arenas pPerl->Perl_sv_free_arenas +#undef Perl_sv_gets +#define Perl_sv_gets pPerl->Perl_sv_gets +#undef Perl_sv_grow +#define Perl_sv_grow pPerl->Perl_sv_grow +#undef Perl_sv_inc +#define Perl_sv_inc pPerl->Perl_sv_inc +#undef Perl_sv_insert +#define Perl_sv_insert pPerl->Perl_sv_insert +#undef Perl_sv_isa +#define Perl_sv_isa pPerl->Perl_sv_isa +#undef Perl_sv_isobject +#define Perl_sv_isobject pPerl->Perl_sv_isobject +#undef Perl_sv_iv +#define Perl_sv_iv pPerl->Perl_sv_iv +#undef Perl_sv_len +#define Perl_sv_len pPerl->Perl_sv_len +#undef Perl_sv_len_utf8 +#define Perl_sv_len_utf8 pPerl->Perl_sv_len_utf8 +#undef Perl_sv_magic +#define Perl_sv_magic pPerl->Perl_sv_magic +#undef Perl_sv_mortalcopy +#define Perl_sv_mortalcopy pPerl->Perl_sv_mortalcopy +#undef Perl_sv_newmortal +#define Perl_sv_newmortal pPerl->Perl_sv_newmortal +#undef Perl_sv_newref +#define Perl_sv_newref pPerl->Perl_sv_newref +#undef Perl_sv_nv +#define Perl_sv_nv pPerl->Perl_sv_nv +#undef Perl_sv_peek +#define Perl_sv_peek pPerl->Perl_sv_peek +#undef Perl_sv_pos_b2u +#define Perl_sv_pos_b2u pPerl->Perl_sv_pos_b2u +#undef Perl_sv_pos_u2b +#define Perl_sv_pos_u2b pPerl->Perl_sv_pos_u2b +#undef Perl_sv_pv +#define Perl_sv_pv pPerl->Perl_sv_pv +#undef Perl_sv_pvn +#define Perl_sv_pvn pPerl->Perl_sv_pvn +#undef Perl_sv_pvn_force +#define Perl_sv_pvn_force pPerl->Perl_sv_pvn_force +#undef Perl_sv_reftype +#define Perl_sv_reftype pPerl->Perl_sv_reftype +#undef Perl_sv_replace +#define Perl_sv_replace pPerl->Perl_sv_replace +#undef Perl_sv_report_used +#define Perl_sv_report_used pPerl->Perl_sv_report_used +#undef Perl_sv_reset +#define Perl_sv_reset pPerl->Perl_sv_reset +#undef Perl_sv_rvweaken +#define Perl_sv_rvweaken pPerl->Perl_sv_rvweaken +#undef Perl_sv_setiv +#define Perl_sv_setiv pPerl->Perl_sv_setiv +#undef Perl_sv_setiv_mg +#define Perl_sv_setiv_mg pPerl->Perl_sv_setiv_mg +#undef Perl_sv_setnv +#define Perl_sv_setnv pPerl->Perl_sv_setnv +#undef Perl_sv_setnv_mg +#define Perl_sv_setnv_mg pPerl->Perl_sv_setnv_mg +#undef Perl_sv_setpv +#define Perl_sv_setpv pPerl->Perl_sv_setpv +#undef Perl_sv_setpv_mg +#define Perl_sv_setpv_mg pPerl->Perl_sv_setpv_mg +#undef Perl_sv_setpvf +#define Perl_sv_setpvf pPerl->Perl_sv_setpvf +#undef Perl_sv_setpvf_mg +#define Perl_sv_setpvf_mg pPerl->Perl_sv_setpvf_mg +#undef Perl_sv_setpviv +#define Perl_sv_setpviv pPerl->Perl_sv_setpviv +#undef Perl_sv_setpviv_mg +#define Perl_sv_setpviv_mg pPerl->Perl_sv_setpviv_mg +#undef Perl_sv_setpvn +#define Perl_sv_setpvn pPerl->Perl_sv_setpvn +#undef Perl_sv_setpvn_mg +#define Perl_sv_setpvn_mg pPerl->Perl_sv_setpvn_mg +#undef Perl_sv_setref_iv +#define Perl_sv_setref_iv pPerl->Perl_sv_setref_iv +#undef Perl_sv_setref_nv +#define Perl_sv_setref_nv pPerl->Perl_sv_setref_nv +#undef Perl_sv_setref_pv +#define Perl_sv_setref_pv pPerl->Perl_sv_setref_pv +#undef Perl_sv_setref_pvn +#define Perl_sv_setref_pvn pPerl->Perl_sv_setref_pvn +#undef Perl_sv_setsv +#define Perl_sv_setsv pPerl->Perl_sv_setsv +#undef Perl_sv_setsv_mg +#define Perl_sv_setsv_mg pPerl->Perl_sv_setsv_mg +#undef Perl_sv_setuv +#define Perl_sv_setuv pPerl->Perl_sv_setuv +#undef Perl_sv_setuv_mg +#define Perl_sv_setuv_mg pPerl->Perl_sv_setuv_mg +#undef Perl_sv_taint +#define Perl_sv_taint pPerl->Perl_sv_taint +#undef Perl_sv_tainted +#define Perl_sv_tainted pPerl->Perl_sv_tainted +#undef Perl_sv_true +#define Perl_sv_true pPerl->Perl_sv_true +#undef Perl_sv_unmagic +#define Perl_sv_unmagic pPerl->Perl_sv_unmagic +#undef Perl_sv_unref +#define Perl_sv_unref pPerl->Perl_sv_unref +#undef Perl_sv_untaint +#define Perl_sv_untaint pPerl->Perl_sv_untaint +#undef Perl_sv_upgrade +#define Perl_sv_upgrade pPerl->Perl_sv_upgrade +#undef Perl_sv_usepvn +#define Perl_sv_usepvn pPerl->Perl_sv_usepvn +#undef Perl_sv_usepvn_mg +#define Perl_sv_usepvn_mg pPerl->Perl_sv_usepvn_mg +#undef Perl_sv_uv +#define Perl_sv_uv pPerl->Perl_sv_uv +#undef Perl_sv_vcatpvfn +#define Perl_sv_vcatpvfn pPerl->Perl_sv_vcatpvfn +#undef Perl_sv_vsetpvfn +#define Perl_sv_vsetpvfn pPerl->Perl_sv_vsetpvfn +#undef Perl_swash_fetch +#define Perl_swash_fetch pPerl->Perl_swash_fetch +#undef Perl_swash_init +#define Perl_swash_init pPerl->Perl_swash_init +#undef Perl_taint_env +#define Perl_taint_env pPerl->Perl_taint_env +#undef Perl_taint_proper +#define Perl_taint_proper pPerl->Perl_taint_proper +#undef Perl_tmps_grow +#define Perl_tmps_grow pPerl->Perl_tmps_grow +#undef Perl_to_uni_lower +#define Perl_to_uni_lower pPerl->Perl_to_uni_lower +#undef Perl_to_uni_lower_lc +#define Perl_to_uni_lower_lc pPerl->Perl_to_uni_lower_lc +#undef Perl_to_uni_title +#define Perl_to_uni_title pPerl->Perl_to_uni_title +#undef Perl_to_uni_title_lc +#define Perl_to_uni_title_lc pPerl->Perl_to_uni_title_lc +#undef Perl_to_uni_upper +#define Perl_to_uni_upper pPerl->Perl_to_uni_upper +#undef Perl_to_uni_upper_lc +#define Perl_to_uni_upper_lc pPerl->Perl_to_uni_upper_lc +#undef Perl_to_utf8_lower +#define Perl_to_utf8_lower pPerl->Perl_to_utf8_lower +#undef Perl_to_utf8_title +#define Perl_to_utf8_title pPerl->Perl_to_utf8_title +#undef Perl_to_utf8_upper +#define Perl_to_utf8_upper pPerl->Perl_to_utf8_upper +#undef Perl_unlnk +#define Perl_unlnk pPerl->Perl_unlnk +#undef Perl_unlock_condpair +#define Perl_unlock_condpair pPerl->Perl_unlock_condpair +#undef Perl_unshare_hek +#define Perl_unshare_hek pPerl->Perl_unshare_hek +#undef Perl_unsharepvn +#define Perl_unsharepvn pPerl->Perl_unsharepvn +#undef Perl_utf16_to_utf8 +#define Perl_utf16_to_utf8 pPerl->Perl_utf16_to_utf8 +#undef Perl_utf16_to_utf8_reversed +#define Perl_utf16_to_utf8_reversed pPerl->Perl_utf16_to_utf8_reversed +#undef Perl_utf8_distance +#define Perl_utf8_distance pPerl->Perl_utf8_distance +#undef Perl_utf8_hop +#define Perl_utf8_hop pPerl->Perl_utf8_hop +#undef Perl_utf8_to_uv +#define Perl_utf8_to_uv pPerl->Perl_utf8_to_uv +#undef Perl_utilize +#define Perl_utilize pPerl->Perl_utilize +#undef Perl_uv_to_utf8 +#define Perl_uv_to_utf8 pPerl->Perl_uv_to_utf8 +#undef Perl_vivify_defelem +#define Perl_vivify_defelem pPerl->Perl_vivify_defelem +#undef Perl_vivify_ref +#define Perl_vivify_ref pPerl->Perl_vivify_ref +#undef Perl_wait4pid +#define Perl_wait4pid pPerl->Perl_wait4pid +#undef Perl_warn +#define Perl_warn pPerl->Perl_warn +#undef Perl_warner +#define Perl_warner pPerl->Perl_warner +#undef Perl_watch +#define Perl_watch pPerl->Perl_watch +#undef Perl_whichsig +#define Perl_whichsig pPerl->Perl_whichsig +#undef Perl_yydestruct +#define Perl_yydestruct pPerl->Perl_yydestruct +#undef Perl_yyerror +#define Perl_yyerror pPerl->Perl_yyerror +#undef Perl_yylex +#define Perl_yylex pPerl->Perl_yylex +#undef Perl_yyparse +#define Perl_yyparse pPerl->Perl_yyparse +#undef Perl_yywarn +#define Perl_yywarn pPerl->Perl_yywarn #undef add_data #define add_data pPerl->Perl_add_data -#undef amagic_call -#define amagic_call pPerl->Perl_amagic_call #undef amagic_cmp #define amagic_cmp pPerl->Perl_amagic_cmp #undef amagic_cmp_locale @@ -805,196 +2759,28 @@ #define amagic_ncmp pPerl->Perl_amagic_ncmp #undef ao #define ao pPerl->Perl_ao -#undef append_elem -#define append_elem pPerl->Perl_append_elem -#undef append_list -#define append_list pPerl->Perl_append_list -#undef apply -#define apply pPerl->Perl_apply #undef asIV #define asIV pPerl->Perl_asIV #undef asUV #define asUV pPerl->Perl_asUV -#undef assertref -#define assertref pPerl->Perl_assertref -#undef av_clear -#define av_clear pPerl->Perl_av_clear -#undef av_extend -#define av_extend pPerl->Perl_av_extend -#undef av_fake -#define av_fake pPerl->Perl_av_fake -#undef av_fetch -#define av_fetch pPerl->Perl_av_fetch -#undef av_fill -#define av_fill pPerl->Perl_av_fill -#undef av_len -#define av_len pPerl->Perl_av_len -#undef av_make -#define av_make pPerl->Perl_av_make -#undef av_pop -#define av_pop pPerl->Perl_av_pop -#undef av_push -#define av_push pPerl->Perl_av_push -#undef av_reify -#define av_reify pPerl->Perl_av_reify -#undef av_shift -#define av_shift pPerl->Perl_av_shift -#undef av_store -#define av_store pPerl->Perl_av_store -#undef av_undef -#define av_undef pPerl->Perl_av_undef -#undef av_unshift -#define av_unshift pPerl->Perl_av_unshift -#undef avhv_exists_ent -#define avhv_exists_ent pPerl->Perl_avhv_exists_ent -#undef avhv_fetch_ent -#define avhv_fetch_ent pPerl->Perl_avhv_fetch_ent #undef avhv_index_sv #define avhv_index_sv pPerl->Perl_avhv_index_sv -#undef avhv_iternext -#define avhv_iternext pPerl->Perl_avhv_iternext -#undef avhv_iterval -#define avhv_iterval pPerl->Perl_avhv_iterval -#undef avhv_keys -#define avhv_keys pPerl->Perl_avhv_keys #undef bad_type #define bad_type pPerl->Perl_bad_type -#undef bind_match -#define bind_match pPerl->Perl_bind_match -#undef block_end -#define block_end pPerl->Perl_block_end -#undef block_gimme -#define block_gimme pPerl->Perl_block_gimme -#undef block_start -#define block_start pPerl->Perl_block_start -#undef boot_core_UNIVERSAL -#define boot_core_UNIVERSAL pPerl->Perl_boot_core_UNIVERSAL -#undef bset_obj_store -#define bset_obj_store pPerl->Perl_bset_obj_store #undef cache_re #define cache_re pPerl->Perl_cache_re -#undef call_list -#define call_list pPerl->Perl_call_list #undef call_list_body #define call_list_body pPerl->Perl_call_list_body -#undef cando -#define cando pPerl->Perl_cando -#undef cast_i32 -#define cast_i32 pPerl->Perl_cast_i32 -#undef cast_iv -#define cast_iv pPerl->Perl_cast_iv -#undef cast_ulong -#define cast_ulong pPerl->Perl_cast_ulong -#undef cast_uv -#define cast_uv pPerl->Perl_cast_uv #undef check_uni #define check_uni pPerl->Perl_check_uni #undef checkcomma #define checkcomma pPerl->Perl_checkcomma -#undef ck_anoncode -#define ck_anoncode pPerl->Perl_ck_anoncode -#undef ck_bitop -#define ck_bitop pPerl->Perl_ck_bitop -#undef ck_concat -#define ck_concat pPerl->Perl_ck_concat -#undef ck_defined -#define ck_defined pPerl->Perl_ck_defined -#undef ck_delete -#define ck_delete pPerl->Perl_ck_delete -#undef ck_eof -#define ck_eof pPerl->Perl_ck_eof -#undef ck_eval -#define ck_eval pPerl->Perl_ck_eval -#undef ck_exec -#define ck_exec pPerl->Perl_ck_exec -#undef ck_exists -#define ck_exists pPerl->Perl_ck_exists -#undef ck_ftst -#define ck_ftst pPerl->Perl_ck_ftst -#undef ck_fun -#define ck_fun pPerl->Perl_ck_fun -#undef ck_fun_locale -#define ck_fun_locale pPerl->Perl_ck_fun_locale -#undef ck_glob -#define ck_glob pPerl->Perl_ck_glob -#undef ck_grep -#define ck_grep pPerl->Perl_ck_grep -#undef ck_index -#define ck_index pPerl->Perl_ck_index -#undef ck_lengthconst -#define ck_lengthconst pPerl->Perl_ck_lengthconst -#undef ck_lfun -#define ck_lfun pPerl->Perl_ck_lfun -#undef ck_listiob -#define ck_listiob pPerl->Perl_ck_listiob -#undef ck_match -#define ck_match pPerl->Perl_ck_match -#undef ck_null -#define ck_null pPerl->Perl_ck_null -#undef ck_repeat -#define ck_repeat pPerl->Perl_ck_repeat -#undef ck_require -#define ck_require pPerl->Perl_ck_require -#undef ck_rfun -#define ck_rfun pPerl->Perl_ck_rfun -#undef ck_rvconst -#define ck_rvconst pPerl->Perl_ck_rvconst -#undef ck_scmp -#define ck_scmp pPerl->Perl_ck_scmp -#undef ck_select -#define ck_select pPerl->Perl_ck_select -#undef ck_shift -#define ck_shift pPerl->Perl_ck_shift -#undef ck_sort -#define ck_sort pPerl->Perl_ck_sort -#undef ck_spair -#define ck_spair pPerl->Perl_ck_spair -#undef ck_split -#define ck_split pPerl->Perl_ck_split -#undef ck_subr -#define ck_subr pPerl->Perl_ck_subr -#undef ck_svconst -#define ck_svconst pPerl->Perl_ck_svconst -#undef ck_trunc -#define ck_trunc pPerl->Perl_ck_trunc #undef clear_re #define clear_re pPerl->Perl_clear_re -#undef condpair_magic -#define condpair_magic pPerl->Perl_condpair_magic -#undef convert -#define convert pPerl->Perl_convert -#undef croak -#define croak pPerl->Perl_croak -#undef cv_ckproto -#define cv_ckproto pPerl->Perl_cv_ckproto -#undef cv_clone -#define cv_clone pPerl->Perl_cv_clone #undef cv_clone2 #define cv_clone2 pPerl->Perl_cv_clone2 -#undef cv_const_sv -#define cv_const_sv pPerl->Perl_cv_const_sv -#undef cv_undef -#define cv_undef pPerl->Perl_cv_undef -#undef cx_dump -#define cx_dump pPerl->Perl_cx_dump -#undef cxinc -#define cxinc pPerl->Perl_cxinc -#undef deb -#define deb pPerl->Perl_deb -#undef deb_growlevel -#define deb_growlevel pPerl->Perl_deb_growlevel -#undef debop -#define debop pPerl->Perl_debop #undef debprof #define debprof pPerl->Perl_debprof -#undef debprofdump -#define debprofdump pPerl->Perl_debprofdump -#undef debstack -#define debstack pPerl->Perl_debstack -#undef debstackptrs -#define debstackptrs pPerl->Perl_debstackptrs -#undef default_protect -#define default_protect pPerl->Perl_default_protect #undef del_he #define del_he pPerl->Perl_del_he #undef del_sv @@ -1007,94 +2793,20 @@ #define del_xpv pPerl->Perl_del_xpv #undef del_xrv #define del_xrv pPerl->Perl_del_xrv -#undef delimcpy -#define delimcpy pPerl->Perl_delimcpy #undef depcom #define depcom pPerl->Perl_depcom -#undef deprecate -#define deprecate pPerl->Perl_deprecate -#undef die -#define die pPerl->Perl_die -#undef die_where -#define die_where pPerl->Perl_die_where #undef div128 #define div128 pPerl->Perl_div128 -#undef do_aexec -#define do_aexec pPerl->Perl_do_aexec #undef do_aspawn #define do_aspawn pPerl->Perl_do_aspawn -#undef do_binmode -#define do_binmode pPerl->Perl_do_binmode -#undef do_chomp -#define do_chomp pPerl->Perl_do_chomp -#undef do_chop -#define do_chop pPerl->Perl_do_chop #undef do_clean_all #define do_clean_all pPerl->Perl_do_clean_all #undef do_clean_named_objs #define do_clean_named_objs pPerl->Perl_do_clean_named_objs #undef do_clean_objs #define do_clean_objs pPerl->Perl_do_clean_objs -#undef do_close -#define do_close pPerl->Perl_do_close -#undef do_eof -#define do_eof pPerl->Perl_do_eof -#undef do_exec -#define do_exec pPerl->Perl_do_exec -#undef do_exec3 -#define do_exec3 pPerl->Perl_do_exec3 -#undef do_execfree -#define do_execfree pPerl->Perl_do_execfree -#undef do_gv_dump -#define do_gv_dump pPerl->Perl_do_gv_dump -#undef do_gvgv_dump -#define do_gvgv_dump pPerl->Perl_do_gvgv_dump -#undef do_hv_dump -#define do_hv_dump pPerl->Perl_do_hv_dump -#undef do_ipcctl -#define do_ipcctl pPerl->Perl_do_ipcctl -#undef do_ipcget -#define do_ipcget pPerl->Perl_do_ipcget -#undef do_join -#define do_join pPerl->Perl_do_join -#undef do_kv -#define do_kv pPerl->Perl_do_kv -#undef do_magic_dump -#define do_magic_dump pPerl->Perl_do_magic_dump -#undef do_msgrcv -#define do_msgrcv pPerl->Perl_do_msgrcv -#undef do_msgsnd -#define do_msgsnd pPerl->Perl_do_msgsnd -#undef do_op_dump -#define do_op_dump pPerl->Perl_do_op_dump -#undef do_open -#define do_open pPerl->Perl_do_open -#undef do_pipe -#define do_pipe pPerl->Perl_do_pipe -#undef do_pmop_dump -#define do_pmop_dump pPerl->Perl_do_pmop_dump -#undef do_print -#define do_print pPerl->Perl_do_print -#undef do_readline -#define do_readline pPerl->Perl_do_readline #undef do_report_used #define do_report_used pPerl->Perl_do_report_used -#undef do_seek -#define do_seek pPerl->Perl_do_seek -#undef do_semop -#define do_semop pPerl->Perl_do_semop -#undef do_shmio -#define do_shmio pPerl->Perl_do_shmio -#undef do_sprintf -#define do_sprintf pPerl->Perl_do_sprintf -#undef do_sv_dump -#define do_sv_dump pPerl->Perl_do_sv_dump -#undef do_sysseek -#define do_sysseek pPerl->Perl_do_sysseek -#undef do_tell -#define do_tell pPerl->Perl_do_tell -#undef do_trans -#define do_trans pPerl->Perl_do_trans #undef do_trans_CC_complex #define do_trans_CC_complex pPerl->Perl_do_trans_CC_complex #undef do_trans_CC_count @@ -1115,10 +2827,6 @@ #define do_trans_UU_count pPerl->Perl_do_trans_UU_count #undef do_trans_UU_simple #define do_trans_UU_simple pPerl->Perl_do_trans_UU_simple -#undef do_vecset -#define do_vecset pPerl->Perl_do_vecset -#undef do_vop -#define do_vop pPerl->Perl_do_vop #undef docatch #define docatch pPerl->Perl_docatch #undef docatch_body @@ -1127,8 +2835,6 @@ #define doencodes pPerl->Perl_doencodes #undef doeval #define doeval pPerl->Perl_doeval -#undef dofile -#define dofile pPerl->Perl_dofile #undef dofindlabel #define dofindlabel pPerl->Perl_dofindlabel #undef doform @@ -1147,188 +2853,44 @@ #define dopoptosub pPerl->Perl_dopoptosub #undef dopoptosub_at #define dopoptosub_at pPerl->Perl_dopoptosub_at -#undef dounwind -#define dounwind pPerl->Perl_dounwind -#undef dowantarray -#define dowantarray pPerl->Perl_dowantarray #undef dump #define dump pPerl->Perl_dump -#undef dump_all -#define dump_all pPerl->Perl_dump_all -#undef dump_eval -#define dump_eval pPerl->Perl_dump_eval -#undef dump_fds -#define dump_fds pPerl->Perl_dump_fds -#undef dump_form -#define dump_form pPerl->Perl_dump_form -#undef dump_indent -#define dump_indent pPerl->Perl_dump_indent -#undef dump_mstats -#define dump_mstats pPerl->Perl_dump_mstats -#undef dump_packsubs -#define dump_packsubs pPerl->Perl_dump_packsubs -#undef dump_sub -#define dump_sub pPerl->Perl_dump_sub #undef dumpuntil #define dumpuntil pPerl->Perl_dumpuntil #undef emulate_eaccess #define emulate_eaccess pPerl->Perl_emulate_eaccess -#undef fbm_compile -#define fbm_compile pPerl->Perl_fbm_compile -#undef fbm_instr -#define fbm_instr pPerl->Perl_fbm_instr -#undef filter_add -#define filter_add pPerl->Perl_filter_add -#undef filter_del -#define filter_del pPerl->Perl_filter_del #undef filter_gets #define filter_gets pPerl->Perl_filter_gets -#undef filter_read -#define filter_read pPerl->Perl_filter_read #undef find_beginning #define find_beginning pPerl->Perl_find_beginning -#undef find_script -#define find_script pPerl->Perl_find_script -#undef find_threadsv -#define find_threadsv pPerl->Perl_find_threadsv -#undef fold_constants -#define fold_constants pPerl->Perl_fold_constants #undef forbid_setid #define forbid_setid pPerl->Perl_forbid_setid #undef force_ident #define force_ident pPerl->Perl_force_ident -#undef force_list -#define force_list pPerl->Perl_force_list #undef force_next #define force_next pPerl->Perl_force_next #undef force_version #define force_version pPerl->Perl_force_version #undef force_word #define force_word pPerl->Perl_force_word -#undef form -#define form pPerl->Perl_form -#undef fprintf -#define fprintf pPerl->Perl_fprintf #undef free_closures #define free_closures pPerl->Perl_free_closures -#undef free_tmps -#define free_tmps pPerl->Perl_free_tmps -#undef gen_constant_list -#define gen_constant_list pPerl->Perl_gen_constant_list #undef get_db_sub #define get_db_sub pPerl->Perl_get_db_sub -#undef get_no_modify -#define get_no_modify pPerl->Perl_get_no_modify -#undef get_op_descs -#define get_op_descs pPerl->Perl_get_op_descs -#undef get_op_names -#define get_op_names pPerl->Perl_get_op_names -#undef get_opargs -#define get_opargs pPerl->Perl_get_opargs -#undef get_vtbl -#define get_vtbl pPerl->Perl_get_vtbl -#undef gp_free -#define gp_free pPerl->Perl_gp_free -#undef gp_ref -#define gp_ref pPerl->Perl_gp_ref -#undef gv_AVadd -#define gv_AVadd pPerl->Perl_gv_AVadd -#undef gv_HVadd -#define gv_HVadd pPerl->Perl_gv_HVadd -#undef gv_IOadd -#define gv_IOadd pPerl->Perl_gv_IOadd -#undef gv_autoload4 -#define gv_autoload4 pPerl->Perl_gv_autoload4 -#undef gv_check -#define gv_check pPerl->Perl_gv_check -#undef gv_dump -#define gv_dump pPerl->Perl_gv_dump -#undef gv_efullname -#define gv_efullname pPerl->Perl_gv_efullname -#undef gv_efullname3 -#define gv_efullname3 pPerl->Perl_gv_efullname3 #undef gv_ename #define gv_ename pPerl->Perl_gv_ename -#undef gv_fetchfile -#define gv_fetchfile pPerl->Perl_gv_fetchfile -#undef gv_fetchmeth -#define gv_fetchmeth pPerl->Perl_gv_fetchmeth -#undef gv_fetchmethod -#define gv_fetchmethod pPerl->Perl_gv_fetchmethod -#undef gv_fetchmethod_autoload -#define gv_fetchmethod_autoload pPerl->Perl_gv_fetchmethod_autoload -#undef gv_fetchpv -#define gv_fetchpv pPerl->Perl_gv_fetchpv -#undef gv_fullname -#define gv_fullname pPerl->Perl_gv_fullname -#undef gv_fullname3 -#define gv_fullname3 pPerl->Perl_gv_fullname3 -#undef gv_init -#define gv_init pPerl->Perl_gv_init #undef gv_init_sv #define gv_init_sv pPerl->Perl_gv_init_sv -#undef gv_stashpv -#define gv_stashpv pPerl->Perl_gv_stashpv -#undef gv_stashpvn -#define gv_stashpvn pPerl->Perl_gv_stashpvn -#undef gv_stashsv -#define gv_stashsv pPerl->Perl_gv_stashsv #undef hfreeentries #define hfreeentries pPerl->Perl_hfreeentries #undef hsplit #define hsplit pPerl->Perl_hsplit -#undef hv_clear -#define hv_clear pPerl->Perl_hv_clear -#undef hv_delayfree_ent -#define hv_delayfree_ent pPerl->Perl_hv_delayfree_ent -#undef hv_delete -#define hv_delete pPerl->Perl_hv_delete -#undef hv_delete_ent -#define hv_delete_ent pPerl->Perl_hv_delete_ent -#undef hv_exists -#define hv_exists pPerl->Perl_hv_exists -#undef hv_exists_ent -#define hv_exists_ent pPerl->Perl_hv_exists_ent -#undef hv_fetch -#define hv_fetch pPerl->Perl_hv_fetch -#undef hv_fetch_ent -#define hv_fetch_ent pPerl->Perl_hv_fetch_ent -#undef hv_free_ent -#define hv_free_ent pPerl->Perl_hv_free_ent -#undef hv_iterinit -#define hv_iterinit pPerl->Perl_hv_iterinit -#undef hv_iterkey -#define hv_iterkey pPerl->Perl_hv_iterkey -#undef hv_iterkeysv -#define hv_iterkeysv pPerl->Perl_hv_iterkeysv -#undef hv_iternext -#define hv_iternext pPerl->Perl_hv_iternext -#undef hv_iternextsv -#define hv_iternextsv pPerl->Perl_hv_iternextsv -#undef hv_iterval -#define hv_iterval pPerl->Perl_hv_iterval -#undef hv_ksplit -#define hv_ksplit pPerl->Perl_hv_ksplit -#undef hv_magic -#define hv_magic pPerl->Perl_hv_magic -#undef hv_store -#define hv_store pPerl->Perl_hv_store -#undef hv_store_ent -#define hv_store_ent pPerl->Perl_hv_store_ent -#undef hv_undef -#define hv_undef pPerl->Perl_hv_undef -#undef ibcmp -#define ibcmp pPerl->Perl_ibcmp -#undef ibcmp_locale -#define ibcmp_locale pPerl->Perl_ibcmp_locale #undef incl_perldb #define incl_perldb pPerl->Perl_incl_perldb #undef incline #define incline pPerl->Perl_incline #undef incpush #define incpush pPerl->Perl_incpush -#undef ingroup -#define ingroup pPerl->Perl_ingroup #undef init_debugger #define init_debugger pPerl->Perl_init_debugger #undef init_ids @@ -1345,238 +2907,32 @@ #define init_postdump_symbols pPerl->Perl_init_postdump_symbols #undef init_predump_symbols #define init_predump_symbols pPerl->Perl_init_predump_symbols -#undef init_stacks -#define init_stacks pPerl->Perl_init_stacks -#undef init_thread_intern -#define init_thread_intern pPerl->Perl_init_thread_intern -#undef instr -#define instr pPerl->Perl_instr -#undef intro_my -#define intro_my pPerl->Perl_intro_my #undef intuit_method #define intuit_method pPerl->Perl_intuit_method #undef intuit_more #define intuit_more pPerl->Perl_intuit_more -#undef invert -#define invert pPerl->Perl_invert -#undef io_close -#define io_close pPerl->Perl_io_close #undef is_an_int #define is_an_int pPerl->Perl_is_an_int #undef is_handle_constructor #define is_handle_constructor pPerl->Perl_is_handle_constructor -#undef is_uni_alnum -#define is_uni_alnum pPerl->Perl_is_uni_alnum -#undef is_uni_alnum_lc -#define is_uni_alnum_lc pPerl->Perl_is_uni_alnum_lc -#undef is_uni_alpha -#define is_uni_alpha pPerl->Perl_is_uni_alpha -#undef is_uni_alpha_lc -#define is_uni_alpha_lc pPerl->Perl_is_uni_alpha_lc -#undef is_uni_digit -#define is_uni_digit pPerl->Perl_is_uni_digit -#undef is_uni_digit_lc -#define is_uni_digit_lc pPerl->Perl_is_uni_digit_lc -#undef is_uni_idfirst -#define is_uni_idfirst pPerl->Perl_is_uni_idfirst -#undef is_uni_idfirst_lc -#define is_uni_idfirst_lc pPerl->Perl_is_uni_idfirst_lc -#undef is_uni_lower -#define is_uni_lower pPerl->Perl_is_uni_lower -#undef is_uni_lower_lc -#define is_uni_lower_lc pPerl->Perl_is_uni_lower_lc -#undef is_uni_print -#define is_uni_print pPerl->Perl_is_uni_print -#undef is_uni_print_lc -#define is_uni_print_lc pPerl->Perl_is_uni_print_lc -#undef is_uni_space -#define is_uni_space pPerl->Perl_is_uni_space -#undef is_uni_space_lc -#define is_uni_space_lc pPerl->Perl_is_uni_space_lc -#undef is_uni_upper -#define is_uni_upper pPerl->Perl_is_uni_upper -#undef is_uni_upper_lc -#define is_uni_upper_lc pPerl->Perl_is_uni_upper_lc -#undef is_utf8_alnum -#define is_utf8_alnum pPerl->Perl_is_utf8_alnum -#undef is_utf8_alpha -#define is_utf8_alpha pPerl->Perl_is_utf8_alpha -#undef is_utf8_digit -#define is_utf8_digit pPerl->Perl_is_utf8_digit -#undef is_utf8_idfirst -#define is_utf8_idfirst pPerl->Perl_is_utf8_idfirst -#undef is_utf8_lower -#define is_utf8_lower pPerl->Perl_is_utf8_lower -#undef is_utf8_mark -#define is_utf8_mark pPerl->Perl_is_utf8_mark -#undef is_utf8_print -#define is_utf8_print pPerl->Perl_is_utf8_print -#undef is_utf8_space -#define is_utf8_space pPerl->Perl_is_utf8_space -#undef is_utf8_upper -#define is_utf8_upper pPerl->Perl_is_utf8_upper #undef isa_lookup #define isa_lookup pPerl->Perl_isa_lookup -#undef jmaybe -#define jmaybe pPerl->Perl_jmaybe -#undef keyword -#define keyword pPerl->Perl_keyword -#undef leave_scope -#define leave_scope pPerl->Perl_leave_scope -#undef lex_end -#define lex_end pPerl->Perl_lex_end -#undef lex_start -#define lex_start pPerl->Perl_lex_start -#undef linklist -#define linklist pPerl->Perl_linklist -#undef list -#define list pPerl->Perl_list #undef list_assignment #define list_assignment pPerl->Perl_list_assignment -#undef listkids -#define listkids pPerl->Perl_listkids -#undef localize -#define localize pPerl->Perl_localize -#undef looks_like_number -#define looks_like_number pPerl->Perl_looks_like_number #undef lop #define lop pPerl->Perl_lop -#undef magic_clear_all_env -#define magic_clear_all_env pPerl->Perl_magic_clear_all_env -#undef magic_clearenv -#define magic_clearenv pPerl->Perl_magic_clearenv -#undef magic_clearpack -#define magic_clearpack pPerl->Perl_magic_clearpack -#undef magic_clearsig -#define magic_clearsig pPerl->Perl_magic_clearsig -#undef magic_dump -#define magic_dump pPerl->Perl_magic_dump -#undef magic_existspack -#define magic_existspack pPerl->Perl_magic_existspack -#undef magic_freeregexp -#define magic_freeregexp pPerl->Perl_magic_freeregexp -#undef magic_get -#define magic_get pPerl->Perl_magic_get -#undef magic_getarylen -#define magic_getarylen pPerl->Perl_magic_getarylen -#undef magic_getdefelem -#define magic_getdefelem pPerl->Perl_magic_getdefelem -#undef magic_getglob -#define magic_getglob pPerl->Perl_magic_getglob -#undef magic_getnkeys -#define magic_getnkeys pPerl->Perl_magic_getnkeys -#undef magic_getpack -#define magic_getpack pPerl->Perl_magic_getpack -#undef magic_getpos -#define magic_getpos pPerl->Perl_magic_getpos -#undef magic_getsig -#define magic_getsig pPerl->Perl_magic_getsig -#undef magic_getsubstr -#define magic_getsubstr pPerl->Perl_magic_getsubstr -#undef magic_gettaint -#define magic_gettaint pPerl->Perl_magic_gettaint -#undef magic_getuvar -#define magic_getuvar pPerl->Perl_magic_getuvar -#undef magic_getvec -#define magic_getvec pPerl->Perl_magic_getvec -#undef magic_killbackrefs -#define magic_killbackrefs pPerl->Perl_magic_killbackrefs -#undef magic_len -#define magic_len pPerl->Perl_magic_len #undef magic_methcall #define magic_methcall pPerl->Perl_magic_methcall #undef magic_methcall #define magic_methcall pPerl->Perl_magic_methcall #undef magic_methpack #define magic_methpack pPerl->Perl_magic_methpack -#undef magic_mutexfree -#define magic_mutexfree pPerl->Perl_magic_mutexfree -#undef magic_nextpack -#define magic_nextpack pPerl->Perl_magic_nextpack -#undef magic_regdata_cnt -#define magic_regdata_cnt pPerl->Perl_magic_regdata_cnt -#undef magic_regdatum_get -#define magic_regdatum_get pPerl->Perl_magic_regdatum_get -#undef magic_set -#define magic_set pPerl->Perl_magic_set -#undef magic_set_all_env -#define magic_set_all_env pPerl->Perl_magic_set_all_env -#undef magic_setamagic -#define magic_setamagic pPerl->Perl_magic_setamagic -#undef magic_setarylen -#define magic_setarylen pPerl->Perl_magic_setarylen -#undef magic_setbm -#define magic_setbm pPerl->Perl_magic_setbm -#undef magic_setcollxfrm -#define magic_setcollxfrm pPerl->Perl_magic_setcollxfrm -#undef magic_setdbline -#define magic_setdbline pPerl->Perl_magic_setdbline -#undef magic_setdefelem -#define magic_setdefelem pPerl->Perl_magic_setdefelem -#undef magic_setenv -#define magic_setenv pPerl->Perl_magic_setenv -#undef magic_setfm -#define magic_setfm pPerl->Perl_magic_setfm -#undef magic_setglob -#define magic_setglob pPerl->Perl_magic_setglob -#undef magic_setisa -#define magic_setisa pPerl->Perl_magic_setisa -#undef magic_setmglob -#define magic_setmglob pPerl->Perl_magic_setmglob -#undef magic_setnkeys -#define magic_setnkeys pPerl->Perl_magic_setnkeys -#undef magic_setpack -#define magic_setpack pPerl->Perl_magic_setpack -#undef magic_setpos -#define magic_setpos pPerl->Perl_magic_setpos -#undef magic_setsig -#define magic_setsig pPerl->Perl_magic_setsig -#undef magic_setsubstr -#define magic_setsubstr pPerl->Perl_magic_setsubstr -#undef magic_settaint -#define magic_settaint pPerl->Perl_magic_settaint -#undef magic_setuvar -#define magic_setuvar pPerl->Perl_magic_setuvar -#undef magic_setvec -#define magic_setvec pPerl->Perl_magic_setvec -#undef magic_sizepack -#define magic_sizepack pPerl->Perl_magic_sizepack -#undef magic_wipepack -#define magic_wipepack pPerl->Perl_magic_wipepack -#undef magicname -#define magicname pPerl->Perl_magicname -#undef malloced_size -#define malloced_size pPerl->Perl_malloced_size -#undef markstack_grow -#define markstack_grow pPerl->Perl_markstack_grow -#undef mem_collxfrm -#define mem_collxfrm pPerl->Perl_mem_collxfrm -#undef mess -#define mess pPerl->Perl_mess +#undef main +#define main pPerl->Perl_main #undef mess_alloc #define mess_alloc pPerl->Perl_mess_alloc -#undef mg_clear -#define mg_clear pPerl->Perl_mg_clear -#undef mg_copy -#define mg_copy pPerl->Perl_mg_copy -#undef mg_find -#define mg_find pPerl->Perl_mg_find -#undef mg_free -#define mg_free pPerl->Perl_mg_free -#undef mg_get -#define mg_get pPerl->Perl_mg_get -#undef mg_length -#define mg_length pPerl->Perl_mg_length -#undef mg_magical -#define mg_magical pPerl->Perl_mg_magical -#undef mg_set -#define mg_set pPerl->Perl_mg_set -#undef mg_size -#define mg_size pPerl->Perl_mg_size #undef missingterm #define missingterm pPerl->Perl_missingterm -#undef mod -#define mod pPerl->Perl_mod #undef modkids #define modkids pPerl->Perl_modkids #undef more_he @@ -1591,156 +2947,20 @@ #define more_xpv pPerl->Perl_more_xpv #undef more_xrv #define more_xrv pPerl->Perl_more_xrv -#undef moreswitches -#define moreswitches pPerl->Perl_moreswitches #undef mul128 #define mul128 pPerl->Perl_mul128 -#undef my -#define my pPerl->Perl_my -#undef my_bcopy -#define my_bcopy pPerl->Perl_my_bcopy -#undef my_bzero -#define my_bzero pPerl->Perl_my_bzero -#undef my_chsize -#define my_chsize pPerl->Perl_my_chsize -#undef my_exit -#define my_exit pPerl->Perl_my_exit #undef my_exit_jump #define my_exit_jump pPerl->Perl_my_exit_jump -#undef my_failure_exit -#define my_failure_exit pPerl->Perl_my_failure_exit -#undef my_fflush_all -#define my_fflush_all pPerl->Perl_my_fflush_all -#undef my_htonl -#define my_htonl pPerl->Perl_my_htonl -#undef my_lstat -#define my_lstat pPerl->Perl_my_lstat -#undef my_memcmp -#define my_memcmp pPerl->Perl_my_memcmp -#undef my_memset -#define my_memset pPerl->Perl_my_memset -#undef my_ntohl -#define my_ntohl pPerl->Perl_my_ntohl -#undef my_pclose -#define my_pclose pPerl->Perl_my_pclose -#undef my_popen -#define my_popen pPerl->Perl_my_popen #undef my_safemalloc #define my_safemalloc pPerl->Perl_my_safemalloc -#undef my_setenv -#define my_setenv pPerl->Perl_my_setenv -#undef my_stat -#define my_stat pPerl->Perl_my_stat -#undef my_swap -#define my_swap pPerl->Perl_my_swap -#undef my_unexec -#define my_unexec pPerl->Perl_my_unexec -#undef newANONHASH -#define newANONHASH pPerl->Perl_newANONHASH -#undef newANONLIST -#define newANONLIST pPerl->Perl_newANONLIST -#undef newANONSUB -#define newANONSUB pPerl->Perl_newANONSUB -#undef newASSIGNOP -#define newASSIGNOP pPerl->Perl_newASSIGNOP -#undef newAV -#define newAV pPerl->Perl_newAV -#undef newAVREF -#define newAVREF pPerl->Perl_newAVREF -#undef newBINOP -#define newBINOP pPerl->Perl_newBINOP -#undef newCONDOP -#define newCONDOP pPerl->Perl_newCONDOP -#undef newCONSTSUB -#define newCONSTSUB pPerl->Perl_newCONSTSUB -#undef newCVREF -#define newCVREF pPerl->Perl_newCVREF #undef newDEFSVOP #define newDEFSVOP pPerl->Perl_newDEFSVOP -#undef newFORM -#define newFORM pPerl->Perl_newFORM -#undef newFOROP -#define newFOROP pPerl->Perl_newFOROP -#undef newGVOP -#define newGVOP pPerl->Perl_newGVOP -#undef newGVREF -#define newGVREF pPerl->Perl_newGVREF -#undef newGVgen -#define newGVgen pPerl->Perl_newGVgen -#undef newHV -#define newHV pPerl->Perl_newHV -#undef newHVREF -#define newHVREF pPerl->Perl_newHVREF -#undef newHVhv -#define newHVhv pPerl->Perl_newHVhv -#undef newIO -#define newIO pPerl->Perl_newIO -#undef newLISTOP -#define newLISTOP pPerl->Perl_newLISTOP -#undef newLOGOP -#define newLOGOP pPerl->Perl_newLOGOP -#undef newLOOPEX -#define newLOOPEX pPerl->Perl_newLOOPEX -#undef newLOOPOP -#define newLOOPOP pPerl->Perl_newLOOPOP -#undef newNULLLIST -#define newNULLLIST pPerl->Perl_newNULLLIST -#undef newOP -#define newOP pPerl->Perl_newOP -#undef newPMOP -#define newPMOP pPerl->Perl_newPMOP -#undef newPROG -#define newPROG pPerl->Perl_newPROG -#undef newPVOP -#define newPVOP pPerl->Perl_newPVOP -#undef newRANGE -#define newRANGE pPerl->Perl_newRANGE -#undef newRV -#define newRV pPerl->Perl_newRV -#undef newRV_noinc -#define newRV_noinc pPerl->Perl_newRV_noinc -#undef newSLICEOP -#define newSLICEOP pPerl->Perl_newSLICEOP -#undef newSTATEOP -#define newSTATEOP pPerl->Perl_newSTATEOP -#undef newSUB -#define newSUB pPerl->Perl_newSUB -#undef newSV -#define newSV pPerl->Perl_newSV -#undef newSVOP -#define newSVOP pPerl->Perl_newSVOP -#undef newSVREF -#define newSVREF pPerl->Perl_newSVREF -#undef newSViv -#define newSViv pPerl->Perl_newSViv -#undef newSVnv -#define newSVnv pPerl->Perl_newSVnv -#undef newSVpv -#define newSVpv pPerl->Perl_newSVpv -#undef newSVpvf -#define newSVpvf pPerl->Perl_newSVpvf -#undef newSVpvn -#define newSVpvn pPerl->Perl_newSVpvn -#undef newSVrv -#define newSVrv pPerl->Perl_newSVrv -#undef newSVsv -#define newSVsv pPerl->Perl_newSVsv -#undef newUNOP -#define newUNOP pPerl->Perl_newUNOP -#undef newWHILEOP -#define newWHILEOP pPerl->Perl_newWHILEOP -#undef newXS -#define newXS pPerl->Perl_newXS #undef new_constant #define new_constant pPerl->Perl_new_constant #undef new_he #define new_he pPerl->Perl_new_he #undef new_logop #define new_logop pPerl->Perl_new_logop -#undef new_stackinfo -#define new_stackinfo pPerl->Perl_new_stackinfo -#undef new_struct_thread -#define new_struct_thread pPerl->Perl_new_struct_thread #undef new_xiv #define new_xiv pPerl->Perl_new_xiv #undef new_xnv @@ -1749,12 +2969,8 @@ #define new_xpv pPerl->Perl_new_xpv #undef new_xrv #define new_xrv pPerl->Perl_new_xrv -#undef nextargv -#define nextargv pPerl->Perl_nextargv #undef nextchar #define nextchar pPerl->Perl_nextchar -#undef ninstr -#define ninstr pPerl->Perl_ninstr #undef no_bareword_allowed #define no_bareword_allowed pPerl->Perl_no_bareword_allowed #undef no_fh_allowed @@ -1767,42 +2983,12 @@ #define nuke_stacks pPerl->Perl_nuke_stacks #undef null #define null pPerl->Perl_null -#undef oopsAV -#define oopsAV pPerl->Perl_oopsAV -#undef oopsCV -#define oopsCV pPerl->Perl_oopsCV -#undef oopsHV -#define oopsHV pPerl->Perl_oopsHV -#undef op_const_sv -#define op_const_sv pPerl->Perl_op_const_sv -#undef op_dump -#define op_dump pPerl->Perl_op_dump -#undef op_free -#define op_free pPerl->Perl_op_free #undef open_script #define open_script pPerl->Perl_open_script -#undef package -#define package pPerl->Perl_package -#undef pad_alloc -#define pad_alloc pPerl->Perl_pad_alloc -#undef pad_allocmy -#define pad_allocmy pPerl->Perl_pad_allocmy #undef pad_findlex #define pad_findlex pPerl->Perl_pad_findlex -#undef pad_findmy -#define pad_findmy pPerl->Perl_pad_findmy -#undef pad_free -#define pad_free pPerl->Perl_pad_free -#undef pad_leavemy -#define pad_leavemy pPerl->Perl_pad_leavemy -#undef pad_reset -#define pad_reset pPerl->Perl_pad_reset -#undef pad_sv -#define pad_sv pPerl->Perl_pad_sv -#undef pad_swipe -#define pad_swipe pPerl->Perl_pad_swipe -#undef peep -#define peep pPerl->Perl_peep +#undef perl_alloc +#define perl_alloc pPerl->perl_alloc #undef perl_atexit #define perl_atexit pPerl->perl_atexit #undef perl_call_argv @@ -1819,6 +3005,10 @@ #define perl_call_xbody pPerl->perl_call_xbody #undef perl_construct #define perl_construct pPerl->perl_construct +#undef perl_construct +#define perl_construct pPerl->perl_construct +#undef perl_destruct +#define perl_destruct pPerl->perl_destruct #undef perl_destruct #define perl_destruct pPerl->perl_destruct #undef perl_eval_pv @@ -1827,6 +3017,8 @@ #define perl_eval_sv pPerl->perl_eval_sv #undef perl_free #define perl_free pPerl->perl_free +#undef perl_free +#define perl_free pPerl->perl_free #undef perl_get_av #define perl_get_av pPerl->perl_get_av #undef perl_get_cv @@ -1847,742 +3039,26 @@ #define perl_new_numeric pPerl->perl_new_numeric #undef perl_parse #define perl_parse pPerl->perl_parse +#undef perl_parse +#define perl_parse pPerl->perl_parse #undef perl_parse_body #define perl_parse_body pPerl->perl_parse_body #undef perl_require_pv #define perl_require_pv pPerl->perl_require_pv #undef perl_run #define perl_run pPerl->perl_run +#undef perl_run +#define perl_run pPerl->perl_run #undef perl_run_body #define perl_run_body pPerl->perl_run_body #undef perl_set_numeric_local #define perl_set_numeric_local pPerl->perl_set_numeric_local #undef perl_set_numeric_standard #define perl_set_numeric_standard pPerl->perl_set_numeric_standard -#undef pidgone -#define pidgone pPerl->Perl_pidgone -#undef pmflag -#define pmflag pPerl->Perl_pmflag -#undef pmop_dump -#define pmop_dump pPerl->Perl_pmop_dump -#undef pmruntime -#define pmruntime pPerl->Perl_pmruntime -#undef pmtrans -#define pmtrans pPerl->Perl_pmtrans -#undef pop_return -#define pop_return pPerl->Perl_pop_return -#undef pop_scope -#define pop_scope pPerl->Perl_pop_scope -#undef pp_aassign -#define pp_aassign pPerl->Perl_pp_aassign -#undef pp_abs -#define pp_abs pPerl->Perl_pp_abs -#undef pp_accept -#define pp_accept pPerl->Perl_pp_accept -#undef pp_add -#define pp_add pPerl->Perl_pp_add -#undef pp_aelem -#define pp_aelem pPerl->Perl_pp_aelem -#undef pp_aelemfast -#define pp_aelemfast pPerl->Perl_pp_aelemfast -#undef pp_alarm -#define pp_alarm pPerl->Perl_pp_alarm -#undef pp_and -#define pp_and pPerl->Perl_pp_and -#undef pp_andassign -#define pp_andassign pPerl->Perl_pp_andassign -#undef pp_anoncode -#define pp_anoncode pPerl->Perl_pp_anoncode -#undef pp_anonhash -#define pp_anonhash pPerl->Perl_pp_anonhash -#undef pp_anonlist -#define pp_anonlist pPerl->Perl_pp_anonlist -#undef pp_aslice -#define pp_aslice pPerl->Perl_pp_aslice -#undef pp_atan2 -#define pp_atan2 pPerl->Perl_pp_atan2 -#undef pp_av2arylen -#define pp_av2arylen pPerl->Perl_pp_av2arylen -#undef pp_backtick -#define pp_backtick pPerl->Perl_pp_backtick -#undef pp_bind -#define pp_bind pPerl->Perl_pp_bind -#undef pp_binmode -#define pp_binmode pPerl->Perl_pp_binmode -#undef pp_bit_and -#define pp_bit_and pPerl->Perl_pp_bit_and -#undef pp_bit_or -#define pp_bit_or pPerl->Perl_pp_bit_or -#undef pp_bit_xor -#define pp_bit_xor pPerl->Perl_pp_bit_xor -#undef pp_bless -#define pp_bless pPerl->Perl_pp_bless -#undef pp_caller -#define pp_caller pPerl->Perl_pp_caller -#undef pp_chdir -#define pp_chdir pPerl->Perl_pp_chdir -#undef pp_chmod -#define pp_chmod pPerl->Perl_pp_chmod -#undef pp_chomp -#define pp_chomp pPerl->Perl_pp_chomp -#undef pp_chop -#define pp_chop pPerl->Perl_pp_chop -#undef pp_chown -#define pp_chown pPerl->Perl_pp_chown -#undef pp_chr -#define pp_chr pPerl->Perl_pp_chr -#undef pp_chroot -#define pp_chroot pPerl->Perl_pp_chroot -#undef pp_close -#define pp_close pPerl->Perl_pp_close -#undef pp_closedir -#define pp_closedir pPerl->Perl_pp_closedir -#undef pp_complement -#define pp_complement pPerl->Perl_pp_complement -#undef pp_concat -#define pp_concat pPerl->Perl_pp_concat -#undef pp_cond_expr -#define pp_cond_expr pPerl->Perl_pp_cond_expr -#undef pp_connect -#define pp_connect pPerl->Perl_pp_connect -#undef pp_const -#define pp_const pPerl->Perl_pp_const -#undef pp_cos -#define pp_cos pPerl->Perl_pp_cos -#undef pp_crypt -#define pp_crypt pPerl->Perl_pp_crypt -#undef pp_dbmclose -#define pp_dbmclose pPerl->Perl_pp_dbmclose -#undef pp_dbmopen -#define pp_dbmopen pPerl->Perl_pp_dbmopen -#undef pp_dbstate -#define pp_dbstate pPerl->Perl_pp_dbstate -#undef pp_defined -#define pp_defined pPerl->Perl_pp_defined -#undef pp_delete -#define pp_delete pPerl->Perl_pp_delete -#undef pp_die -#define pp_die pPerl->Perl_pp_die -#undef pp_divide -#define pp_divide pPerl->Perl_pp_divide -#undef pp_dofile -#define pp_dofile pPerl->Perl_pp_dofile -#undef pp_dump -#define pp_dump pPerl->Perl_pp_dump -#undef pp_each -#define pp_each pPerl->Perl_pp_each -#undef pp_egrent -#define pp_egrent pPerl->Perl_pp_egrent -#undef pp_ehostent -#define pp_ehostent pPerl->Perl_pp_ehostent -#undef pp_enetent -#define pp_enetent pPerl->Perl_pp_enetent -#undef pp_enter -#define pp_enter pPerl->Perl_pp_enter -#undef pp_entereval -#define pp_entereval pPerl->Perl_pp_entereval -#undef pp_enteriter -#define pp_enteriter pPerl->Perl_pp_enteriter -#undef pp_enterloop -#define pp_enterloop pPerl->Perl_pp_enterloop -#undef pp_entersub -#define pp_entersub pPerl->Perl_pp_entersub -#undef pp_entertry -#define pp_entertry pPerl->Perl_pp_entertry -#undef pp_enterwrite -#define pp_enterwrite pPerl->Perl_pp_enterwrite -#undef pp_eof -#define pp_eof pPerl->Perl_pp_eof -#undef pp_eprotoent -#define pp_eprotoent pPerl->Perl_pp_eprotoent -#undef pp_epwent -#define pp_epwent pPerl->Perl_pp_epwent -#undef pp_eq -#define pp_eq pPerl->Perl_pp_eq -#undef pp_eservent -#define pp_eservent pPerl->Perl_pp_eservent -#undef pp_exec -#define pp_exec pPerl->Perl_pp_exec -#undef pp_exists -#define pp_exists pPerl->Perl_pp_exists -#undef pp_exit -#define pp_exit pPerl->Perl_pp_exit -#undef pp_exp -#define pp_exp pPerl->Perl_pp_exp -#undef pp_fcntl -#define pp_fcntl pPerl->Perl_pp_fcntl -#undef pp_fileno -#define pp_fileno pPerl->Perl_pp_fileno -#undef pp_flip -#define pp_flip pPerl->Perl_pp_flip -#undef pp_flock -#define pp_flock pPerl->Perl_pp_flock -#undef pp_flop -#define pp_flop pPerl->Perl_pp_flop -#undef pp_fork -#define pp_fork pPerl->Perl_pp_fork -#undef pp_formline -#define pp_formline pPerl->Perl_pp_formline -#undef pp_ftatime -#define pp_ftatime pPerl->Perl_pp_ftatime -#undef pp_ftbinary -#define pp_ftbinary pPerl->Perl_pp_ftbinary -#undef pp_ftblk -#define pp_ftblk pPerl->Perl_pp_ftblk -#undef pp_ftchr -#define pp_ftchr pPerl->Perl_pp_ftchr -#undef pp_ftctime -#define pp_ftctime pPerl->Perl_pp_ftctime -#undef pp_ftdir -#define pp_ftdir pPerl->Perl_pp_ftdir -#undef pp_fteexec -#define pp_fteexec pPerl->Perl_pp_fteexec -#undef pp_fteowned -#define pp_fteowned pPerl->Perl_pp_fteowned -#undef pp_fteread -#define pp_fteread pPerl->Perl_pp_fteread -#undef pp_ftewrite -#define pp_ftewrite pPerl->Perl_pp_ftewrite -#undef pp_ftfile -#define pp_ftfile pPerl->Perl_pp_ftfile -#undef pp_ftis -#define pp_ftis pPerl->Perl_pp_ftis -#undef pp_ftlink -#define pp_ftlink pPerl->Perl_pp_ftlink -#undef pp_ftmtime -#define pp_ftmtime pPerl->Perl_pp_ftmtime -#undef pp_ftpipe -#define pp_ftpipe pPerl->Perl_pp_ftpipe -#undef pp_ftrexec -#define pp_ftrexec pPerl->Perl_pp_ftrexec -#undef pp_ftrowned -#define pp_ftrowned pPerl->Perl_pp_ftrowned -#undef pp_ftrread -#define pp_ftrread pPerl->Perl_pp_ftrread -#undef pp_ftrwrite -#define pp_ftrwrite pPerl->Perl_pp_ftrwrite -#undef pp_ftsgid -#define pp_ftsgid pPerl->Perl_pp_ftsgid -#undef pp_ftsize -#define pp_ftsize pPerl->Perl_pp_ftsize -#undef pp_ftsock -#define pp_ftsock pPerl->Perl_pp_ftsock -#undef pp_ftsuid -#define pp_ftsuid pPerl->Perl_pp_ftsuid -#undef pp_ftsvtx -#define pp_ftsvtx pPerl->Perl_pp_ftsvtx -#undef pp_fttext -#define pp_fttext pPerl->Perl_pp_fttext -#undef pp_fttty -#define pp_fttty pPerl->Perl_pp_fttty -#undef pp_ftzero -#define pp_ftzero pPerl->Perl_pp_ftzero -#undef pp_ge -#define pp_ge pPerl->Perl_pp_ge -#undef pp_gelem -#define pp_gelem pPerl->Perl_pp_gelem -#undef pp_getc -#define pp_getc pPerl->Perl_pp_getc -#undef pp_getlogin -#define pp_getlogin pPerl->Perl_pp_getlogin -#undef pp_getpeername -#define pp_getpeername pPerl->Perl_pp_getpeername -#undef pp_getpgrp -#define pp_getpgrp pPerl->Perl_pp_getpgrp -#undef pp_getppid -#define pp_getppid pPerl->Perl_pp_getppid -#undef pp_getpriority -#define pp_getpriority pPerl->Perl_pp_getpriority -#undef pp_getsockname -#define pp_getsockname pPerl->Perl_pp_getsockname -#undef pp_ggrent -#define pp_ggrent pPerl->Perl_pp_ggrent -#undef pp_ggrgid -#define pp_ggrgid pPerl->Perl_pp_ggrgid -#undef pp_ggrnam -#define pp_ggrnam pPerl->Perl_pp_ggrnam -#undef pp_ghbyaddr -#define pp_ghbyaddr pPerl->Perl_pp_ghbyaddr -#undef pp_ghbyname -#define pp_ghbyname pPerl->Perl_pp_ghbyname -#undef pp_ghostent -#define pp_ghostent pPerl->Perl_pp_ghostent -#undef pp_glob -#define pp_glob pPerl->Perl_pp_glob -#undef pp_gmtime -#define pp_gmtime pPerl->Perl_pp_gmtime -#undef pp_gnbyaddr -#define pp_gnbyaddr pPerl->Perl_pp_gnbyaddr -#undef pp_gnbyname -#define pp_gnbyname pPerl->Perl_pp_gnbyname -#undef pp_gnetent -#define pp_gnetent pPerl->Perl_pp_gnetent -#undef pp_goto -#define pp_goto pPerl->Perl_pp_goto -#undef pp_gpbyname -#define pp_gpbyname pPerl->Perl_pp_gpbyname -#undef pp_gpbynumber -#define pp_gpbynumber pPerl->Perl_pp_gpbynumber -#undef pp_gprotoent -#define pp_gprotoent pPerl->Perl_pp_gprotoent -#undef pp_gpwent -#define pp_gpwent pPerl->Perl_pp_gpwent -#undef pp_gpwnam -#define pp_gpwnam pPerl->Perl_pp_gpwnam -#undef pp_gpwuid -#define pp_gpwuid pPerl->Perl_pp_gpwuid -#undef pp_grepstart -#define pp_grepstart pPerl->Perl_pp_grepstart -#undef pp_grepwhile -#define pp_grepwhile pPerl->Perl_pp_grepwhile -#undef pp_gsbyname -#define pp_gsbyname pPerl->Perl_pp_gsbyname -#undef pp_gsbyport -#define pp_gsbyport pPerl->Perl_pp_gsbyport -#undef pp_gservent -#define pp_gservent pPerl->Perl_pp_gservent -#undef pp_gsockopt -#define pp_gsockopt pPerl->Perl_pp_gsockopt -#undef pp_gt -#define pp_gt pPerl->Perl_pp_gt -#undef pp_gv -#define pp_gv pPerl->Perl_pp_gv -#undef pp_gvsv -#define pp_gvsv pPerl->Perl_pp_gvsv -#undef pp_helem -#define pp_helem pPerl->Perl_pp_helem -#undef pp_hex -#define pp_hex pPerl->Perl_pp_hex -#undef pp_hslice -#define pp_hslice pPerl->Perl_pp_hslice -#undef pp_i_add -#define pp_i_add pPerl->Perl_pp_i_add -#undef pp_i_divide -#define pp_i_divide pPerl->Perl_pp_i_divide -#undef pp_i_eq -#define pp_i_eq pPerl->Perl_pp_i_eq -#undef pp_i_ge -#define pp_i_ge pPerl->Perl_pp_i_ge -#undef pp_i_gt -#define pp_i_gt pPerl->Perl_pp_i_gt -#undef pp_i_le -#define pp_i_le pPerl->Perl_pp_i_le -#undef pp_i_lt -#define pp_i_lt pPerl->Perl_pp_i_lt -#undef pp_i_modulo -#define pp_i_modulo pPerl->Perl_pp_i_modulo -#undef pp_i_multiply -#define pp_i_multiply pPerl->Perl_pp_i_multiply -#undef pp_i_ncmp -#define pp_i_ncmp pPerl->Perl_pp_i_ncmp -#undef pp_i_ne -#define pp_i_ne pPerl->Perl_pp_i_ne -#undef pp_i_negate -#define pp_i_negate pPerl->Perl_pp_i_negate -#undef pp_i_subtract -#define pp_i_subtract pPerl->Perl_pp_i_subtract -#undef pp_index -#define pp_index pPerl->Perl_pp_index -#undef pp_int -#define pp_int pPerl->Perl_pp_int -#undef pp_ioctl -#define pp_ioctl pPerl->Perl_pp_ioctl -#undef pp_iter -#define pp_iter pPerl->Perl_pp_iter -#undef pp_join -#define pp_join pPerl->Perl_pp_join -#undef pp_keys -#define pp_keys pPerl->Perl_pp_keys -#undef pp_kill -#define pp_kill pPerl->Perl_pp_kill -#undef pp_last -#define pp_last pPerl->Perl_pp_last -#undef pp_lc -#define pp_lc pPerl->Perl_pp_lc -#undef pp_lcfirst -#define pp_lcfirst pPerl->Perl_pp_lcfirst -#undef pp_le -#define pp_le pPerl->Perl_pp_le -#undef pp_leave -#define pp_leave pPerl->Perl_pp_leave -#undef pp_leaveeval -#define pp_leaveeval pPerl->Perl_pp_leaveeval -#undef pp_leaveloop -#define pp_leaveloop pPerl->Perl_pp_leaveloop -#undef pp_leavesub -#define pp_leavesub pPerl->Perl_pp_leavesub -#undef pp_leavetry -#define pp_leavetry pPerl->Perl_pp_leavetry -#undef pp_leavewrite -#define pp_leavewrite pPerl->Perl_pp_leavewrite -#undef pp_left_shift -#define pp_left_shift pPerl->Perl_pp_left_shift -#undef pp_length -#define pp_length pPerl->Perl_pp_length -#undef pp_lineseq -#define pp_lineseq pPerl->Perl_pp_lineseq -#undef pp_link -#define pp_link pPerl->Perl_pp_link -#undef pp_list -#define pp_list pPerl->Perl_pp_list -#undef pp_listen -#define pp_listen pPerl->Perl_pp_listen -#undef pp_localtime -#define pp_localtime pPerl->Perl_pp_localtime -#undef pp_lock -#define pp_lock pPerl->Perl_pp_lock -#undef pp_log -#define pp_log pPerl->Perl_pp_log -#undef pp_lslice -#define pp_lslice pPerl->Perl_pp_lslice -#undef pp_lstat -#define pp_lstat pPerl->Perl_pp_lstat -#undef pp_lt -#define pp_lt pPerl->Perl_pp_lt -#undef pp_mapstart -#define pp_mapstart pPerl->Perl_pp_mapstart -#undef pp_mapwhile -#define pp_mapwhile pPerl->Perl_pp_mapwhile -#undef pp_match -#define pp_match pPerl->Perl_pp_match -#undef pp_method -#define pp_method pPerl->Perl_pp_method -#undef pp_mkdir -#define pp_mkdir pPerl->Perl_pp_mkdir -#undef pp_modulo -#define pp_modulo pPerl->Perl_pp_modulo -#undef pp_msgctl -#define pp_msgctl pPerl->Perl_pp_msgctl -#undef pp_msgget -#define pp_msgget pPerl->Perl_pp_msgget -#undef pp_msgrcv -#define pp_msgrcv pPerl->Perl_pp_msgrcv -#undef pp_msgsnd -#define pp_msgsnd pPerl->Perl_pp_msgsnd -#undef pp_multiply -#define pp_multiply pPerl->Perl_pp_multiply -#undef pp_ncmp -#define pp_ncmp pPerl->Perl_pp_ncmp -#undef pp_ne -#define pp_ne pPerl->Perl_pp_ne -#undef pp_negate -#define pp_negate pPerl->Perl_pp_negate -#undef pp_next -#define pp_next pPerl->Perl_pp_next -#undef pp_nextstate -#define pp_nextstate pPerl->Perl_pp_nextstate -#undef pp_not -#define pp_not pPerl->Perl_pp_not -#undef pp_null -#define pp_null pPerl->Perl_pp_null -#undef pp_oct -#define pp_oct pPerl->Perl_pp_oct -#undef pp_open -#define pp_open pPerl->Perl_pp_open -#undef pp_open_dir -#define pp_open_dir pPerl->Perl_pp_open_dir -#undef pp_or -#define pp_or pPerl->Perl_pp_or -#undef pp_orassign -#define pp_orassign pPerl->Perl_pp_orassign -#undef pp_ord -#define pp_ord pPerl->Perl_pp_ord -#undef pp_pack -#define pp_pack pPerl->Perl_pp_pack -#undef pp_padany -#define pp_padany pPerl->Perl_pp_padany -#undef pp_padav -#define pp_padav pPerl->Perl_pp_padav -#undef pp_padhv -#define pp_padhv pPerl->Perl_pp_padhv -#undef pp_padsv -#define pp_padsv pPerl->Perl_pp_padsv -#undef pp_pipe_op -#define pp_pipe_op pPerl->Perl_pp_pipe_op -#undef pp_pop -#define pp_pop pPerl->Perl_pp_pop -#undef pp_pos -#define pp_pos pPerl->Perl_pp_pos -#undef pp_postdec -#define pp_postdec pPerl->Perl_pp_postdec -#undef pp_postinc -#define pp_postinc pPerl->Perl_pp_postinc -#undef pp_pow -#define pp_pow pPerl->Perl_pp_pow -#undef pp_predec -#define pp_predec pPerl->Perl_pp_predec -#undef pp_preinc -#define pp_preinc pPerl->Perl_pp_preinc -#undef pp_print -#define pp_print pPerl->Perl_pp_print -#undef pp_prototype -#define pp_prototype pPerl->Perl_pp_prototype -#undef pp_prtf -#define pp_prtf pPerl->Perl_pp_prtf -#undef pp_push -#define pp_push pPerl->Perl_pp_push -#undef pp_pushmark -#define pp_pushmark pPerl->Perl_pp_pushmark -#undef pp_pushre -#define pp_pushre pPerl->Perl_pp_pushre -#undef pp_qr -#define pp_qr pPerl->Perl_pp_qr -#undef pp_quotemeta -#define pp_quotemeta pPerl->Perl_pp_quotemeta -#undef pp_rand -#define pp_rand pPerl->Perl_pp_rand -#undef pp_range -#define pp_range pPerl->Perl_pp_range -#undef pp_rcatline -#define pp_rcatline pPerl->Perl_pp_rcatline -#undef pp_read -#define pp_read pPerl->Perl_pp_read -#undef pp_readdir -#define pp_readdir pPerl->Perl_pp_readdir -#undef pp_readline -#define pp_readline pPerl->Perl_pp_readline -#undef pp_readlink -#define pp_readlink pPerl->Perl_pp_readlink -#undef pp_recv -#define pp_recv pPerl->Perl_pp_recv -#undef pp_redo -#define pp_redo pPerl->Perl_pp_redo -#undef pp_ref -#define pp_ref pPerl->Perl_pp_ref -#undef pp_refgen -#define pp_refgen pPerl->Perl_pp_refgen -#undef pp_regcmaybe -#define pp_regcmaybe pPerl->Perl_pp_regcmaybe -#undef pp_regcomp -#define pp_regcomp pPerl->Perl_pp_regcomp -#undef pp_regcreset -#define pp_regcreset pPerl->Perl_pp_regcreset -#undef pp_rename -#define pp_rename pPerl->Perl_pp_rename -#undef pp_repeat -#define pp_repeat pPerl->Perl_pp_repeat -#undef pp_require -#define pp_require pPerl->Perl_pp_require -#undef pp_reset -#define pp_reset pPerl->Perl_pp_reset -#undef pp_return -#define pp_return pPerl->Perl_pp_return -#undef pp_reverse -#define pp_reverse pPerl->Perl_pp_reverse -#undef pp_rewinddir -#define pp_rewinddir pPerl->Perl_pp_rewinddir -#undef pp_right_shift -#define pp_right_shift pPerl->Perl_pp_right_shift -#undef pp_rindex -#define pp_rindex pPerl->Perl_pp_rindex -#undef pp_rmdir -#define pp_rmdir pPerl->Perl_pp_rmdir -#undef pp_rv2av -#define pp_rv2av pPerl->Perl_pp_rv2av -#undef pp_rv2cv -#define pp_rv2cv pPerl->Perl_pp_rv2cv -#undef pp_rv2gv -#define pp_rv2gv pPerl->Perl_pp_rv2gv -#undef pp_rv2hv -#define pp_rv2hv pPerl->Perl_pp_rv2hv -#undef pp_rv2sv -#define pp_rv2sv pPerl->Perl_pp_rv2sv -#undef pp_sassign -#define pp_sassign pPerl->Perl_pp_sassign -#undef pp_scalar -#define pp_scalar pPerl->Perl_pp_scalar -#undef pp_schomp -#define pp_schomp pPerl->Perl_pp_schomp -#undef pp_schop -#define pp_schop pPerl->Perl_pp_schop -#undef pp_scmp -#define pp_scmp pPerl->Perl_pp_scmp -#undef pp_scope -#define pp_scope pPerl->Perl_pp_scope -#undef pp_seek -#define pp_seek pPerl->Perl_pp_seek -#undef pp_seekdir -#define pp_seekdir pPerl->Perl_pp_seekdir -#undef pp_select -#define pp_select pPerl->Perl_pp_select -#undef pp_semctl -#define pp_semctl pPerl->Perl_pp_semctl -#undef pp_semget -#define pp_semget pPerl->Perl_pp_semget -#undef pp_semop -#define pp_semop pPerl->Perl_pp_semop -#undef pp_send -#define pp_send pPerl->Perl_pp_send -#undef pp_seq -#define pp_seq pPerl->Perl_pp_seq -#undef pp_setpgrp -#define pp_setpgrp pPerl->Perl_pp_setpgrp -#undef pp_setpriority -#define pp_setpriority pPerl->Perl_pp_setpriority -#undef pp_sge -#define pp_sge pPerl->Perl_pp_sge -#undef pp_sgrent -#define pp_sgrent pPerl->Perl_pp_sgrent -#undef pp_sgt -#define pp_sgt pPerl->Perl_pp_sgt -#undef pp_shift -#define pp_shift pPerl->Perl_pp_shift -#undef pp_shmctl -#define pp_shmctl pPerl->Perl_pp_shmctl -#undef pp_shmget -#define pp_shmget pPerl->Perl_pp_shmget -#undef pp_shmread -#define pp_shmread pPerl->Perl_pp_shmread -#undef pp_shmwrite -#define pp_shmwrite pPerl->Perl_pp_shmwrite -#undef pp_shostent -#define pp_shostent pPerl->Perl_pp_shostent -#undef pp_shutdown -#define pp_shutdown pPerl->Perl_pp_shutdown -#undef pp_sin -#define pp_sin pPerl->Perl_pp_sin -#undef pp_sle -#define pp_sle pPerl->Perl_pp_sle -#undef pp_sleep -#define pp_sleep pPerl->Perl_pp_sleep -#undef pp_slt -#define pp_slt pPerl->Perl_pp_slt -#undef pp_sne -#define pp_sne pPerl->Perl_pp_sne -#undef pp_snetent -#define pp_snetent pPerl->Perl_pp_snetent -#undef pp_socket -#define pp_socket pPerl->Perl_pp_socket -#undef pp_sockpair -#define pp_sockpair pPerl->Perl_pp_sockpair -#undef pp_sort -#define pp_sort pPerl->Perl_pp_sort -#undef pp_splice -#define pp_splice pPerl->Perl_pp_splice -#undef pp_split -#define pp_split pPerl->Perl_pp_split -#undef pp_sprintf -#define pp_sprintf pPerl->Perl_pp_sprintf -#undef pp_sprotoent -#define pp_sprotoent pPerl->Perl_pp_sprotoent -#undef pp_spwent -#define pp_spwent pPerl->Perl_pp_spwent -#undef pp_sqrt -#define pp_sqrt pPerl->Perl_pp_sqrt -#undef pp_srand -#define pp_srand pPerl->Perl_pp_srand -#undef pp_srefgen -#define pp_srefgen pPerl->Perl_pp_srefgen -#undef pp_sselect -#define pp_sselect pPerl->Perl_pp_sselect -#undef pp_sservent -#define pp_sservent pPerl->Perl_pp_sservent -#undef pp_ssockopt -#define pp_ssockopt pPerl->Perl_pp_ssockopt -#undef pp_stat -#define pp_stat pPerl->Perl_pp_stat -#undef pp_stringify -#define pp_stringify pPerl->Perl_pp_stringify -#undef pp_stub -#define pp_stub pPerl->Perl_pp_stub -#undef pp_study -#define pp_study pPerl->Perl_pp_study -#undef pp_subst -#define pp_subst pPerl->Perl_pp_subst -#undef pp_substcont -#define pp_substcont pPerl->Perl_pp_substcont -#undef pp_substr -#define pp_substr pPerl->Perl_pp_substr -#undef pp_subtract -#define pp_subtract pPerl->Perl_pp_subtract -#undef pp_symlink -#define pp_symlink pPerl->Perl_pp_symlink -#undef pp_syscall -#define pp_syscall pPerl->Perl_pp_syscall -#undef pp_sysopen -#define pp_sysopen pPerl->Perl_pp_sysopen -#undef pp_sysread -#define pp_sysread pPerl->Perl_pp_sysread -#undef pp_sysseek -#define pp_sysseek pPerl->Perl_pp_sysseek -#undef pp_system -#define pp_system pPerl->Perl_pp_system -#undef pp_syswrite -#define pp_syswrite pPerl->Perl_pp_syswrite -#undef pp_tell -#define pp_tell pPerl->Perl_pp_tell -#undef pp_telldir -#define pp_telldir pPerl->Perl_pp_telldir -#undef pp_threadsv -#define pp_threadsv pPerl->Perl_pp_threadsv -#undef pp_tie -#define pp_tie pPerl->Perl_pp_tie -#undef pp_tied -#define pp_tied pPerl->Perl_pp_tied -#undef pp_time -#define pp_time pPerl->Perl_pp_time -#undef pp_tms -#define pp_tms pPerl->Perl_pp_tms -#undef pp_trans -#define pp_trans pPerl->Perl_pp_trans -#undef pp_truncate -#define pp_truncate pPerl->Perl_pp_truncate -#undef pp_uc -#define pp_uc pPerl->Perl_pp_uc -#undef pp_ucfirst -#define pp_ucfirst pPerl->Perl_pp_ucfirst -#undef pp_umask -#define pp_umask pPerl->Perl_pp_umask -#undef pp_undef -#define pp_undef pPerl->Perl_pp_undef -#undef pp_unlink -#define pp_unlink pPerl->Perl_pp_unlink -#undef pp_unpack -#define pp_unpack pPerl->Perl_pp_unpack -#undef pp_unshift -#define pp_unshift pPerl->Perl_pp_unshift -#undef pp_unstack -#define pp_unstack pPerl->Perl_pp_unstack -#undef pp_untie -#define pp_untie pPerl->Perl_pp_untie -#undef pp_utime -#define pp_utime pPerl->Perl_pp_utime -#undef pp_values -#define pp_values pPerl->Perl_pp_values -#undef pp_vec -#define pp_vec pPerl->Perl_pp_vec -#undef pp_wait -#define pp_wait pPerl->Perl_pp_wait -#undef pp_waitpid -#define pp_waitpid pPerl->Perl_pp_waitpid -#undef pp_wantarray -#define pp_wantarray pPerl->Perl_pp_wantarray -#undef pp_warn -#define pp_warn pPerl->Perl_pp_warn -#undef pp_xor -#define pp_xor pPerl->Perl_pp_xor -#undef pregcomp -#define pregcomp pPerl->Perl_pregcomp -#undef pregexec -#define pregexec pPerl->Perl_pregexec -#undef pregfree -#define pregfree pPerl->Perl_pregfree -#undef prepend_elem -#define prepend_elem pPerl->Perl_prepend_elem -#undef push_return -#define push_return pPerl->Perl_push_return -#undef push_scope -#define push_scope pPerl->Perl_push_scope -#undef pv_display -#define pv_display pPerl->Perl_pv_display #undef qsortsv #define qsortsv pPerl->Perl_qsortsv #undef re_croak2 #define re_croak2 pPerl->Perl_re_croak2 -#undef ref -#define ref pPerl->Perl_ref -#undef refkids -#define refkids pPerl->Perl_refkids #undef refto #define refto pPerl->Perl_refto #undef reg @@ -2609,10 +3085,6 @@ #define regcppush pPerl->Perl_regcppush #undef regcurly #define regcurly pPerl->Perl_regcurly -#undef regdump -#define regdump pPerl->Perl_regdump -#undef regexec_flags -#define regexec_flags pPerl->Perl_regexec_flags #undef reghop #define reghop pPerl->Perl_reghop #undef reghopmaybe @@ -2621,22 +3093,16 @@ #define reginclass pPerl->Perl_reginclass #undef reginclassutf8 #define reginclassutf8 pPerl->Perl_reginclassutf8 -#undef reginitcolors -#define reginitcolors pPerl->Perl_reginitcolors #undef reginsert #define reginsert pPerl->Perl_reginsert #undef regmatch #define regmatch pPerl->Perl_regmatch -#undef regnext -#define regnext pPerl->Perl_regnext #undef regoptail #define regoptail pPerl->Perl_regoptail #undef regpiece #define regpiece pPerl->Perl_regpiece #undef regpposixcc #define regpposixcc pPerl->Perl_regpposixcc -#undef regprop -#define regprop pPerl->Perl_regprop #undef regrepeat #define regrepeat pPerl->Perl_regrepeat #undef regrepeat_hard @@ -2651,8 +3117,6 @@ #define reguni pPerl->Perl_reguni #undef regwhite #define regwhite pPerl->Perl_regwhite -#undef repeatcpy -#define repeatcpy pPerl->Perl_repeatcpy #undef restore_expect #define restore_expect pPerl->Perl_restore_expect #undef restore_lex_expect @@ -2663,138 +3127,16 @@ #define restore_pos pPerl->Perl_restore_pos #undef restore_rsfp #define restore_rsfp pPerl->Perl_restore_rsfp -#undef rninstr -#define rninstr pPerl->Perl_rninstr -#undef rsignal -#define rsignal pPerl->Perl_rsignal -#undef rsignal_restore -#define rsignal_restore pPerl->Perl_rsignal_restore -#undef rsignal_save -#define rsignal_save pPerl->Perl_rsignal_save -#undef rsignal_state -#define rsignal_state pPerl->Perl_rsignal_state -#undef runops_debug -#define runops_debug pPerl->Perl_runops_debug -#undef runops_debug -#define runops_debug pPerl->Perl_runops_debug -#undef runops_standard -#define runops_standard pPerl->Perl_runops_standard -#undef runops_standard -#define runops_standard pPerl->Perl_runops_standard -#undef rxres_free -#define rxres_free pPerl->Perl_rxres_free -#undef rxres_restore -#define rxres_restore pPerl->Perl_rxres_restore -#undef rxres_save -#define rxres_save pPerl->Perl_rxres_save -#undef safesyscalloc -#define safesyscalloc pPerl->Perl_safesyscalloc -#undef safesysfree -#define safesysfree pPerl->Perl_safesysfree -#undef safesysmalloc -#define safesysmalloc pPerl->Perl_safesysmalloc -#undef safesysrealloc -#define safesysrealloc pPerl->Perl_safesysrealloc -#undef safexcalloc -#define safexcalloc pPerl->Perl_safexcalloc -#undef safexfree -#define safexfree pPerl->Perl_safexfree -#undef safexmalloc -#define safexmalloc pPerl->Perl_safexmalloc -#undef safexrealloc -#define safexrealloc pPerl->Perl_safexrealloc -#undef same_dirent -#define same_dirent pPerl->Perl_same_dirent -#undef save_I16 -#define save_I16 pPerl->Perl_save_I16 -#undef save_I32 -#define save_I32 pPerl->Perl_save_I32 -#undef save_aelem -#define save_aelem pPerl->Perl_save_aelem -#undef save_alloc -#define save_alloc pPerl->Perl_save_alloc -#undef save_aptr -#define save_aptr pPerl->Perl_save_aptr -#undef save_ary -#define save_ary pPerl->Perl_save_ary -#undef save_clearsv -#define save_clearsv pPerl->Perl_save_clearsv -#undef save_delete -#define save_delete pPerl->Perl_save_delete -#undef save_destructor -#define save_destructor pPerl->Perl_save_destructor -#undef save_freeop -#define save_freeop pPerl->Perl_save_freeop -#undef save_freepv -#define save_freepv pPerl->Perl_save_freepv -#undef save_freesv -#define save_freesv pPerl->Perl_save_freesv -#undef save_generic_svref -#define save_generic_svref pPerl->Perl_save_generic_svref -#undef save_gp -#define save_gp pPerl->Perl_save_gp -#undef save_hash -#define save_hash pPerl->Perl_save_hash #undef save_hek #define save_hek pPerl->Perl_save_hek -#undef save_helem -#define save_helem pPerl->Perl_save_helem -#undef save_hints -#define save_hints pPerl->Perl_save_hints -#undef save_hptr -#define save_hptr pPerl->Perl_save_hptr -#undef save_int -#define save_int pPerl->Perl_save_int -#undef save_item -#define save_item pPerl->Perl_save_item -#undef save_iv -#define save_iv pPerl->Perl_save_iv #undef save_lines #define save_lines pPerl->Perl_save_lines -#undef save_list -#define save_list pPerl->Perl_save_list -#undef save_long -#define save_long pPerl->Perl_save_long #undef save_magic #define save_magic pPerl->Perl_save_magic -#undef save_nogv -#define save_nogv pPerl->Perl_save_nogv -#undef save_op -#define save_op pPerl->Perl_save_op -#undef save_pptr -#define save_pptr pPerl->Perl_save_pptr -#undef save_re_context -#define save_re_context pPerl->Perl_save_re_context -#undef save_scalar -#define save_scalar pPerl->Perl_save_scalar #undef save_scalar_at #define save_scalar_at pPerl->Perl_save_scalar_at -#undef save_sptr -#define save_sptr pPerl->Perl_save_sptr -#undef save_svref -#define save_svref pPerl->Perl_save_svref -#undef save_threadsv -#define save_threadsv pPerl->Perl_save_threadsv -#undef savepv -#define savepv pPerl->Perl_savepv -#undef savepvn -#define savepvn pPerl->Perl_savepvn -#undef savestack_grow -#define savestack_grow pPerl->Perl_savestack_grow -#undef sawparens -#define sawparens pPerl->Perl_sawparens -#undef scalar -#define scalar pPerl->Perl_scalar #undef scalarboolean #define scalarboolean pPerl->Perl_scalarboolean -#undef scalarkids -#define scalarkids pPerl->Perl_scalarkids -#undef scalarseq -#define scalarseq pPerl->Perl_scalarseq -#undef scalarvoid -#define scalarvoid pPerl->Perl_scalarvoid -#undef scan_bin -#define scan_bin pPerl->Perl_scan_bin #undef scan_commit #define scan_commit pPerl->Perl_scan_commit #undef scan_const @@ -2803,16 +3145,10 @@ #define scan_formline pPerl->Perl_scan_formline #undef scan_heredoc #define scan_heredoc pPerl->Perl_scan_heredoc -#undef scan_hex -#define scan_hex pPerl->Perl_scan_hex #undef scan_ident #define scan_ident pPerl->Perl_scan_ident #undef scan_inputsymbol #define scan_inputsymbol pPerl->Perl_scan_inputsymbol -#undef scan_num -#define scan_num pPerl->Perl_scan_num -#undef scan_oct -#define scan_oct pPerl->Perl_scan_oct #undef scan_pat #define scan_pat pPerl->Perl_scan_pat #undef scan_str @@ -2823,266 +3159,34 @@ #define scan_trans pPerl->Perl_scan_trans #undef scan_word #define scan_word pPerl->Perl_scan_word -#undef scope -#define scope pPerl->Perl_scope -#undef screaminstr -#define screaminstr pPerl->Perl_screaminstr #undef seed #define seed pPerl->Perl_seed #undef set_csh #define set_csh pPerl->Perl_set_csh -#undef setdefout -#define setdefout pPerl->Perl_setdefout -#undef setenv_getix -#define setenv_getix pPerl->Perl_setenv_getix -#undef share_hek -#define share_hek pPerl->Perl_share_hek -#undef sharepvn -#define sharepvn pPerl->Perl_sharepvn -#undef sighandler -#define sighandler pPerl->Perl_sighandler #undef simplify_sort #define simplify_sort pPerl->Perl_simplify_sort #undef skipspace #define skipspace pPerl->Perl_skipspace #undef sortcv #define sortcv pPerl->Perl_sortcv -#undef stack_grow -#define stack_grow pPerl->Perl_stack_grow -#undef start_subparse -#define start_subparse pPerl->Perl_start_subparse #undef study_chunk #define study_chunk pPerl->Perl_study_chunk -#undef sub_crush_depth -#define sub_crush_depth pPerl->Perl_sub_crush_depth #undef sublex_done #define sublex_done pPerl->Perl_sublex_done #undef sublex_push #define sublex_push pPerl->Perl_sublex_push #undef sublex_start #define sublex_start pPerl->Perl_sublex_start -#undef sv_2bool -#define sv_2bool pPerl->Perl_sv_2bool -#undef sv_2cv -#define sv_2cv pPerl->Perl_sv_2cv -#undef sv_2io -#define sv_2io pPerl->Perl_sv_2io -#undef sv_2iv -#define sv_2iv pPerl->Perl_sv_2iv -#undef sv_2mortal -#define sv_2mortal pPerl->Perl_sv_2mortal -#undef sv_2nv -#define sv_2nv pPerl->Perl_sv_2nv -#undef sv_2pv -#define sv_2pv pPerl->Perl_sv_2pv -#undef sv_2pv_nolen -#define sv_2pv_nolen pPerl->Perl_sv_2pv_nolen -#undef sv_2uv -#define sv_2uv pPerl->Perl_sv_2uv -#undef sv_add_arena -#define sv_add_arena pPerl->Perl_sv_add_arena #undef sv_add_backref #define sv_add_backref pPerl->Perl_sv_add_backref -#undef sv_backoff -#define sv_backoff pPerl->Perl_sv_backoff -#undef sv_bless -#define sv_bless pPerl->Perl_sv_bless -#undef sv_catpv -#define sv_catpv pPerl->Perl_sv_catpv -#undef sv_catpv_mg -#define sv_catpv_mg pPerl->Perl_sv_catpv_mg -#undef sv_catpvf -#define sv_catpvf pPerl->Perl_sv_catpvf -#undef sv_catpvf_mg -#define sv_catpvf_mg pPerl->Perl_sv_catpvf_mg -#undef sv_catpvn -#define sv_catpvn pPerl->Perl_sv_catpvn -#undef sv_catpvn_mg -#define sv_catpvn_mg pPerl->Perl_sv_catpvn_mg -#undef sv_catsv -#define sv_catsv pPerl->Perl_sv_catsv -#undef sv_catsv_mg -#define sv_catsv_mg pPerl->Perl_sv_catsv_mg -#undef sv_chop -#define sv_chop pPerl->Perl_sv_chop -#undef sv_clean_all -#define sv_clean_all pPerl->Perl_sv_clean_all -#undef sv_clean_objs -#define sv_clean_objs pPerl->Perl_sv_clean_objs -#undef sv_clear -#define sv_clear pPerl->Perl_sv_clear -#undef sv_cmp -#define sv_cmp pPerl->Perl_sv_cmp -#undef sv_cmp_locale -#define sv_cmp_locale pPerl->Perl_sv_cmp_locale -#undef sv_collxfrm -#define sv_collxfrm pPerl->Perl_sv_collxfrm -#undef sv_compile_2op -#define sv_compile_2op pPerl->Perl_sv_compile_2op -#undef sv_dec -#define sv_dec pPerl->Perl_sv_dec #undef sv_del_backref #define sv_del_backref pPerl->Perl_sv_del_backref -#undef sv_derived_from -#define sv_derived_from pPerl->Perl_sv_derived_from -#undef sv_dump -#define sv_dump pPerl->Perl_sv_dump -#undef sv_eq -#define sv_eq pPerl->Perl_sv_eq -#undef sv_force_normal -#define sv_force_normal pPerl->Perl_sv_force_normal -#undef sv_free -#define sv_free pPerl->Perl_sv_free -#undef sv_free_arenas -#define sv_free_arenas pPerl->Perl_sv_free_arenas -#undef sv_gets -#define sv_gets pPerl->Perl_sv_gets -#undef sv_grow -#define sv_grow pPerl->Perl_sv_grow #undef sv_i_ncmp #define sv_i_ncmp pPerl->Perl_sv_i_ncmp -#undef sv_inc -#define sv_inc pPerl->Perl_sv_inc -#undef sv_insert -#define sv_insert pPerl->Perl_sv_insert -#undef sv_isa -#define sv_isa pPerl->Perl_sv_isa -#undef sv_isobject -#define sv_isobject pPerl->Perl_sv_isobject -#undef sv_iv -#define sv_iv pPerl->Perl_sv_iv -#undef sv_len -#define sv_len pPerl->Perl_sv_len -#undef sv_len_utf8 -#define sv_len_utf8 pPerl->Perl_sv_len_utf8 -#undef sv_magic -#define sv_magic pPerl->Perl_sv_magic -#undef sv_mortalcopy -#define sv_mortalcopy pPerl->Perl_sv_mortalcopy #undef sv_ncmp #define sv_ncmp pPerl->Perl_sv_ncmp -#undef sv_newmortal -#define sv_newmortal pPerl->Perl_sv_newmortal -#undef sv_newref -#define sv_newref pPerl->Perl_sv_newref -#undef sv_nv -#define sv_nv pPerl->Perl_sv_nv -#undef sv_peek -#define sv_peek pPerl->Perl_sv_peek -#undef sv_pos_b2u -#define sv_pos_b2u pPerl->Perl_sv_pos_b2u -#undef sv_pos_u2b -#define sv_pos_u2b pPerl->Perl_sv_pos_u2b -#undef sv_pv -#define sv_pv pPerl->Perl_sv_pv -#undef sv_pvn -#define sv_pvn pPerl->Perl_sv_pvn -#undef sv_pvn_force -#define sv_pvn_force pPerl->Perl_sv_pvn_force -#undef sv_reftype -#define sv_reftype pPerl->Perl_sv_reftype -#undef sv_replace -#define sv_replace pPerl->Perl_sv_replace -#undef sv_report_used -#define sv_report_used pPerl->Perl_sv_report_used -#undef sv_reset -#define sv_reset pPerl->Perl_sv_reset -#undef sv_rvweaken -#define sv_rvweaken pPerl->Perl_sv_rvweaken -#undef sv_setiv -#define sv_setiv pPerl->Perl_sv_setiv -#undef sv_setiv_mg -#define sv_setiv_mg pPerl->Perl_sv_setiv_mg -#undef sv_setnv -#define sv_setnv pPerl->Perl_sv_setnv -#undef sv_setnv_mg -#define sv_setnv_mg pPerl->Perl_sv_setnv_mg -#undef sv_setpv -#define sv_setpv pPerl->Perl_sv_setpv -#undef sv_setpv_mg -#define sv_setpv_mg pPerl->Perl_sv_setpv_mg -#undef sv_setpvf -#define sv_setpvf pPerl->Perl_sv_setpvf -#undef sv_setpvf_mg -#define sv_setpvf_mg pPerl->Perl_sv_setpvf_mg -#undef sv_setpviv -#define sv_setpviv pPerl->Perl_sv_setpviv -#undef sv_setpviv_mg -#define sv_setpviv_mg pPerl->Perl_sv_setpviv_mg -#undef sv_setpvn -#define sv_setpvn pPerl->Perl_sv_setpvn -#undef sv_setpvn_mg -#define sv_setpvn_mg pPerl->Perl_sv_setpvn_mg -#undef sv_setref_iv -#define sv_setref_iv pPerl->Perl_sv_setref_iv -#undef sv_setref_nv -#define sv_setref_nv pPerl->Perl_sv_setref_nv -#undef sv_setref_pv -#define sv_setref_pv pPerl->Perl_sv_setref_pv -#undef sv_setref_pvn -#define sv_setref_pvn pPerl->Perl_sv_setref_pvn -#undef sv_setsv -#define sv_setsv pPerl->Perl_sv_setsv -#undef sv_setsv_mg -#define sv_setsv_mg pPerl->Perl_sv_setsv_mg -#undef sv_setuv -#define sv_setuv pPerl->Perl_sv_setuv -#undef sv_setuv_mg -#define sv_setuv_mg pPerl->Perl_sv_setuv_mg -#undef sv_taint -#define sv_taint pPerl->Perl_sv_taint -#undef sv_tainted -#define sv_tainted pPerl->Perl_sv_tainted -#undef sv_true -#define sv_true pPerl->Perl_sv_true #undef sv_unglob #define sv_unglob pPerl->Perl_sv_unglob -#undef sv_unmagic -#define sv_unmagic pPerl->Perl_sv_unmagic -#undef sv_unref -#define sv_unref pPerl->Perl_sv_unref -#undef sv_untaint -#define sv_untaint pPerl->Perl_sv_untaint -#undef sv_upgrade -#define sv_upgrade pPerl->Perl_sv_upgrade -#undef sv_usepvn -#define sv_usepvn pPerl->Perl_sv_usepvn -#undef sv_usepvn_mg -#define sv_usepvn_mg pPerl->Perl_sv_usepvn_mg -#undef sv_uv -#define sv_uv pPerl->Perl_sv_uv -#undef sv_vcatpvfn -#define sv_vcatpvfn pPerl->Perl_sv_vcatpvfn -#undef sv_vsetpvfn -#define sv_vsetpvfn pPerl->Perl_sv_vsetpvfn -#undef swash_fetch -#define swash_fetch pPerl->Perl_swash_fetch -#undef swash_init -#define swash_init pPerl->Perl_swash_init -#undef taint_env -#define taint_env pPerl->Perl_taint_env -#undef taint_proper -#define taint_proper pPerl->Perl_taint_proper -#undef tmps_grow -#define tmps_grow pPerl->Perl_tmps_grow -#undef to_uni_lower -#define to_uni_lower pPerl->Perl_to_uni_lower -#undef to_uni_lower_lc -#define to_uni_lower_lc pPerl->Perl_to_uni_lower_lc -#undef to_uni_title -#define to_uni_title pPerl->Perl_to_uni_title -#undef to_uni_title_lc -#define to_uni_title_lc pPerl->Perl_to_uni_title_lc -#undef to_uni_upper -#define to_uni_upper pPerl->Perl_to_uni_upper -#undef to_uni_upper_lc -#define to_uni_upper_lc pPerl->Perl_to_uni_upper_lc -#undef to_utf8_lower -#define to_utf8_lower pPerl->Perl_to_utf8_lower -#undef to_utf8_title -#define to_utf8_title pPerl->Perl_to_utf8_title -#undef to_utf8_upper -#define to_utf8_upper pPerl->Perl_to_utf8_upper #undef tokeq #define tokeq pPerl->Perl_tokeq #undef too_few_arguments @@ -3091,63 +3195,15 @@ #define too_many_arguments pPerl->Perl_too_many_arguments #undef uni #define uni pPerl->Perl_uni -#undef unlnk -#define unlnk pPerl->Perl_unlnk -#undef unlock_condpair -#define unlock_condpair pPerl->Perl_unlock_condpair -#undef unshare_hek -#define unshare_hek pPerl->Perl_unshare_hek -#undef unsharepvn -#define unsharepvn pPerl->Perl_unsharepvn #undef unwind_handler_stack #define unwind_handler_stack pPerl->Perl_unwind_handler_stack #undef usage #define usage pPerl->Perl_usage -#undef utf16_to_utf8 -#define utf16_to_utf8 pPerl->Perl_utf16_to_utf8 -#undef utf16_to_utf8_reversed -#define utf16_to_utf8_reversed pPerl->Perl_utf16_to_utf8_reversed -#undef utf8_distance -#define utf8_distance pPerl->Perl_utf8_distance -#undef utf8_hop -#define utf8_hop pPerl->Perl_utf8_hop -#undef utf8_to_uv -#define utf8_to_uv pPerl->Perl_utf8_to_uv -#undef utilize -#define utilize pPerl->Perl_utilize -#undef uv_to_utf8 -#define uv_to_utf8 pPerl->Perl_uv_to_utf8 #undef validate_suid #define validate_suid pPerl->Perl_validate_suid #undef visit #define visit pPerl->Perl_visit -#undef vivify_defelem -#define vivify_defelem pPerl->Perl_vivify_defelem -#undef vivify_ref -#define vivify_ref pPerl->Perl_vivify_ref -#undef wait4pid -#define wait4pid pPerl->Perl_wait4pid -#undef warn -#define warn pPerl->Perl_warn -#undef warner -#define warner pPerl->Perl_warner -#undef watch -#define watch pPerl->Perl_watch -#undef whichsig -#define whichsig pPerl->Perl_whichsig #undef win32_textfilter #define win32_textfilter pPerl->Perl_win32_textfilter -#undef yydestruct -#define yydestruct pPerl->Perl_yydestruct -#undef yydestruct -#define yydestruct pPerl->Perl_yydestruct -#undef yyerror -#define yyerror pPerl->Perl_yyerror -#undef yylex -#define yylex pPerl->Perl_yylex -#undef yyparse -#define yyparse pPerl->Perl_yyparse -#undef yywarn -#define yywarn pPerl->Perl_yywarn #endif /* __objXSUB_h__ */ @@ -16,6 +16,7 @@ */ #include "EXTERN.h" +#define PERL_IN_OP_C #include "perl.h" #ifdef PERL_OBJECT @@ -36,8 +37,8 @@ static int PL_OpSpace = 0; var = (type *) Slab_Alloc(m,c*sizeof(type)); \ } while (0) -static void * -Slab_Alloc(int m, size_t sz) +STATIC void * +Slab_Alloc(pTHX_ int m, size_t sz) { Newz(m,PL_OpPtr,SLAB_SIZE,char); PL_OpSpace = SLAB_SIZE - sz; @@ -60,27 +61,8 @@ Slab_Alloc(int m, size_t sz) #define PAD_MAX 999999999 -static bool scalar_mod_type (OP *o, I32 type); -#ifndef PERL_OBJECT -static I32 list_assignment (OP *o); -static void bad_type (I32 n, char *t, char *name, OP *kid); -static OP *modkids (OP *o, I32 type); -static OP *no_fh_allowed (OP *o); -static void no_bareword_allowed (OP *o); -static OP *scalarboolean (OP *o); -static OP *too_few_arguments (OP *o, char* name); -static OP *too_many_arguments (OP *o, char* name); -static void null (OP* o); -static PADOFFSET pad_findlex (char* name, PADOFFSET newoff, U32 seq, - CV* startcv, I32 cx_ix, I32 saweval, U32 flags); -static OP *newDEFSVOP (void); -static OP *new_logop (I32 type, I32 flags, OP **firstp, OP **otherp); -static void simplify_sort (OP *o); -static bool is_handle_constructor (OP *o, I32 argnum); -#endif - STATIC char* -gv_ename(GV *gv) +gv_ename(pTHX_ GV *gv) { STRLEN n_a; SV* tmpsv = sv_newmortal(); @@ -89,7 +71,7 @@ gv_ename(GV *gv) } STATIC OP * -no_fh_allowed(OP *o) +no_fh_allowed(pTHX_ OP *o) { yyerror(form("Missing comma after first argument to %s function", PL_op_desc[o->op_type])); @@ -97,28 +79,28 @@ no_fh_allowed(OP *o) } STATIC OP * -too_few_arguments(OP *o, char *name) +too_few_arguments(pTHX_ OP *o, char *name) { yyerror(form("Not enough arguments for %s", name)); return o; } STATIC OP * -too_many_arguments(OP *o, char *name) +too_many_arguments(pTHX_ OP *o, char *name) { yyerror(form("Too many arguments for %s", name)); return o; } STATIC void -bad_type(I32 n, char *t, char *name, OP *kid) +bad_type(pTHX_ I32 n, char *t, char *name, OP *kid) { yyerror(form("Type of arg %d to %s must be %s (not %s)", (int)n, name, t, PL_op_desc[kid->op_type])); } STATIC void -no_bareword_allowed(OP *o) +no_bareword_allowed(pTHX_ OP *o) { warn("Bareword \"%s\" not allowed while \"strict subs\" in use", SvPV_nolen(cSVOPo->op_sv)); @@ -126,7 +108,7 @@ no_bareword_allowed(OP *o) } void -assertref(OP *o) +Perl_assertref(pTHX_ OP *o) { int type = o->op_type; if (type != OP_AELEM && type != OP_HELEM && type != OP_GELEM) { @@ -149,7 +131,7 @@ assertref(OP *o) /* "register" allocation */ PADOFFSET -pad_allocmy(char *name) +Perl_pad_allocmy(pTHX_ char *name) { dTHR; PADOFFSET off; @@ -226,8 +208,8 @@ pad_allocmy(char *name) #define FINDLEX_NOSEARCH 1 /* don't search outer contexts */ STATIC PADOFFSET -pad_findlex(char *name, PADOFFSET newoff, U32 seq, CV* startcv, I32 cx_ix, I32 saweval, - U32 flags) +pad_findlex(pTHX_ char *name, PADOFFSET newoff, U32 seq, CV* startcv, + I32 cx_ix, I32 saweval, U32 flags) { dTHR; CV *cv; @@ -367,7 +349,7 @@ pad_findlex(char *name, PADOFFSET newoff, U32 seq, CV* startcv, I32 cx_ix, I32 s } PADOFFSET -pad_findmy(char *name) +Perl_pad_findmy(pTHX_ char *name) { dTHR; I32 off; @@ -430,7 +412,7 @@ pad_findmy(char *name) } void -pad_leavemy(I32 fill) +Perl_pad_leavemy(pTHX_ I32 fill) { I32 off; SV **svp = AvARRAY(PL_comppad_name); @@ -449,7 +431,7 @@ pad_leavemy(I32 fill) } PADOFFSET -pad_alloc(I32 optype, U32 tmptype) +Perl_pad_alloc(pTHX_ I32 optype, U32 tmptype) { dTHR; SV *sv; @@ -498,7 +480,7 @@ pad_alloc(I32 optype, U32 tmptype) } SV * -pad_sv(PADOFFSET po) +Perl_pad_sv(pTHX_ PADOFFSET po) { dTHR; #ifdef USE_THREADS @@ -514,7 +496,7 @@ pad_sv(PADOFFSET po) } void -pad_free(PADOFFSET po) +Perl_pad_free(pTHX_ PADOFFSET po) { dTHR; if (!PL_curpad) @@ -537,7 +519,7 @@ pad_free(PADOFFSET po) } void -pad_swipe(PADOFFSET po) +Perl_pad_swipe(pTHX_ PADOFFSET po) { dTHR; if (AvARRAY(PL_comppad) != PL_curpad) @@ -565,7 +547,7 @@ pad_swipe(PADOFFSET po) * We avoid doing this until we can think of a Better Way. * GSAR 97-10-29 */ void -pad_reset(void) +Perl_pad_reset(pTHX) { #ifdef USE_BROKEN_PAD_RESET dTHR; @@ -594,7 +576,7 @@ pad_reset(void) #ifdef USE_THREADS /* find_threadsv is not reentrant */ PADOFFSET -find_threadsv(const char *name) +Perl_find_threadsv(pTHX_ const char *name) { dTHR; char *p; @@ -662,7 +644,7 @@ find_threadsv(const char *name) /* Destructor */ void -op_free(OP *o) +Perl_op_free(pTHX_ OP *o) { register OP *kid, *nextkid; @@ -748,7 +730,7 @@ op_free(OP *o) } STATIC void -null(OP *o) +null(pTHX_ OP *o) { if (o->op_type != OP_NULL && o->op_type != OP_THREADSV && o->op_targ > 0) pad_free(o->op_targ); @@ -762,7 +744,7 @@ null(OP *o) #define LINKLIST(o) ((o)->op_next ? (o)->op_next : linklist((OP*)o)) OP * -linklist(OP *o) +Perl_linklist(pTHX_ OP *o) { register OP *kid; @@ -786,7 +768,7 @@ linklist(OP *o) } OP * -scalarkids(OP *o) +Perl_scalarkids(pTHX_ OP *o) { OP *kid; if (o && o->op_flags & OPf_KIDS) { @@ -797,7 +779,7 @@ scalarkids(OP *o) } STATIC OP * -scalarboolean(OP *o) +scalarboolean(pTHX_ OP *o) { if (o->op_type == OP_SASSIGN && cBINOPo->op_first->op_type == OP_CONST) { dTHR; @@ -814,7 +796,7 @@ scalarboolean(OP *o) } OP * -scalar(OP *o) +Perl_scalar(pTHX_ OP *o) { OP *kid; @@ -881,7 +863,7 @@ scalar(OP *o) } OP * -scalarvoid(OP *o) +Perl_scalarvoid(pTHX_ OP *o) { OP *kid; char* useless = 0; @@ -1081,7 +1063,7 @@ scalarvoid(OP *o) } OP * -listkids(OP *o) +Perl_listkids(pTHX_ OP *o) { OP *kid; if (o && o->op_flags & OPf_KIDS) { @@ -1092,7 +1074,7 @@ listkids(OP *o) } OP * -list(OP *o) +Perl_list(pTHX_ OP *o) { OP *kid; @@ -1159,7 +1141,7 @@ list(OP *o) } OP * -scalarseq(OP *o) +Perl_scalarseq(pTHX_ OP *o) { OP *kid; @@ -1187,7 +1169,7 @@ scalarseq(OP *o) } STATIC OP * -modkids(OP *o, I32 type) +modkids(pTHX_ OP *o, I32 type) { OP *kid; if (o && o->op_flags & OPf_KIDS) { @@ -1198,7 +1180,7 @@ modkids(OP *o, I32 type) } OP * -mod(OP *o, I32 type) +Perl_mod(pTHX_ OP *o, I32 type) { dTHR; OP *kid; @@ -1408,8 +1390,8 @@ mod(OP *o, I32 type) return o; } -static bool -scalar_mod_type(OP *o, I32 type) +STATIC bool +scalar_mod_type(pTHX_ OP *o, I32 type) { switch (type) { case OP_SASSIGN: @@ -1456,7 +1438,7 @@ scalar_mod_type(OP *o, I32 type) } STATIC bool -is_handle_constructor(OP *o, I32 argnum) +is_handle_constructor(pTHX_ OP *o, I32 argnum) { switch (o->op_type) { case OP_PIPE_OP: @@ -1479,7 +1461,7 @@ is_handle_constructor(OP *o, I32 argnum) } OP * -refkids(OP *o, I32 type) +Perl_refkids(pTHX_ OP *o, I32 type) { OP *kid; if (o && o->op_flags & OPf_KIDS) { @@ -1490,7 +1472,7 @@ refkids(OP *o, I32 type) } OP * -ref(OP *o, I32 type) +Perl_ref(pTHX_ OP *o, I32 type) { OP *kid; @@ -1579,7 +1561,7 @@ ref(OP *o, I32 type) } OP * -my(OP *o) +Perl_my(pTHX_ OP *o) { OP *kid; I32 type; @@ -1607,7 +1589,7 @@ my(OP *o) } OP * -sawparens(OP *o) +Perl_sawparens(pTHX_ OP *o) { if (o) o->op_flags |= OPf_PARENS; @@ -1615,7 +1597,7 @@ sawparens(OP *o) } OP * -bind_match(I32 type, OP *left, OP *right) +Perl_bind_match(pTHX_ I32 type, OP *left, OP *right) { dTHR; OP *o; @@ -1656,7 +1638,7 @@ bind_match(I32 type, OP *left, OP *right) } OP * -invert(OP *o) +Perl_invert(pTHX_ OP *o) { if (!o) return o; @@ -1665,7 +1647,7 @@ invert(OP *o) } OP * -scope(OP *o) +Perl_scope(pTHX_ OP *o) { if (o) { if (o->op_flags & OPf_PARENS || PERLDB_NOOPT || PL_tainting) { @@ -1692,7 +1674,7 @@ scope(OP *o) } void -save_hints(void) +Perl_save_hints(pTHX) { SAVEI32(PL_hints); SAVESPTR(GvHV(PL_hintgv)); @@ -1701,7 +1683,7 @@ save_hints(void) } int -block_start(int full) +Perl_block_start(pTHX_ int full) { dTHR; int retval = PL_savestack_ix; @@ -1734,7 +1716,7 @@ block_start(int full) } OP* -block_end(I32 floor, OP *seq) +Perl_block_end(pTHX_ I32 floor, OP *seq) { dTHR; int needblockscope = PL_hints & HINT_BLOCK_SCOPE; @@ -1750,7 +1732,7 @@ block_end(I32 floor, OP *seq) } STATIC OP * -newDEFSVOP(void) +newDEFSVOP(pTHX) { #ifdef USE_THREADS OP *o = newOP(OP_THREADSV, 0); @@ -1762,7 +1744,7 @@ newDEFSVOP(void) } void -newPROG(OP *o) +Perl_newPROG(pTHX_ OP *o) { dTHR; if (PL_in_eval) { @@ -1787,20 +1769,20 @@ newPROG(OP *o) /* Register with debugger */ if (PERLDB_INTER) { - CV *cv = perl_get_cv("DB::postponed", FALSE); + CV *cv = get_cv("DB::postponed", FALSE); if (cv) { dSP; PUSHMARK(SP); XPUSHs((SV*)PL_compiling.cop_filegv); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); } } } } OP * -localize(OP *o, I32 lex) +Perl_localize(pTHX_ OP *o, I32 lex) { if (o->op_flags & OPf_PARENS) list(o); @@ -1823,7 +1805,7 @@ localize(OP *o, I32 lex) } OP * -jmaybe(OP *o) +Perl_jmaybe(pTHX_ OP *o) { if (o->op_type == OP_LIST) { OP *o2; @@ -1839,7 +1821,7 @@ jmaybe(OP *o) } OP * -fold_constants(register OP *o) +Perl_fold_constants(pTHX_ register OP *o) { dTHR; register OP *curop; @@ -1946,7 +1928,7 @@ fold_constants(register OP *o) } OP * -gen_constant_list(register OP *o) +Perl_gen_constant_list(pTHX_ register OP *o) { dTHR; register OP *curop; @@ -1974,7 +1956,7 @@ gen_constant_list(register OP *o) } OP * -convert(I32 type, I32 flags, OP *o) +Perl_convert(pTHX_ I32 type, I32 flags, OP *o) { OP *kid; OP *last = 0; @@ -2008,7 +1990,7 @@ convert(I32 type, I32 flags, OP *o) /* List constructors */ OP * -append_elem(I32 type, OP *first, OP *last) +Perl_append_elem(pTHX_ I32 type, OP *first, OP *last) { if (!first) return last; @@ -2031,7 +2013,7 @@ append_elem(I32 type, OP *first, OP *last) } OP * -append_list(I32 type, LISTOP *first, LISTOP *last) +Perl_append_list(pTHX_ I32 type, LISTOP *first, LISTOP *last) { if (!first) return (OP*)last; @@ -2059,7 +2041,7 @@ append_list(I32 type, LISTOP *first, LISTOP *last) } OP * -prepend_elem(I32 type, OP *first, OP *last) +Perl_prepend_elem(pTHX_ I32 type, OP *first, OP *last) { if (!first) return last; @@ -2090,13 +2072,13 @@ prepend_elem(I32 type, OP *first, OP *last) /* Constructors */ OP * -newNULLLIST(void) +Perl_newNULLLIST(pTHX) { return newOP(OP_STUB, 0); } OP * -force_list(OP *o) +Perl_force_list(pTHX_ OP *o) { if (!o || o->op_type != OP_LIST) o = newLISTOP(OP_LIST, 0, o, Nullop); @@ -2105,7 +2087,7 @@ force_list(OP *o) } OP * -newLISTOP(I32 type, I32 flags, OP *first, OP *last) +Perl_newLISTOP(pTHX_ I32 type, I32 flags, OP *first, OP *last) { LISTOP *listop; @@ -2140,7 +2122,7 @@ newLISTOP(I32 type, I32 flags, OP *first, OP *last) } OP * -newOP(I32 type, I32 flags) +Perl_newOP(pTHX_ I32 type, I32 flags) { OP *o; NewOp(1101, o, 1, OP); @@ -2158,7 +2140,7 @@ newOP(I32 type, I32 flags) } OP * -newUNOP(I32 type, I32 flags, OP *first) +Perl_newUNOP(pTHX_ I32 type, I32 flags, OP *first) { UNOP *unop; @@ -2181,7 +2163,7 @@ newUNOP(I32 type, I32 flags, OP *first) } OP * -newBINOP(I32 type, I32 flags, OP *first, OP *last) +Perl_newBINOP(pTHX_ I32 type, I32 flags, OP *first, OP *last) { BINOP *binop; NewOp(1101, binop, 1, BINOP); @@ -2225,7 +2207,7 @@ utf8compare(const void *a, const void *b) } OP * -pmtrans(OP *o, OP *expr, OP *repl) +Perl_pmtrans(pTHX_ OP *o, OP *expr, OP *repl) { SV *tstr = ((SVOP*)expr)->op_sv; SV *rstr = ((SVOP*)repl)->op_sv; @@ -2476,7 +2458,7 @@ pmtrans(OP *o, OP *expr, OP *repl) } OP * -newPMOP(I32 type, I32 flags) +Perl_newPMOP(pTHX_ I32 type, I32 flags) { dTHR; PMOP *pmop; @@ -2503,7 +2485,7 @@ newPMOP(I32 type, I32 flags) } OP * -pmruntime(OP *o, OP *expr, OP *repl) +Perl_pmruntime(pTHX_ OP *o, OP *expr, OP *repl) { dTHR; PMOP *pm; @@ -2653,7 +2635,7 @@ pmruntime(OP *o, OP *expr, OP *repl) } OP * -newSVOP(I32 type, I32 flags, SV *sv) +Perl_newSVOP(pTHX_ I32 type, I32 flags, SV *sv) { SVOP *svop; NewOp(1101, svop, 1, SVOP); @@ -2670,7 +2652,7 @@ newSVOP(I32 type, I32 flags, SV *sv) } OP * -newGVOP(I32 type, I32 flags, GV *gv) +Perl_newGVOP(pTHX_ I32 type, I32 flags, GV *gv) { dTHR; GVOP *gvop; @@ -2688,7 +2670,7 @@ newGVOP(I32 type, I32 flags, GV *gv) } OP * -newPVOP(I32 type, I32 flags, char *pv) +Perl_newPVOP(pTHX_ I32 type, I32 flags, char *pv) { PVOP *pvop; NewOp(1101, pvop, 1, PVOP); @@ -2705,7 +2687,7 @@ newPVOP(I32 type, I32 flags, char *pv) } void -package(OP *o) +Perl_package(pTHX_ OP *o) { dTHR; SV *sv; @@ -2731,7 +2713,7 @@ package(OP *o) } void -utilize(int aver, I32 floor, OP *version, OP *id, OP *arg) +Perl_utilize(pTHX_ int aver, I32 floor, OP *version, OP *id, OP *arg) { OP *pack; OP *meth; @@ -2821,7 +2803,7 @@ utilize(int aver, I32 floor, OP *version, OP *id, OP *arg) } OP * -dofile(OP *term) +Perl_dofile(pTHX_ OP *term) { OP *doop; GV *gv; @@ -2844,7 +2826,7 @@ dofile(OP *term) } OP * -newSLICEOP(I32 flags, OP *subscript, OP *listval) +Perl_newSLICEOP(pTHX_ I32 flags, OP *subscript, OP *listval) { return newBINOP(OP_LSLICE, flags, list(force_list(subscript)), @@ -2852,7 +2834,7 @@ newSLICEOP(I32 flags, OP *subscript, OP *listval) } STATIC I32 -list_assignment(register OP *o) +list_assignment(pTHX_ register OP *o) { if (!o) return TRUE; @@ -2886,7 +2868,7 @@ list_assignment(register OP *o) } OP * -newASSIGNOP(I32 flags, OP *left, I32 optype, OP *right) +Perl_newASSIGNOP(pTHX_ I32 flags, OP *left, I32 optype, OP *right) { OP *o; @@ -3023,7 +3005,7 @@ newASSIGNOP(I32 flags, OP *left, I32 optype, OP *right) } OP * -newSTATEOP(I32 flags, char *label, OP *o) +Perl_newSTATEOP(pTHX_ I32 flags, char *label, OP *o) { dTHR; U32 seq = intro_my(); @@ -3082,7 +3064,7 @@ newSTATEOP(I32 flags, char *label, OP *o) /* "Introduce" my variables to visible status. */ U32 -intro_my(void) +Perl_intro_my(pTHX) { SV **svp; SV *sv; @@ -3104,13 +3086,13 @@ intro_my(void) } OP * -newLOGOP(I32 type, I32 flags, OP *first, OP *other) +Perl_newLOGOP(pTHX_ I32 type, I32 flags, OP *first, OP *other) { return new_logop(type, flags, &first, &other); } STATIC OP * -new_logop(I32 type, I32 flags, OP** firstp, OP** otherp) +new_logop(pTHX_ I32 type, I32 flags, OP** firstp, OP** otherp) { dTHR; LOGOP *logop; @@ -3217,7 +3199,7 @@ new_logop(I32 type, I32 flags, OP** firstp, OP** otherp) } OP * -newCONDOP(I32 flags, OP *first, OP *trueop, OP *falseop) +Perl_newCONDOP(pTHX_ I32 flags, OP *first, OP *trueop, OP *falseop) { dTHR; CONDOP *condop; @@ -3270,7 +3252,7 @@ newCONDOP(I32 flags, OP *first, OP *trueop, OP *falseop) } OP * -newRANGE(I32 flags, OP *left, OP *right) +Perl_newRANGE(pTHX_ I32 flags, OP *left, OP *right) { dTHR; CONDOP *condop; @@ -3315,7 +3297,7 @@ newRANGE(I32 flags, OP *left, OP *right) } OP * -newLOOPOP(I32 flags, I32 debuggable, OP *expr, OP *block) +Perl_newLOOPOP(pTHX_ I32 flags, I32 debuggable, OP *expr, OP *block) { dTHR; OP* listop; @@ -3370,7 +3352,7 @@ newLOOPOP(I32 flags, I32 debuggable, OP *expr, OP *block) } OP * -newWHILEOP(I32 flags, I32 debuggable, LOOP *loop, I32 whileline, OP *expr, OP *block, OP *cont) +Perl_newWHILEOP(pTHX_ I32 flags, I32 debuggable, LOOP *loop, I32 whileline, OP *expr, OP *block, OP *cont) { dTHR; OP *redo; @@ -3462,7 +3444,7 @@ newWHILEOP(I32 flags, I32 debuggable, LOOP *loop, I32 whileline, OP *expr, OP *b } OP * -newFOROP(I32 flags,char *label,line_t forline,OP *sv,OP *expr,OP *block,OP *cont) +Perl_newFOROP(pTHX_ I32 flags,char *label,line_t forline,OP *sv,OP *expr,OP *block,OP *cont) { LOOP *loop; LOOP *tmp; @@ -3551,7 +3533,7 @@ newFOROP(I32 flags,char *label,line_t forline,OP *sv,OP *expr,OP *block,OP *cont } OP* -newLOOPEX(I32 type, OP *label) +Perl_newLOOPEX(pTHX_ I32 type, OP *label) { dTHR; OP *o; @@ -3578,7 +3560,7 @@ newLOOPEX(I32 type, OP *label) } void -cv_undef(CV *cv) +Perl_cv_undef(pTHX_ CV *cv) { dTHR; #ifdef USE_THREADS @@ -3682,7 +3664,7 @@ cv_dump(CV *cv) #endif /* DEBUG_CLOSURES */ STATIC CV * -cv_clone2(CV *proto, CV *outside) +cv_clone2(pTHX_ CV *proto, CV *outside) { dTHR; AV* av; @@ -3814,7 +3796,7 @@ cv_clone2(CV *proto, CV *outside) } CV * -cv_clone(CV *proto) +Perl_cv_clone(pTHX_ CV *proto) { CV *cv; MUTEX_LOCK(&PL_cred_mutex); /* XXX create separate mutex */ @@ -3824,7 +3806,7 @@ cv_clone(CV *proto) } void -cv_ckproto(CV *cv, GV *gv, char *p) +Perl_cv_ckproto(pTHX_ CV *cv, GV *gv, char *p) { if ((!p != !SvPOK(cv)) || (p && strNE(p, SvPVX(cv)))) { SV* msg = sv_newmortal(); @@ -3847,7 +3829,7 @@ cv_ckproto(CV *cv, GV *gv, char *p) } SV * -cv_const_sv(CV *cv) +Perl_cv_const_sv(pTHX_ CV *cv) { if (!cv || !SvPOK(cv) || SvCUR(cv)) return Nullsv; @@ -3855,7 +3837,7 @@ cv_const_sv(CV *cv) } SV * -op_const_sv(OP *o, CV *cv) +Perl_op_const_sv(pTHX_ OP *o, CV *cv) { SV *sv = Nullsv; @@ -3893,7 +3875,7 @@ op_const_sv(OP *o, CV *cv) } CV * -newSUB(I32 floor, OP *o, OP *proto, OP *block) +Perl_newSUB(pTHX_ I32 floor, OP *o, OP *proto, OP *block) { dTHR; STRLEN n_a; @@ -4085,7 +4067,7 @@ newSUB(I32 floor, OP *o, OP *proto, OP *block) PUSHMARK(SP); XPUSHs(tmpstr); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); } } @@ -4135,7 +4117,7 @@ newSUB(I32 floor, OP *o, OP *proto, OP *block) /* XXX unsafe for threads if eval_owner isn't held */ void -newCONSTSUB(HV *stash, char *name, SV *sv) +Perl_newCONSTSUB(pTHX_ HV *stash, char *name, SV *sv) { dTHR; U32 oldhints = PL_hints; @@ -4162,7 +4144,7 @@ newCONSTSUB(HV *stash, char *name, SV *sv) } CV * -newXS(char *name, void (*subaddr) (CV * _CPERLproto), char *filename) +Perl_newXS(pTHX_ char *name, XSUBADDR_t subaddr, char *filename) { dTHR; GV *gv = gv_fetchpv(name ? name : "__ANON__", GV_ADDMULTI, SVt_PVCV); @@ -4243,7 +4225,7 @@ newXS(char *name, void (*subaddr) (CV * _CPERLproto), char *filename) } void -newFORM(I32 floor, OP *o, OP *block) +Perl_newFORM(pTHX_ I32 floor, OP *o, OP *block) { dTHR; register CV *cv; @@ -4288,28 +4270,28 @@ newFORM(I32 floor, OP *o, OP *block) } OP * -newANONLIST(OP *o) +Perl_newANONLIST(pTHX_ OP *o) { return newUNOP(OP_REFGEN, 0, mod(list(convert(OP_ANONLIST, 0, o)), OP_REFGEN)); } OP * -newANONHASH(OP *o) +Perl_newANONHASH(pTHX_ OP *o) { return newUNOP(OP_REFGEN, 0, mod(list(convert(OP_ANONHASH, 0, o)), OP_REFGEN)); } OP * -newANONSUB(I32 floor, OP *proto, OP *block) +Perl_newANONSUB(pTHX_ I32 floor, OP *proto, OP *block) { return newUNOP(OP_REFGEN, 0, newSVOP(OP_ANONCODE, 0, (SV*)newSUB(floor, 0, proto, block))); } OP * -oopsAV(OP *o) +Perl_oopsAV(pTHX_ OP *o) { switch (o->op_type) { case OP_PADSV: @@ -4331,7 +4313,7 @@ oopsAV(OP *o) } OP * -oopsHV(OP *o) +Perl_oopsHV(pTHX_ OP *o) { switch (o->op_type) { case OP_PADSV: @@ -4355,7 +4337,7 @@ oopsHV(OP *o) } OP * -newAVREF(OP *o) +Perl_newAVREF(pTHX_ OP *o) { if (o->op_type == OP_PADANY) { o->op_type = OP_PADAV; @@ -4366,7 +4348,7 @@ newAVREF(OP *o) } OP * -newGVREF(I32 type, OP *o) +Perl_newGVREF(pTHX_ I32 type, OP *o) { if (type == OP_MAPSTART || type == OP_GREPSTART || type == OP_SORT) return newUNOP(OP_NULL, 0, o); @@ -4374,7 +4356,7 @@ newGVREF(I32 type, OP *o) } OP * -newHVREF(OP *o) +Perl_newHVREF(pTHX_ OP *o) { if (o->op_type == OP_PADANY) { o->op_type = OP_PADHV; @@ -4385,7 +4367,7 @@ newHVREF(OP *o) } OP * -oopsCV(OP *o) +Perl_oopsCV(pTHX_ OP *o) { croak("NOT IMPL LINE %d",__LINE__); /* STUB */ @@ -4393,13 +4375,13 @@ oopsCV(OP *o) } OP * -newCVREF(I32 flags, OP *o) +Perl_newCVREF(pTHX_ I32 flags, OP *o) { return newUNOP(OP_RV2CV, flags, scalar(o)); } OP * -newSVREF(OP *o) +Perl_newSVREF(pTHX_ OP *o) { if (o->op_type == OP_PADANY) { o->op_type = OP_PADSV; @@ -5261,7 +5243,7 @@ ck_sort(OP *o) } STATIC void -simplify_sort(OP *o) +simplify_sort(pTHX_ OP *o) { dTHR; register OP *kid = cLISTOPo->op_first->op_sibling; /* get past pushmark */ @@ -5562,7 +5544,7 @@ ck_trunc(OP *o) /* A peephole optimizer. We visit the ops in the order they're to execute. */ void -peep(register OP *o) +Perl_peep(pTHX_ register OP *o) { dTHR; register OP* oldop = 0; @@ -1,7 +1,7 @@ -#define pp_i_preinc pp_preinc -#define pp_i_predec pp_predec -#define pp_i_postinc pp_postinc -#define pp_i_postdec pp_postdec +#define Perl_pp_i_preinc Perl_pp_preinc +#define Perl_pp_i_predec Perl_pp_predec +#define Perl_pp_i_postinc Perl_pp_postinc +#define Perl_pp_i_postdec Perl_pp_postdec typedef enum { OP_NULL, /* 0 */ @@ -1072,8 +1072,8 @@ START_EXTERN_C #undef PERL_CKDEF #undef PERL_PPDEF -#define PERL_CKDEF(s) OP *s (OP *o); -#define PERL_PPDEF(s) OP *s (ARGSproto); +#define PERL_CKDEF(s) OP *s (pTHX_ OP *o); +#define PERL_PPDEF(s) OP *s (pTHX_ ARGSproto); #include "pp_proto.h" @@ -1085,354 +1085,354 @@ END_EXTERN_C EXT OP * (CPERLscope(*PL_ppaddr)[])(ARGSproto); #else EXT OP * (CPERLscope(*PL_ppaddr)[])(ARGSproto) = { - pp_null, - pp_stub, - pp_scalar, - pp_pushmark, - pp_wantarray, - pp_const, - pp_gvsv, - pp_gv, - pp_gelem, - pp_padsv, - pp_padav, - pp_padhv, - pp_padany, - pp_pushre, - pp_rv2gv, - pp_rv2sv, - pp_av2arylen, - pp_rv2cv, - pp_anoncode, - pp_prototype, - pp_refgen, - pp_srefgen, - pp_ref, - pp_bless, - pp_backtick, - pp_glob, - pp_readline, - pp_rcatline, - pp_regcmaybe, - pp_regcreset, - pp_regcomp, - pp_match, - pp_qr, - pp_subst, - pp_substcont, - pp_trans, - pp_sassign, - pp_aassign, - pp_chop, - pp_schop, - pp_chomp, - pp_schomp, - pp_defined, - pp_undef, - pp_study, - pp_pos, - pp_preinc, - pp_i_preinc, - pp_predec, - pp_i_predec, - pp_postinc, - pp_i_postinc, - pp_postdec, - pp_i_postdec, - pp_pow, - pp_multiply, - pp_i_multiply, - pp_divide, - pp_i_divide, - pp_modulo, - pp_i_modulo, - pp_repeat, - pp_add, - pp_i_add, - pp_subtract, - pp_i_subtract, - pp_concat, - pp_stringify, - pp_left_shift, - pp_right_shift, - pp_lt, - pp_i_lt, - pp_gt, - pp_i_gt, - pp_le, - pp_i_le, - pp_ge, - pp_i_ge, - pp_eq, - pp_i_eq, - pp_ne, - pp_i_ne, - pp_ncmp, - pp_i_ncmp, - pp_slt, - pp_sgt, - pp_sle, - pp_sge, - pp_seq, - pp_sne, - pp_scmp, - pp_bit_and, - pp_bit_xor, - pp_bit_or, - pp_negate, - pp_i_negate, - pp_not, - pp_complement, - pp_atan2, - pp_sin, - pp_cos, - pp_rand, - pp_srand, - pp_exp, - pp_log, - pp_sqrt, - pp_int, - pp_hex, - pp_oct, - pp_abs, - pp_length, - pp_substr, - pp_vec, - pp_index, - pp_rindex, - pp_sprintf, - pp_formline, - pp_ord, - pp_chr, - pp_crypt, - pp_ucfirst, - pp_lcfirst, - pp_uc, - pp_lc, - pp_quotemeta, - pp_rv2av, - pp_aelemfast, - pp_aelem, - pp_aslice, - pp_each, - pp_values, - pp_keys, - pp_delete, - pp_exists, - pp_rv2hv, - pp_helem, - pp_hslice, - pp_unpack, - pp_pack, - pp_split, - pp_join, - pp_list, - pp_lslice, - pp_anonlist, - pp_anonhash, - pp_splice, - pp_push, - pp_pop, - pp_shift, - pp_unshift, - pp_sort, - pp_reverse, - pp_grepstart, - pp_grepwhile, - pp_mapstart, - pp_mapwhile, - pp_range, - pp_flip, - pp_flop, - pp_and, - pp_or, - pp_xor, - pp_cond_expr, - pp_andassign, - pp_orassign, - pp_method, - pp_entersub, - pp_leavesub, - pp_caller, - pp_warn, - pp_die, - pp_reset, - pp_lineseq, - pp_nextstate, - pp_dbstate, - pp_unstack, - pp_enter, - pp_leave, - pp_scope, - pp_enteriter, - pp_iter, - pp_enterloop, - pp_leaveloop, - pp_return, - pp_last, - pp_next, - pp_redo, - pp_dump, - pp_goto, - pp_exit, - pp_open, - pp_close, - pp_pipe_op, - pp_fileno, - pp_umask, - pp_binmode, - pp_tie, - pp_untie, - pp_tied, - pp_dbmopen, - pp_dbmclose, - pp_sselect, - pp_select, - pp_getc, - pp_read, - pp_enterwrite, - pp_leavewrite, - pp_prtf, - pp_print, - pp_sysopen, - pp_sysseek, - pp_sysread, - pp_syswrite, - pp_send, - pp_recv, - pp_eof, - pp_tell, - pp_seek, - pp_truncate, - pp_fcntl, - pp_ioctl, - pp_flock, - pp_socket, - pp_sockpair, - pp_bind, - pp_connect, - pp_listen, - pp_accept, - pp_shutdown, - pp_gsockopt, - pp_ssockopt, - pp_getsockname, - pp_getpeername, - pp_lstat, - pp_stat, - pp_ftrread, - pp_ftrwrite, - pp_ftrexec, - pp_fteread, - pp_ftewrite, - pp_fteexec, - pp_ftis, - pp_fteowned, - pp_ftrowned, - pp_ftzero, - pp_ftsize, - pp_ftmtime, - pp_ftatime, - pp_ftctime, - pp_ftsock, - pp_ftchr, - pp_ftblk, - pp_ftfile, - pp_ftdir, - pp_ftpipe, - pp_ftlink, - pp_ftsuid, - pp_ftsgid, - pp_ftsvtx, - pp_fttty, - pp_fttext, - pp_ftbinary, - pp_chdir, - pp_chown, - pp_chroot, - pp_unlink, - pp_chmod, - pp_utime, - pp_rename, - pp_link, - pp_symlink, - pp_readlink, - pp_mkdir, - pp_rmdir, - pp_open_dir, - pp_readdir, - pp_telldir, - pp_seekdir, - pp_rewinddir, - pp_closedir, - pp_fork, - pp_wait, - pp_waitpid, - pp_system, - pp_exec, - pp_kill, - pp_getppid, - pp_getpgrp, - pp_setpgrp, - pp_getpriority, - pp_setpriority, - pp_time, - pp_tms, - pp_localtime, - pp_gmtime, - pp_alarm, - pp_sleep, - pp_shmget, - pp_shmctl, - pp_shmread, - pp_shmwrite, - pp_msgget, - pp_msgctl, - pp_msgsnd, - pp_msgrcv, - pp_semget, - pp_semctl, - pp_semop, - pp_require, - pp_dofile, - pp_entereval, - pp_leaveeval, - pp_entertry, - pp_leavetry, - pp_ghbyname, - pp_ghbyaddr, - pp_ghostent, - pp_gnbyname, - pp_gnbyaddr, - pp_gnetent, - pp_gpbyname, - pp_gpbynumber, - pp_gprotoent, - pp_gsbyname, - pp_gsbyport, - pp_gservent, - pp_shostent, - pp_snetent, - pp_sprotoent, - pp_sservent, - pp_ehostent, - pp_enetent, - pp_eprotoent, - pp_eservent, - pp_gpwnam, - pp_gpwuid, - pp_gpwent, - pp_spwent, - pp_epwent, - pp_ggrnam, - pp_ggrgid, - pp_ggrent, - pp_sgrent, - pp_egrent, - pp_getlogin, - pp_syscall, - pp_lock, - pp_threadsv, + Perl_pp_null, + Perl_pp_stub, + Perl_pp_scalar, + Perl_pp_pushmark, + Perl_pp_wantarray, + Perl_pp_const, + Perl_pp_gvsv, + Perl_pp_gv, + Perl_pp_gelem, + Perl_pp_padsv, + Perl_pp_padav, + Perl_pp_padhv, + Perl_pp_padany, + Perl_pp_pushre, + Perl_pp_rv2gv, + Perl_pp_rv2sv, + Perl_pp_av2arylen, + Perl_pp_rv2cv, + Perl_pp_anoncode, + Perl_pp_prototype, + Perl_pp_refgen, + Perl_pp_srefgen, + Perl_pp_ref, + Perl_pp_bless, + Perl_pp_backtick, + Perl_pp_glob, + Perl_pp_readline, + Perl_pp_rcatline, + Perl_pp_regcmaybe, + Perl_pp_regcreset, + Perl_pp_regcomp, + Perl_pp_match, + Perl_pp_qr, + Perl_pp_subst, + Perl_pp_substcont, + Perl_pp_trans, + Perl_pp_sassign, + Perl_pp_aassign, + Perl_pp_chop, + Perl_pp_schop, + Perl_pp_chomp, + Perl_pp_schomp, + Perl_pp_defined, + Perl_pp_undef, + Perl_pp_study, + Perl_pp_pos, + Perl_pp_preinc, + Perl_pp_i_preinc, + Perl_pp_predec, + Perl_pp_i_predec, + Perl_pp_postinc, + Perl_pp_i_postinc, + Perl_pp_postdec, + Perl_pp_i_postdec, + Perl_pp_pow, + Perl_pp_multiply, + Perl_pp_i_multiply, + Perl_pp_divide, + Perl_pp_i_divide, + Perl_pp_modulo, + Perl_pp_i_modulo, + Perl_pp_repeat, + Perl_pp_add, + Perl_pp_i_add, + Perl_pp_subtract, + Perl_pp_i_subtract, + Perl_pp_concat, + Perl_pp_stringify, + Perl_pp_left_shift, + Perl_pp_right_shift, + Perl_pp_lt, + Perl_pp_i_lt, + Perl_pp_gt, + Perl_pp_i_gt, + Perl_pp_le, + Perl_pp_i_le, + Perl_pp_ge, + Perl_pp_i_ge, + Perl_pp_eq, + Perl_pp_i_eq, + Perl_pp_ne, + Perl_pp_i_ne, + Perl_pp_ncmp, + Perl_pp_i_ncmp, + Perl_pp_slt, + Perl_pp_sgt, + Perl_pp_sle, + Perl_pp_sge, + Perl_pp_seq, + Perl_pp_sne, + Perl_pp_scmp, + Perl_pp_bit_and, + Perl_pp_bit_xor, + Perl_pp_bit_or, + Perl_pp_negate, + Perl_pp_i_negate, + Perl_pp_not, + Perl_pp_complement, + Perl_pp_atan2, + Perl_pp_sin, + Perl_pp_cos, + Perl_pp_rand, + Perl_pp_srand, + Perl_pp_exp, + Perl_pp_log, + Perl_pp_sqrt, + Perl_pp_int, + Perl_pp_hex, + Perl_pp_oct, + Perl_pp_abs, + Perl_pp_length, + Perl_pp_substr, + Perl_pp_vec, + Perl_pp_index, + Perl_pp_rindex, + Perl_pp_sprintf, + Perl_pp_formline, + Perl_pp_ord, + Perl_pp_chr, + Perl_pp_crypt, + Perl_pp_ucfirst, + Perl_pp_lcfirst, + Perl_pp_uc, + Perl_pp_lc, + Perl_pp_quotemeta, + Perl_pp_rv2av, + Perl_pp_aelemfast, + Perl_pp_aelem, + Perl_pp_aslice, + Perl_pp_each, + Perl_pp_values, + Perl_pp_keys, + Perl_pp_delete, + Perl_pp_exists, + Perl_pp_rv2hv, + Perl_pp_helem, + Perl_pp_hslice, + Perl_pp_unpack, + Perl_pp_pack, + Perl_pp_split, + Perl_pp_join, + Perl_pp_list, + Perl_pp_lslice, + Perl_pp_anonlist, + Perl_pp_anonhash, + Perl_pp_splice, + Perl_pp_push, + Perl_pp_pop, + Perl_pp_shift, + Perl_pp_unshift, + Perl_pp_sort, + Perl_pp_reverse, + Perl_pp_grepstart, + Perl_pp_grepwhile, + Perl_pp_mapstart, + Perl_pp_mapwhile, + Perl_pp_range, + Perl_pp_flip, + Perl_pp_flop, + Perl_pp_and, + Perl_pp_or, + Perl_pp_xor, + Perl_pp_cond_expr, + Perl_pp_andassign, + Perl_pp_orassign, + Perl_pp_method, + Perl_pp_entersub, + Perl_pp_leavesub, + Perl_pp_caller, + Perl_pp_warn, + Perl_pp_die, + Perl_pp_reset, + Perl_pp_lineseq, + Perl_pp_nextstate, + Perl_pp_dbstate, + Perl_pp_unstack, + Perl_pp_enter, + Perl_pp_leave, + Perl_pp_scope, + Perl_pp_enteriter, + Perl_pp_iter, + Perl_pp_enterloop, + Perl_pp_leaveloop, + Perl_pp_return, + Perl_pp_last, + Perl_pp_next, + Perl_pp_redo, + Perl_pp_dump, + Perl_pp_goto, + Perl_pp_exit, + Perl_pp_open, + Perl_pp_close, + Perl_pp_pipe_op, + Perl_pp_fileno, + Perl_pp_umask, + Perl_pp_binmode, + Perl_pp_tie, + Perl_pp_untie, + Perl_pp_tied, + Perl_pp_dbmopen, + Perl_pp_dbmclose, + Perl_pp_sselect, + Perl_pp_select, + Perl_pp_getc, + Perl_pp_read, + Perl_pp_enterwrite, + Perl_pp_leavewrite, + Perl_pp_prtf, + Perl_pp_print, + Perl_pp_sysopen, + Perl_pp_sysseek, + Perl_pp_sysread, + Perl_pp_syswrite, + Perl_pp_send, + Perl_pp_recv, + Perl_pp_eof, + Perl_pp_tell, + Perl_pp_seek, + Perl_pp_truncate, + Perl_pp_fcntl, + Perl_pp_ioctl, + Perl_pp_flock, + Perl_pp_socket, + Perl_pp_sockpair, + Perl_pp_bind, + Perl_pp_connect, + Perl_pp_listen, + Perl_pp_accept, + Perl_pp_shutdown, + Perl_pp_gsockopt, + Perl_pp_ssockopt, + Perl_pp_getsockname, + Perl_pp_getpeername, + Perl_pp_lstat, + Perl_pp_stat, + Perl_pp_ftrread, + Perl_pp_ftrwrite, + Perl_pp_ftrexec, + Perl_pp_fteread, + Perl_pp_ftewrite, + Perl_pp_fteexec, + Perl_pp_ftis, + Perl_pp_fteowned, + Perl_pp_ftrowned, + Perl_pp_ftzero, + Perl_pp_ftsize, + Perl_pp_ftmtime, + Perl_pp_ftatime, + Perl_pp_ftctime, + Perl_pp_ftsock, + Perl_pp_ftchr, + Perl_pp_ftblk, + Perl_pp_ftfile, + Perl_pp_ftdir, + Perl_pp_ftpipe, + Perl_pp_ftlink, + Perl_pp_ftsuid, + Perl_pp_ftsgid, + Perl_pp_ftsvtx, + Perl_pp_fttty, + Perl_pp_fttext, + Perl_pp_ftbinary, + Perl_pp_chdir, + Perl_pp_chown, + Perl_pp_chroot, + Perl_pp_unlink, + Perl_pp_chmod, + Perl_pp_utime, + Perl_pp_rename, + Perl_pp_link, + Perl_pp_symlink, + Perl_pp_readlink, + Perl_pp_mkdir, + Perl_pp_rmdir, + Perl_pp_open_dir, + Perl_pp_readdir, + Perl_pp_telldir, + Perl_pp_seekdir, + Perl_pp_rewinddir, + Perl_pp_closedir, + Perl_pp_fork, + Perl_pp_wait, + Perl_pp_waitpid, + Perl_pp_system, + Perl_pp_exec, + Perl_pp_kill, + Perl_pp_getppid, + Perl_pp_getpgrp, + Perl_pp_setpgrp, + Perl_pp_getpriority, + Perl_pp_setpriority, + Perl_pp_time, + Perl_pp_tms, + Perl_pp_localtime, + Perl_pp_gmtime, + Perl_pp_alarm, + Perl_pp_sleep, + Perl_pp_shmget, + Perl_pp_shmctl, + Perl_pp_shmread, + Perl_pp_shmwrite, + Perl_pp_msgget, + Perl_pp_msgctl, + Perl_pp_msgsnd, + Perl_pp_msgrcv, + Perl_pp_semget, + Perl_pp_semctl, + Perl_pp_semop, + Perl_pp_require, + Perl_pp_dofile, + Perl_pp_entereval, + Perl_pp_leaveeval, + Perl_pp_entertry, + Perl_pp_leavetry, + Perl_pp_ghbyname, + Perl_pp_ghbyaddr, + Perl_pp_ghostent, + Perl_pp_gnbyname, + Perl_pp_gnbyaddr, + Perl_pp_gnetent, + Perl_pp_gpbyname, + Perl_pp_gpbynumber, + Perl_pp_gprotoent, + Perl_pp_gsbyname, + Perl_pp_gsbyport, + Perl_pp_gservent, + Perl_pp_shostent, + Perl_pp_snetent, + Perl_pp_sprotoent, + Perl_pp_sservent, + Perl_pp_ehostent, + Perl_pp_enetent, + Perl_pp_eprotoent, + Perl_pp_eservent, + Perl_pp_gpwnam, + Perl_pp_gpwuid, + Perl_pp_gpwent, + Perl_pp_spwent, + Perl_pp_epwent, + Perl_pp_ggrnam, + Perl_pp_ggrgid, + Perl_pp_ggrent, + Perl_pp_sgrent, + Perl_pp_egrent, + Perl_pp_getlogin, + Perl_pp_syscall, + Perl_pp_lock, + Perl_pp_threadsv, }; #endif @@ -1440,354 +1440,354 @@ EXT OP * (CPERLscope(*PL_ppaddr)[])(ARGSproto) = { EXT OP * (CPERLscope(*PL_check)[]) (OP *op); #else EXT OP * (CPERLscope(*PL_check)[]) (OP *op) = { - ck_null, /* null */ - ck_null, /* stub */ - ck_fun, /* scalar */ - ck_null, /* pushmark */ - ck_null, /* wantarray */ - ck_svconst, /* const */ - ck_null, /* gvsv */ - ck_null, /* gv */ - ck_null, /* gelem */ - ck_null, /* padsv */ - ck_null, /* padav */ - ck_null, /* padhv */ - ck_null, /* padany */ - ck_null, /* pushre */ - ck_rvconst, /* rv2gv */ - ck_rvconst, /* rv2sv */ - ck_null, /* av2arylen */ - ck_rvconst, /* rv2cv */ - ck_anoncode, /* anoncode */ - ck_null, /* prototype */ - ck_spair, /* refgen */ - ck_null, /* srefgen */ - ck_fun, /* ref */ - ck_fun, /* bless */ - ck_null, /* backtick */ - ck_glob, /* glob */ - ck_null, /* readline */ - ck_null, /* rcatline */ - ck_fun, /* regcmaybe */ - ck_fun, /* regcreset */ - ck_null, /* regcomp */ - ck_match, /* match */ - ck_match, /* qr */ - ck_null, /* subst */ - ck_null, /* substcont */ - ck_null, /* trans */ - ck_null, /* sassign */ - ck_null, /* aassign */ - ck_spair, /* chop */ - ck_null, /* schop */ - ck_spair, /* chomp */ - ck_null, /* schomp */ - ck_defined, /* defined */ - ck_lfun, /* undef */ - ck_fun, /* study */ - ck_lfun, /* pos */ - ck_lfun, /* preinc */ - ck_lfun, /* i_preinc */ - ck_lfun, /* predec */ - ck_lfun, /* i_predec */ - ck_lfun, /* postinc */ - ck_lfun, /* i_postinc */ - ck_lfun, /* postdec */ - ck_lfun, /* i_postdec */ - ck_null, /* pow */ - ck_null, /* multiply */ - ck_null, /* i_multiply */ - ck_null, /* divide */ - ck_null, /* i_divide */ - ck_null, /* modulo */ - ck_null, /* i_modulo */ - ck_repeat, /* repeat */ - ck_null, /* add */ - ck_null, /* i_add */ - ck_null, /* subtract */ - ck_null, /* i_subtract */ - ck_concat, /* concat */ - ck_fun, /* stringify */ - ck_bitop, /* left_shift */ - ck_bitop, /* right_shift */ - ck_null, /* lt */ - ck_null, /* i_lt */ - ck_null, /* gt */ - ck_null, /* i_gt */ - ck_null, /* le */ - ck_null, /* i_le */ - ck_null, /* ge */ - ck_null, /* i_ge */ - ck_null, /* eq */ - ck_null, /* i_eq */ - ck_null, /* ne */ - ck_null, /* i_ne */ - ck_null, /* ncmp */ - ck_null, /* i_ncmp */ - ck_scmp, /* slt */ - ck_scmp, /* sgt */ - ck_scmp, /* sle */ - ck_scmp, /* sge */ - ck_null, /* seq */ - ck_null, /* sne */ - ck_scmp, /* scmp */ - ck_bitop, /* bit_and */ - ck_bitop, /* bit_xor */ - ck_bitop, /* bit_or */ - ck_null, /* negate */ - ck_null, /* i_negate */ - ck_null, /* not */ - ck_bitop, /* complement */ - ck_fun, /* atan2 */ - ck_fun, /* sin */ - ck_fun, /* cos */ - ck_fun, /* rand */ - ck_fun, /* srand */ - ck_fun, /* exp */ - ck_fun, /* log */ - ck_fun, /* sqrt */ - ck_fun, /* int */ - ck_fun, /* hex */ - ck_fun, /* oct */ - ck_fun, /* abs */ - ck_lengthconst, /* length */ - ck_fun, /* substr */ - ck_fun, /* vec */ - ck_index, /* index */ - ck_index, /* rindex */ - ck_fun_locale, /* sprintf */ - ck_fun, /* formline */ - ck_fun, /* ord */ - ck_fun, /* chr */ - ck_fun, /* crypt */ - ck_fun_locale, /* ucfirst */ - ck_fun_locale, /* lcfirst */ - ck_fun_locale, /* uc */ - ck_fun_locale, /* lc */ - ck_fun, /* quotemeta */ - ck_rvconst, /* rv2av */ - ck_null, /* aelemfast */ - ck_null, /* aelem */ - ck_null, /* aslice */ - ck_fun, /* each */ - ck_fun, /* values */ - ck_fun, /* keys */ - ck_delete, /* delete */ - ck_exists, /* exists */ - ck_rvconst, /* rv2hv */ - ck_null, /* helem */ - ck_null, /* hslice */ - ck_fun, /* unpack */ - ck_fun, /* pack */ - ck_split, /* split */ - ck_fun, /* join */ - ck_null, /* list */ - ck_null, /* lslice */ - ck_fun, /* anonlist */ - ck_fun, /* anonhash */ - ck_fun, /* splice */ - ck_fun, /* push */ - ck_shift, /* pop */ - ck_shift, /* shift */ - ck_fun, /* unshift */ - ck_sort, /* sort */ - ck_fun, /* reverse */ - ck_grep, /* grepstart */ - ck_null, /* grepwhile */ - ck_grep, /* mapstart */ - ck_null, /* mapwhile */ - ck_null, /* range */ - ck_null, /* flip */ - ck_null, /* flop */ - ck_null, /* and */ - ck_null, /* or */ - ck_null, /* xor */ - ck_null, /* cond_expr */ - ck_null, /* andassign */ - ck_null, /* orassign */ - ck_null, /* method */ - ck_subr, /* entersub */ - ck_null, /* leavesub */ - ck_fun, /* caller */ - ck_fun, /* warn */ - ck_fun, /* die */ - ck_fun, /* reset */ - ck_null, /* lineseq */ - ck_null, /* nextstate */ - ck_null, /* dbstate */ - ck_null, /* unstack */ - ck_null, /* enter */ - ck_null, /* leave */ - ck_null, /* scope */ - ck_null, /* enteriter */ - ck_null, /* iter */ - ck_null, /* enterloop */ - ck_null, /* leaveloop */ - ck_null, /* return */ - ck_null, /* last */ - ck_null, /* next */ - ck_null, /* redo */ - ck_null, /* dump */ - ck_null, /* goto */ - ck_fun, /* exit */ - ck_fun, /* open */ - ck_fun, /* close */ - ck_fun, /* pipe_op */ - ck_fun, /* fileno */ - ck_fun, /* umask */ - ck_fun, /* binmode */ - ck_fun, /* tie */ - ck_fun, /* untie */ - ck_fun, /* tied */ - ck_fun, /* dbmopen */ - ck_fun, /* dbmclose */ - ck_select, /* sselect */ - ck_select, /* select */ - ck_eof, /* getc */ - ck_fun, /* read */ - ck_fun, /* enterwrite */ - ck_null, /* leavewrite */ - ck_listiob, /* prtf */ - ck_listiob, /* print */ - ck_fun, /* sysopen */ - ck_fun, /* sysseek */ - ck_fun, /* sysread */ - ck_fun, /* syswrite */ - ck_fun, /* send */ - ck_fun, /* recv */ - ck_eof, /* eof */ - ck_fun, /* tell */ - ck_fun, /* seek */ - ck_trunc, /* truncate */ - ck_fun, /* fcntl */ - ck_fun, /* ioctl */ - ck_fun, /* flock */ - ck_fun, /* socket */ - ck_fun, /* sockpair */ - ck_fun, /* bind */ - ck_fun, /* connect */ - ck_fun, /* listen */ - ck_fun, /* accept */ - ck_fun, /* shutdown */ - ck_fun, /* gsockopt */ - ck_fun, /* ssockopt */ - ck_fun, /* getsockname */ - ck_fun, /* getpeername */ - ck_ftst, /* lstat */ - ck_ftst, /* stat */ - ck_ftst, /* ftrread */ - ck_ftst, /* ftrwrite */ - ck_ftst, /* ftrexec */ - ck_ftst, /* fteread */ - ck_ftst, /* ftewrite */ - ck_ftst, /* fteexec */ - ck_ftst, /* ftis */ - ck_ftst, /* fteowned */ - ck_ftst, /* ftrowned */ - ck_ftst, /* ftzero */ - ck_ftst, /* ftsize */ - ck_ftst, /* ftmtime */ - ck_ftst, /* ftatime */ - ck_ftst, /* ftctime */ - ck_ftst, /* ftsock */ - ck_ftst, /* ftchr */ - ck_ftst, /* ftblk */ - ck_ftst, /* ftfile */ - ck_ftst, /* ftdir */ - ck_ftst, /* ftpipe */ - ck_ftst, /* ftlink */ - ck_ftst, /* ftsuid */ - ck_ftst, /* ftsgid */ - ck_ftst, /* ftsvtx */ - ck_ftst, /* fttty */ - ck_ftst, /* fttext */ - ck_ftst, /* ftbinary */ - ck_fun, /* chdir */ - ck_fun, /* chown */ - ck_fun, /* chroot */ - ck_fun, /* unlink */ - ck_fun, /* chmod */ - ck_fun, /* utime */ - ck_fun, /* rename */ - ck_fun, /* link */ - ck_fun, /* symlink */ - ck_fun, /* readlink */ - ck_fun, /* mkdir */ - ck_fun, /* rmdir */ - ck_fun, /* open_dir */ - ck_fun, /* readdir */ - ck_fun, /* telldir */ - ck_fun, /* seekdir */ - ck_fun, /* rewinddir */ - ck_fun, /* closedir */ - ck_null, /* fork */ - ck_null, /* wait */ - ck_fun, /* waitpid */ - ck_exec, /* system */ - ck_exec, /* exec */ - ck_fun, /* kill */ - ck_null, /* getppid */ - ck_fun, /* getpgrp */ - ck_fun, /* setpgrp */ - ck_fun, /* getpriority */ - ck_fun, /* setpriority */ - ck_null, /* time */ - ck_null, /* tms */ - ck_fun, /* localtime */ - ck_fun, /* gmtime */ - ck_fun, /* alarm */ - ck_fun, /* sleep */ - ck_fun, /* shmget */ - ck_fun, /* shmctl */ - ck_fun, /* shmread */ - ck_fun, /* shmwrite */ - ck_fun, /* msgget */ - ck_fun, /* msgctl */ - ck_fun, /* msgsnd */ - ck_fun, /* msgrcv */ - ck_fun, /* semget */ - ck_fun, /* semctl */ - ck_fun, /* semop */ - ck_require, /* require */ - ck_fun, /* dofile */ - ck_eval, /* entereval */ - ck_null, /* leaveeval */ - ck_null, /* entertry */ - ck_null, /* leavetry */ - ck_fun, /* ghbyname */ - ck_fun, /* ghbyaddr */ - ck_null, /* ghostent */ - ck_fun, /* gnbyname */ - ck_fun, /* gnbyaddr */ - ck_null, /* gnetent */ - ck_fun, /* gpbyname */ - ck_fun, /* gpbynumber */ - ck_null, /* gprotoent */ - ck_fun, /* gsbyname */ - ck_fun, /* gsbyport */ - ck_null, /* gservent */ - ck_fun, /* shostent */ - ck_fun, /* snetent */ - ck_fun, /* sprotoent */ - ck_fun, /* sservent */ - ck_null, /* ehostent */ - ck_null, /* enetent */ - ck_null, /* eprotoent */ - ck_null, /* eservent */ - ck_fun, /* gpwnam */ - ck_fun, /* gpwuid */ - ck_null, /* gpwent */ - ck_null, /* spwent */ - ck_null, /* epwent */ - ck_fun, /* ggrnam */ - ck_fun, /* ggrgid */ - ck_null, /* ggrent */ - ck_null, /* sgrent */ - ck_null, /* egrent */ - ck_null, /* getlogin */ - ck_fun, /* syscall */ - ck_rfun, /* lock */ - ck_null, /* threadsv */ + Perl_ck_null, /* null */ + Perl_ck_null, /* stub */ + Perl_ck_fun, /* scalar */ + Perl_ck_null, /* pushmark */ + Perl_ck_null, /* wantarray */ + Perl_ck_svconst,/* const */ + Perl_ck_null, /* gvsv */ + Perl_ck_null, /* gv */ + Perl_ck_null, /* gelem */ + Perl_ck_null, /* padsv */ + Perl_ck_null, /* padav */ + Perl_ck_null, /* padhv */ + Perl_ck_null, /* padany */ + Perl_ck_null, /* pushre */ + Perl_ck_rvconst,/* rv2gv */ + Perl_ck_rvconst,/* rv2sv */ + Perl_ck_null, /* av2arylen */ + Perl_ck_rvconst,/* rv2cv */ + Perl_ck_anoncode,/* anoncode */ + Perl_ck_null, /* prototype */ + Perl_ck_spair, /* refgen */ + Perl_ck_null, /* srefgen */ + Perl_ck_fun, /* ref */ + Perl_ck_fun, /* bless */ + Perl_ck_null, /* backtick */ + Perl_ck_glob, /* glob */ + Perl_ck_null, /* readline */ + Perl_ck_null, /* rcatline */ + Perl_ck_fun, /* regcmaybe */ + Perl_ck_fun, /* regcreset */ + Perl_ck_null, /* regcomp */ + Perl_ck_match, /* match */ + Perl_ck_match, /* qr */ + Perl_ck_null, /* subst */ + Perl_ck_null, /* substcont */ + Perl_ck_null, /* trans */ + Perl_ck_null, /* sassign */ + Perl_ck_null, /* aassign */ + Perl_ck_spair, /* chop */ + Perl_ck_null, /* schop */ + Perl_ck_spair, /* chomp */ + Perl_ck_null, /* schomp */ + Perl_ck_defined,/* defined */ + Perl_ck_lfun, /* undef */ + Perl_ck_fun, /* study */ + Perl_ck_lfun, /* pos */ + Perl_ck_lfun, /* preinc */ + Perl_ck_lfun, /* i_preinc */ + Perl_ck_lfun, /* predec */ + Perl_ck_lfun, /* i_predec */ + Perl_ck_lfun, /* postinc */ + Perl_ck_lfun, /* i_postinc */ + Perl_ck_lfun, /* postdec */ + Perl_ck_lfun, /* i_postdec */ + Perl_ck_null, /* pow */ + Perl_ck_null, /* multiply */ + Perl_ck_null, /* i_multiply */ + Perl_ck_null, /* divide */ + Perl_ck_null, /* i_divide */ + Perl_ck_null, /* modulo */ + Perl_ck_null, /* i_modulo */ + Perl_ck_repeat, /* repeat */ + Perl_ck_null, /* add */ + Perl_ck_null, /* i_add */ + Perl_ck_null, /* subtract */ + Perl_ck_null, /* i_subtract */ + Perl_ck_concat, /* concat */ + Perl_ck_fun, /* stringify */ + Perl_ck_bitop, /* left_shift */ + Perl_ck_bitop, /* right_shift */ + Perl_ck_null, /* lt */ + Perl_ck_null, /* i_lt */ + Perl_ck_null, /* gt */ + Perl_ck_null, /* i_gt */ + Perl_ck_null, /* le */ + Perl_ck_null, /* i_le */ + Perl_ck_null, /* ge */ + Perl_ck_null, /* i_ge */ + Perl_ck_null, /* eq */ + Perl_ck_null, /* i_eq */ + Perl_ck_null, /* ne */ + Perl_ck_null, /* i_ne */ + Perl_ck_null, /* ncmp */ + Perl_ck_null, /* i_ncmp */ + Perl_ck_scmp, /* slt */ + Perl_ck_scmp, /* sgt */ + Perl_ck_scmp, /* sle */ + Perl_ck_scmp, /* sge */ + Perl_ck_null, /* seq */ + Perl_ck_null, /* sne */ + Perl_ck_scmp, /* scmp */ + Perl_ck_bitop, /* bit_and */ + Perl_ck_bitop, /* bit_xor */ + Perl_ck_bitop, /* bit_or */ + Perl_ck_null, /* negate */ + Perl_ck_null, /* i_negate */ + Perl_ck_null, /* not */ + Perl_ck_bitop, /* complement */ + Perl_ck_fun, /* atan2 */ + Perl_ck_fun, /* sin */ + Perl_ck_fun, /* cos */ + Perl_ck_fun, /* rand */ + Perl_ck_fun, /* srand */ + Perl_ck_fun, /* exp */ + Perl_ck_fun, /* log */ + Perl_ck_fun, /* sqrt */ + Perl_ck_fun, /* int */ + Perl_ck_fun, /* hex */ + Perl_ck_fun, /* oct */ + Perl_ck_fun, /* abs */ + Perl_ck_lengthconst,/* length */ + Perl_ck_fun, /* substr */ + Perl_ck_fun, /* vec */ + Perl_ck_index, /* index */ + Perl_ck_index, /* rindex */ + Perl_ck_fun_locale,/* sprintf */ + Perl_ck_fun, /* formline */ + Perl_ck_fun, /* ord */ + Perl_ck_fun, /* chr */ + Perl_ck_fun, /* crypt */ + Perl_ck_fun_locale,/* ucfirst */ + Perl_ck_fun_locale,/* lcfirst */ + Perl_ck_fun_locale,/* uc */ + Perl_ck_fun_locale,/* lc */ + Perl_ck_fun, /* quotemeta */ + Perl_ck_rvconst,/* rv2av */ + Perl_ck_null, /* aelemfast */ + Perl_ck_null, /* aelem */ + Perl_ck_null, /* aslice */ + Perl_ck_fun, /* each */ + Perl_ck_fun, /* values */ + Perl_ck_fun, /* keys */ + Perl_ck_delete, /* delete */ + Perl_ck_exists, /* exists */ + Perl_ck_rvconst,/* rv2hv */ + Perl_ck_null, /* helem */ + Perl_ck_null, /* hslice */ + Perl_ck_fun, /* unpack */ + Perl_ck_fun, /* pack */ + Perl_ck_split, /* split */ + Perl_ck_fun, /* join */ + Perl_ck_null, /* list */ + Perl_ck_null, /* lslice */ + Perl_ck_fun, /* anonlist */ + Perl_ck_fun, /* anonhash */ + Perl_ck_fun, /* splice */ + Perl_ck_fun, /* push */ + Perl_ck_shift, /* pop */ + Perl_ck_shift, /* shift */ + Perl_ck_fun, /* unshift */ + Perl_ck_sort, /* sort */ + Perl_ck_fun, /* reverse */ + Perl_ck_grep, /* grepstart */ + Perl_ck_null, /* grepwhile */ + Perl_ck_grep, /* mapstart */ + Perl_ck_null, /* mapwhile */ + Perl_ck_null, /* range */ + Perl_ck_null, /* flip */ + Perl_ck_null, /* flop */ + Perl_ck_null, /* and */ + Perl_ck_null, /* or */ + Perl_ck_null, /* xor */ + Perl_ck_null, /* cond_expr */ + Perl_ck_null, /* andassign */ + Perl_ck_null, /* orassign */ + Perl_ck_null, /* method */ + Perl_ck_subr, /* entersub */ + Perl_ck_null, /* leavesub */ + Perl_ck_fun, /* caller */ + Perl_ck_fun, /* warn */ + Perl_ck_fun, /* die */ + Perl_ck_fun, /* reset */ + Perl_ck_null, /* lineseq */ + Perl_ck_null, /* nextstate */ + Perl_ck_null, /* dbstate */ + Perl_ck_null, /* unstack */ + Perl_ck_null, /* enter */ + Perl_ck_null, /* leave */ + Perl_ck_null, /* scope */ + Perl_ck_null, /* enteriter */ + Perl_ck_null, /* iter */ + Perl_ck_null, /* enterloop */ + Perl_ck_null, /* leaveloop */ + Perl_ck_null, /* return */ + Perl_ck_null, /* last */ + Perl_ck_null, /* next */ + Perl_ck_null, /* redo */ + Perl_ck_null, /* dump */ + Perl_ck_null, /* goto */ + Perl_ck_fun, /* exit */ + Perl_ck_fun, /* open */ + Perl_ck_fun, /* close */ + Perl_ck_fun, /* pipe_op */ + Perl_ck_fun, /* fileno */ + Perl_ck_fun, /* umask */ + Perl_ck_fun, /* binmode */ + Perl_ck_fun, /* tie */ + Perl_ck_fun, /* untie */ + Perl_ck_fun, /* tied */ + Perl_ck_fun, /* dbmopen */ + Perl_ck_fun, /* dbmclose */ + Perl_ck_select, /* sselect */ + Perl_ck_select, /* select */ + Perl_ck_eof, /* getc */ + Perl_ck_fun, /* read */ + Perl_ck_fun, /* enterwrite */ + Perl_ck_null, /* leavewrite */ + Perl_ck_listiob,/* prtf */ + Perl_ck_listiob,/* print */ + Perl_ck_fun, /* sysopen */ + Perl_ck_fun, /* sysseek */ + Perl_ck_fun, /* sysread */ + Perl_ck_fun, /* syswrite */ + Perl_ck_fun, /* send */ + Perl_ck_fun, /* recv */ + Perl_ck_eof, /* eof */ + Perl_ck_fun, /* tell */ + Perl_ck_fun, /* seek */ + Perl_ck_trunc, /* truncate */ + Perl_ck_fun, /* fcntl */ + Perl_ck_fun, /* ioctl */ + Perl_ck_fun, /* flock */ + Perl_ck_fun, /* socket */ + Perl_ck_fun, /* sockpair */ + Perl_ck_fun, /* bind */ + Perl_ck_fun, /* connect */ + Perl_ck_fun, /* listen */ + Perl_ck_fun, /* accept */ + Perl_ck_fun, /* shutdown */ + Perl_ck_fun, /* gsockopt */ + Perl_ck_fun, /* ssockopt */ + Perl_ck_fun, /* getsockname */ + Perl_ck_fun, /* getpeername */ + Perl_ck_ftst, /* lstat */ + Perl_ck_ftst, /* stat */ + Perl_ck_ftst, /* ftrread */ + Perl_ck_ftst, /* ftrwrite */ + Perl_ck_ftst, /* ftrexec */ + Perl_ck_ftst, /* fteread */ + Perl_ck_ftst, /* ftewrite */ + Perl_ck_ftst, /* fteexec */ + Perl_ck_ftst, /* ftis */ + Perl_ck_ftst, /* fteowned */ + Perl_ck_ftst, /* ftrowned */ + Perl_ck_ftst, /* ftzero */ + Perl_ck_ftst, /* ftsize */ + Perl_ck_ftst, /* ftmtime */ + Perl_ck_ftst, /* ftatime */ + Perl_ck_ftst, /* ftctime */ + Perl_ck_ftst, /* ftsock */ + Perl_ck_ftst, /* ftchr */ + Perl_ck_ftst, /* ftblk */ + Perl_ck_ftst, /* ftfile */ + Perl_ck_ftst, /* ftdir */ + Perl_ck_ftst, /* ftpipe */ + Perl_ck_ftst, /* ftlink */ + Perl_ck_ftst, /* ftsuid */ + Perl_ck_ftst, /* ftsgid */ + Perl_ck_ftst, /* ftsvtx */ + Perl_ck_ftst, /* fttty */ + Perl_ck_ftst, /* fttext */ + Perl_ck_ftst, /* ftbinary */ + Perl_ck_fun, /* chdir */ + Perl_ck_fun, /* chown */ + Perl_ck_fun, /* chroot */ + Perl_ck_fun, /* unlink */ + Perl_ck_fun, /* chmod */ + Perl_ck_fun, /* utime */ + Perl_ck_fun, /* rename */ + Perl_ck_fun, /* link */ + Perl_ck_fun, /* symlink */ + Perl_ck_fun, /* readlink */ + Perl_ck_fun, /* mkdir */ + Perl_ck_fun, /* rmdir */ + Perl_ck_fun, /* open_dir */ + Perl_ck_fun, /* readdir */ + Perl_ck_fun, /* telldir */ + Perl_ck_fun, /* seekdir */ + Perl_ck_fun, /* rewinddir */ + Perl_ck_fun, /* closedir */ + Perl_ck_null, /* fork */ + Perl_ck_null, /* wait */ + Perl_ck_fun, /* waitpid */ + Perl_ck_exec, /* system */ + Perl_ck_exec, /* exec */ + Perl_ck_fun, /* kill */ + Perl_ck_null, /* getppid */ + Perl_ck_fun, /* getpgrp */ + Perl_ck_fun, /* setpgrp */ + Perl_ck_fun, /* getpriority */ + Perl_ck_fun, /* setpriority */ + Perl_ck_null, /* time */ + Perl_ck_null, /* tms */ + Perl_ck_fun, /* localtime */ + Perl_ck_fun, /* gmtime */ + Perl_ck_fun, /* alarm */ + Perl_ck_fun, /* sleep */ + Perl_ck_fun, /* shmget */ + Perl_ck_fun, /* shmctl */ + Perl_ck_fun, /* shmread */ + Perl_ck_fun, /* shmwrite */ + Perl_ck_fun, /* msgget */ + Perl_ck_fun, /* msgctl */ + Perl_ck_fun, /* msgsnd */ + Perl_ck_fun, /* msgrcv */ + Perl_ck_fun, /* semget */ + Perl_ck_fun, /* semctl */ + Perl_ck_fun, /* semop */ + Perl_ck_require,/* require */ + Perl_ck_fun, /* dofile */ + Perl_ck_eval, /* entereval */ + Perl_ck_null, /* leaveeval */ + Perl_ck_null, /* entertry */ + Perl_ck_null, /* leavetry */ + Perl_ck_fun, /* ghbyname */ + Perl_ck_fun, /* ghbyaddr */ + Perl_ck_null, /* ghostent */ + Perl_ck_fun, /* gnbyname */ + Perl_ck_fun, /* gnbyaddr */ + Perl_ck_null, /* gnetent */ + Perl_ck_fun, /* gpbyname */ + Perl_ck_fun, /* gpbynumber */ + Perl_ck_null, /* gprotoent */ + Perl_ck_fun, /* gsbyname */ + Perl_ck_fun, /* gsbyport */ + Perl_ck_null, /* gservent */ + Perl_ck_fun, /* shostent */ + Perl_ck_fun, /* snetent */ + Perl_ck_fun, /* sprotoent */ + Perl_ck_fun, /* sservent */ + Perl_ck_null, /* ehostent */ + Perl_ck_null, /* enetent */ + Perl_ck_null, /* eprotoent */ + Perl_ck_null, /* eservent */ + Perl_ck_fun, /* gpwnam */ + Perl_ck_fun, /* gpwuid */ + Perl_ck_null, /* gpwent */ + Perl_ck_null, /* spwent */ + Perl_ck_null, /* epwent */ + Perl_ck_fun, /* ggrnam */ + Perl_ck_fun, /* ggrgid */ + Perl_ck_null, /* ggrent */ + Perl_ck_null, /* sgrent */ + Perl_ck_null, /* egrent */ + Perl_ck_null, /* getlogin */ + Perl_ck_fun, /* syscall */ + Perl_ck_rfun, /* lock */ + Perl_ck_null, /* threadsv */ }; #endif @@ -29,10 +29,10 @@ while (<DATA>) { $i = 0; print <<"END"; -#define pp_i_preinc pp_preinc -#define pp_i_predec pp_predec -#define pp_i_postinc pp_postinc -#define pp_i_postdec pp_postdec +#define Perl_pp_i_preinc Perl_pp_preinc +#define Perl_pp_i_predec Perl_pp_predec +#define Perl_pp_i_postinc Perl_pp_postinc +#define Perl_pp_i_postdec Perl_pp_postdec typedef enum { END @@ -82,8 +82,8 @@ START_EXTERN_C #undef PERL_CKDEF #undef PERL_PPDEF -#define PERL_CKDEF(s) OP *s (OP *o); -#define PERL_PPDEF(s) OP *s (ARGSproto); +#define PERL_CKDEF(s) OP *s (pTHX_ OP *o); +#define PERL_PPDEF(s) OP *s (pTHX_ ARGSproto); #include "pp_proto.h" @@ -115,7 +115,7 @@ EXT OP * (CPERLscope(*PL_ppaddr)[])(ARGSproto) = { END for (@ops) { - print "\tpp_$_,\n"; + print "\tPerl_pp_$_,\n"; } print <<END; @@ -134,7 +134,7 @@ EXT OP * (CPERLscope(*PL_check)[]) (OP *op) = { END for (@ops) { - print "\t", &tab(3, "$check{$_},"), "/* $_ */\n"; + print "\t", &tab(3, "Perl_$check{$_},"), "/* $_ */\n"; } print <<END; @@ -218,8 +218,8 @@ open PP, '>pp_proto.h' or die "Error creating pp_proto.h: $!"; open PPSYM, '>pp.sym' or die "Error creating pp.sym: $!"; for (sort keys %ckname) { - print PP "PERL_CKDEF($_)\n"; - print PPSYM "$_\n"; + print PP "PERL_CKDEF(Perl_$_)\n"; + print PPSYM "Perl_$_\n"; #OP *\t", &tab(3,$_),"(OP* o);\n"; } @@ -227,8 +227,8 @@ print PP "\n\n"; for (@ops) { next if /^i_(pre|post)(inc|dec)$/; - print PP "PERL_PPDEF(pp_$_)\n"; - print PPSYM "pp_$_\n"; + print PP "PERL_PPDEF(Perl_pp_$_)\n"; + print PPSYM "Perl_pp_$_\n"; } close PP or die "Error closing pp_proto.h: $!"; @@ -12,6 +12,7 @@ */ #include "EXTERN.h" +#define PERL_IN_PERL_C #include "perl.h" /* XXX If this causes problems, set i_unistd=undef in the hint file. */ @@ -43,41 +44,8 @@ char *getenv (char *); /* Usually in <stdlib.h> */ #endif #ifdef PERL_OBJECT -static I32 read_e_script (CPerlObj* pPerl, int idx, SV *buf_sv, int maxlen); -#else -static void find_beginning (void); -static void forbid_setid (char *); -static void incpush (char *, int); -static void init_interp (void); -static void init_ids (void); -static void init_debugger (void); -static void init_lexer (void); -static void init_main_stash (void); -static void *perl_parse_body (va_list args); -static void *perl_run_body (va_list args); -static void *perl_call_body (va_list args); -static void perl_call_xbody (OP *myop, int is_eval); -static void *call_list_body (va_list args); -#ifdef USE_THREADS -static struct perl_thread * init_main_thread (void); -#endif /* USE_THREADS */ -static void init_perllib (void); -static void init_postdump_symbols (int, char **, char **); -static void init_predump_symbols (void); -static void my_exit_jump (void) __attribute__((noreturn)); -static void nuke_stacks (void); -static void open_script (char *, bool, SV *, int *fd); -static void usage (char *); -#ifdef IAMSUID -static int fd_on_nosuid_fs (int); -#endif -static void validate_suid (char *, char*, int); -static I32 read_e_script (int idx, SV *buf_sv, int maxlen); -#endif - -#ifdef PERL_OBJECT CPerlObj* perl_alloc(IPerlMem* ipM, IPerlEnv* ipE, IPerlStdIO* ipStd, - IPerlLIO* ipLIO, IPerlDir* ipD, IPerlSock* ipS, IPerlProc* ipP) + IPerlLIO* ipLIO, IPerlDir* ipD, IPerlSock* ipS, IPerlProc* ipP) { CPerlObj* pPerl = new(ipM) CPerlObj(ipM, ipE, ipStd, ipLIO, ipD, ipS, ipP); if(pPerl != NULL) @@ -87,7 +55,7 @@ CPerlObj* perl_alloc(IPerlMem* ipM, IPerlEnv* ipE, IPerlStdIO* ipStd, } #else PerlInterpreter * -perl_alloc(void) +perl_alloc(pTHX) { PerlInterpreter *sv_interp; @@ -98,11 +66,7 @@ perl_alloc(void) #endif /* PERL_OBJECT */ void -#ifdef PERL_OBJECT -perl_construct(void) -#else perl_construct(register PerlInterpreter *sv_interp) -#endif { #ifdef USE_THREADS int i; @@ -240,11 +204,7 @@ perl_construct(register PerlInterpreter *sv_interp) } void -#ifdef PERL_OBJECT -perl_destruct(void) -#else perl_destruct(register PerlInterpreter *sv_interp) -#endif { dTHR; int destruct_level; /* 0=none, 1=full, 2=full with checks */ @@ -602,11 +562,7 @@ perl_destruct(register PerlInterpreter *sv_interp) } void -#ifdef PERL_OBJECT -perl_free(void) -#else perl_free(PerlInterpreter *sv_interp) -#endif { #ifdef PERL_OBJECT Safefree(this); @@ -618,11 +574,7 @@ perl_free(PerlInterpreter *sv_interp) } void -#ifdef PERL_OBJECT -perl_atexit(void (*fn) (CPerlObj*,void *), void *ptr) -#else -perl_atexit(void (*fn) (void *), void *ptr) -#endif +Perl_call_atexit(pTHX_ ATEXIT_t fn, void *ptr) { Renew(PL_exitlist, PL_exitlistlen+1, PerlExitListEntry); PL_exitlist[PL_exitlistlen].fn = fn; @@ -630,18 +582,8 @@ perl_atexit(void (*fn) (void *), void *ptr) ++PL_exitlistlen; } -#ifdef PERL_OBJECT - typedef void (*xs_init_t)(CPerlObj*); -#else - typedef void (*xs_init_t)(void); -#endif - int -#ifdef PERL_OBJECT -perl_parse(xs_init_t xsinit, int argc, char **argv, char **env) -#else -perl_parse(PerlInterpreter *sv_interp, xs_init_t xsinit, int argc, char **argv, char **env) -#endif +perl_parse(PerlInterpreter *sv_interp, XSINIT_t xsinit, int argc, char **argv, char **env) { dTHR; I32 oldscope; @@ -696,7 +638,7 @@ setuid perl scripts securely.\n"); oldscope = PL_scopestack_ix; PL_dowarn = G_WARN_OFF; - CALLPROTECT(&ret, FUNC_NAME_TO_PTR(perl_parse_body), env, xsinit); + CALLPROTECT(&ret, FUNC_NAME_TO_PTR(parse_body), env, xsinit); switch (ret) { case 0: return 0; @@ -720,7 +662,7 @@ setuid perl scripts securely.\n"); } STATIC void * -perl_parse_body(va_list args) +parse_body(pTHX_ va_list args) { dTHR; int argc = PL_origargc; @@ -734,7 +676,7 @@ perl_parse_body(va_list args) register SV *sv; register char *s; - xs_init_t xsinit = va_arg(args, xs_init_t); + XSINIT_t xsinit = va_arg(args, XSINIT_t); sv_setpvn(PL_linestr,"",0); sv = newSVpvn("",0); /* first used for -I flags */ @@ -1032,7 +974,7 @@ print \" \\@INC:\\n @INC\\n\";"); /* now that script is parsed, we can modify record separator */ SvREFCNT_dec(PL_rs); PL_rs = SvREFCNT_inc(PL_nrs); - sv_setsv(perl_get_sv("/", TRUE), PL_rs); + sv_setsv(get_sv("/", TRUE), PL_rs); if (PL_do_undump) my_unexec(); @@ -1053,11 +995,7 @@ print \" \\@INC:\\n @INC\\n\";"); } int -#ifdef PERL_OBJECT -perl_run(void) -#else perl_run(PerlInterpreter *sv_interp) -#endif { dTHR; I32 oldscope; @@ -1071,7 +1009,7 @@ perl_run(PerlInterpreter *sv_interp) oldscope = PL_scopestack_ix; redo_body: - CALLPROTECT(&ret, FUNC_NAME_TO_PTR(perl_run_body), oldscope); + CALLPROTECT(&ret, FUNC_NAME_TO_PTR(run_body), oldscope); switch (ret) { case 1: cxstack_ix = -1; /* start context stack again */ @@ -1104,7 +1042,7 @@ perl_run(PerlInterpreter *sv_interp) } STATIC void * -perl_run_body(va_list args) +run_body(pTHX_ va_list args) { dTHR; I32 oldscope = va_arg(args, I32); @@ -1145,7 +1083,7 @@ perl_run_body(va_list args) } SV* -perl_get_sv(const char *name, I32 create) +Perl_get_sv(pTHX_ const char *name, I32 create) { GV *gv; #ifdef USE_THREADS @@ -1164,7 +1102,7 @@ perl_get_sv(const char *name, I32 create) } AV* -perl_get_av(const char *name, I32 create) +Perl_get_av(pTHX_ const char *name, I32 create) { GV* gv = gv_fetchpv(name, create, SVt_PVAV); if (create) @@ -1175,7 +1113,7 @@ perl_get_av(const char *name, I32 create) } HV* -perl_get_hv(const char *name, I32 create) +Perl_get_hv(pTHX_ const char *name, I32 create) { GV* gv = gv_fetchpv(name, create, SVt_PVHV); if (create) @@ -1186,7 +1124,7 @@ perl_get_hv(const char *name, I32 create) } CV* -perl_get_cv(const char *name, I32 create) +Perl_get_cv(pTHX_ const char *name, I32 create) { GV* gv = gv_fetchpv(name, create, SVt_PVCV); /* XXX unsafe for threads if eval_owner isn't held */ @@ -1206,7 +1144,7 @@ perl_get_cv(const char *name, I32 create) /* Be sure to refetch the stack pointer after calling these routines. */ I32 -perl_call_argv(const char *sub_name, I32 flags, register char **argv) +Perl_call_argv(pTHX_ const char *sub_name, I32 flags, register char **argv) /* See G_* flags in cop.h */ /* null terminated arg list */ @@ -1221,19 +1159,19 @@ perl_call_argv(const char *sub_name, I32 flags, register char **argv) } PUTBACK; } - return perl_call_pv(sub_name, flags); + return call_pv(sub_name, flags); } I32 -perl_call_pv(const char *sub_name, I32 flags) +Perl_call_pv(pTHX_ const char *sub_name, I32 flags) /* name of the subroutine */ /* See G_* flags in cop.h */ { - return perl_call_sv((SV*)perl_get_cv(sub_name, TRUE), flags); + return call_sv((SV*)get_cv(sub_name, TRUE), flags); } I32 -perl_call_method(const char *methname, I32 flags) +Perl_call_method(pTHX_ const char *methname, I32 flags) /* name of the subroutine */ /* See G_* flags in cop.h */ { @@ -1246,12 +1184,12 @@ perl_call_method(const char *methname, I32 flags) pp_method(ARGS); if(PL_op == &myop) PL_op = Nullop; - return perl_call_sv(*PL_stack_sp--, flags); + return call_sv(*PL_stack_sp--, flags); } /* May be called with any of a CV, a GV, or an SV containing the name. */ I32 -perl_call_sv(SV *sv, I32 flags) +Perl_call_sv(pTHX_ SV *sv, I32 flags) /* See G_* flags in cop.h */ { @@ -1295,7 +1233,7 @@ perl_call_sv(SV *sv, I32 flags) if (!(flags & G_EVAL)) { CATCH_SET(TRUE); - perl_call_xbody((OP*)&myop, FALSE); + call_xbody((OP*)&myop, FALSE); retval = PL_stack_sp - (PL_stack_base + oldmark); CATCH_SET(FALSE); } @@ -1324,7 +1262,7 @@ perl_call_sv(SV *sv, I32 flags) PL_markstack_ptr++; redo_body: - CALLPROTECT(&ret, FUNC_NAME_TO_PTR(perl_call_body), (OP*)&myop, FALSE); + CALLPROTECT(&ret, FUNC_NAME_TO_PTR(call_body), (OP*)&myop, FALSE); switch (ret) { case 0: retval = PL_stack_sp - (PL_stack_base + oldmark); @@ -1384,17 +1322,17 @@ perl_call_sv(SV *sv, I32 flags) } STATIC void * -perl_call_body(va_list args) +call_body(pTHX_ va_list args) { OP *myop = va_arg(args, OP*); int is_eval = va_arg(args, int); - perl_call_xbody(myop, is_eval); + call_xbody(myop, is_eval); return NULL; } STATIC void -perl_call_xbody(OP *myop, int is_eval) +call_xbody(pTHX_ OP *myop, int is_eval) { dTHR; @@ -1411,7 +1349,7 @@ perl_call_xbody(OP *myop, int is_eval) /* Eval a string. The G_EVAL flag is always assumed. */ I32 -perl_eval_sv(SV *sv, I32 flags) +Perl_eval_sv(pTHX_ SV *sv, I32 flags) /* See G_* flags in cop.h */ { @@ -1446,7 +1384,7 @@ perl_eval_sv(SV *sv, I32 flags) myop.op_flags |= OPf_SPECIAL; redo_body: - CALLPROTECT(&ret, FUNC_NAME_TO_PTR(perl_call_body), (OP*)&myop, TRUE); + CALLPROTECT(&ret, FUNC_NAME_TO_PTR(call_body), (OP*)&myop, TRUE); switch (ret) { case 0: retval = PL_stack_sp - (PL_stack_base + oldmark); @@ -1491,13 +1429,13 @@ perl_eval_sv(SV *sv, I32 flags) } SV* -perl_eval_pv(const char *p, I32 croak_on_error) +Perl_eval_pv(pTHX_ const char *p, I32 croak_on_error) { dSP; SV* sv = newSVpv(p, 0); PUSHMARK(SP); - perl_eval_sv(sv, G_SCALAR); + eval_sv(sv, G_SCALAR); SvREFCNT_dec(sv); SPAGAIN; @@ -1515,7 +1453,7 @@ perl_eval_pv(const char *p, I32 croak_on_error) /* Require a module. */ void -perl_require_pv(const char *pv) +Perl_require_pv(pTHX_ const char *pv) { SV* sv; dSP; @@ -1525,13 +1463,13 @@ perl_require_pv(const char *pv) sv_setpv(sv, "require '"); sv_catpv(sv, pv); sv_catpv(sv, "'"); - perl_eval_sv(sv, G_DISCARD); + eval_sv(sv, G_DISCARD); SPAGAIN; POPSTACK; } void -magicname(char *sym, char *name, I32 namlen) +Perl_magicname(pTHX_ char *sym, char *name, I32 namlen) { register GV *gv; @@ -1540,8 +1478,7 @@ magicname(char *sym, char *name, I32 namlen) } STATIC void -usage(char *name) /* XXX move this out into a module ? */ - +usage(pTHX_ char *name) /* XXX move this out into a module ? */ { /* This message really ought to be max 23 lines. * Removed -h because the user already knows that opton. Others? */ @@ -1583,7 +1520,7 @@ NULL /* This routine handles any switches that can be given during run */ char * -moreswitches(char *s) +Perl_moreswitches(pTHX_ char *s) { I32 numlen; U32 rschar; @@ -1873,7 +1810,7 @@ Internet, point your browser at http://www.perl.com/, the Perl Home Page.\n\n"); /* Known to work with -DUNEXEC and using unexelf.c from GNU emacs-20.2 */ void -my_unexec(void) +Perl_my_unexec(pTHX) { #ifdef UNEXEC SV* prog; @@ -1901,7 +1838,7 @@ my_unexec(void) /* initialize curinterp */ STATIC void -init_interp(void) +init_interp(pTHX) { #ifdef PERL_OBJECT /* XXX kludge */ @@ -1968,7 +1905,7 @@ init_interp(void) } STATIC void -init_main_stash(void) +init_main_stash(pTHX) { dTHR; GV *gv; @@ -2007,11 +1944,11 @@ init_main_stash(void) PL_debstash = GvHV(gv_fetchpv("DB::", GV_ADDMULTI, SVt_PVHV)); PL_globalstash = GvHV(gv_fetchpv("CORE::GLOBAL::", GV_ADDMULTI, SVt_PVHV)); /* We must init $/ before switches are processed. */ - sv_setpvn(perl_get_sv("/", TRUE), "\n", 1); + sv_setpvn(get_sv("/", TRUE), "\n", 1); } STATIC void -open_script(char *scriptname, bool dosearch, SV *sv, int *fdscript) +open_script(pTHX_ char *scriptname, bool dosearch, SV *sv, int *fdscript) { dTHR; register char *s; @@ -2174,8 +2111,8 @@ sed %s -e \"/^[^#]/b\" \ * here so that metaconfig picks them up. */ #ifdef IAMSUID -static int -fd_on_nosuid_fs(int fd) +STATIC int +fd_on_nosuid_fs(pTHX_ int fd) { int on_nosuid = 0; int check_okay = 0; @@ -2238,7 +2175,7 @@ fd_on_nosuid_fs(int fd) #endif /* IAMSUID */ STATIC void -validate_suid(char *validarg, char *scriptname, int fdscript) +validate_suid(pTHX_ char *validarg, char *scriptname, int fdscript) { int which; @@ -2483,7 +2420,7 @@ FIX YOUR KERNEL, PUT A C WRAPPER AROUND THIS SCRIPT, OR USE -u AND UNDUMP!\n"); } STATIC void -find_beginning(void) +find_beginning(pTHX) { register char *s, *s2; @@ -2513,7 +2450,7 @@ find_beginning(void) STATIC void -init_ids(void) +init_ids(pTHX) { PL_uid = (int)PerlProc_getuid(); PL_euid = (int)PerlProc_geteuid(); @@ -2527,7 +2464,7 @@ init_ids(void) } STATIC void -forbid_setid(char *s) +forbid_setid(pTHX_ char *s) { if (PL_euid != PL_uid) croak("No %s allowed while running setuid", s); @@ -2536,7 +2473,7 @@ forbid_setid(char *s) } STATIC void -init_debugger(void) +init_debugger(pTHX) { dTHR; PL_curstash = PL_debstash; @@ -2561,7 +2498,7 @@ init_debugger(void) #endif void -init_stacks(ARGSproto) +Perl_init_stacks(pTHX_ ARGSproto) { /* start with 128-item stack and 8K cxstack */ PL_curstackinfo = new_stackinfo(REASONABLE(128), @@ -2601,7 +2538,7 @@ init_stacks(ARGSproto) #undef REASONABLE STATIC void -nuke_stacks(void) +nuke_stacks(pTHX) { dTHR; while (PL_curstackinfo->si_next) @@ -2629,7 +2566,7 @@ static PerlIO *tmpfp; /* moved outside init_lexer() because of UNICOS bug */ #endif STATIC void -init_lexer(void) +init_lexer(pTHX) { #ifdef PERL_OBJECT PerlIO *tmpfp; @@ -2642,13 +2579,13 @@ init_lexer(void) } STATIC void -init_predump_symbols(void) +init_predump_symbols(pTHX) { dTHR; GV *tmpgv; GV *othergv; - sv_setpvn(perl_get_sv("\"", TRUE), " ", 1); + sv_setpvn(get_sv("\"", TRUE), " ", 1); PL_stdingv = gv_fetchpv("STDIN",TRUE, SVt_PVIO); GvMULTI_on(PL_stdingv); IoIFP(GvIOp(PL_stdingv)) = PerlIO_stdin(); @@ -2678,7 +2615,7 @@ init_predump_symbols(void) } STATIC void -init_postdump_symbols(register int argc, register char **argv, register char **env) +init_postdump_symbols(pTHX_ register int argc, register char **argv, register char **env) { dTHR; char *s; @@ -2766,7 +2703,7 @@ init_postdump_symbols(register int argc, register char **argv, register char **e } STATIC void -init_perllib(void) +init_perllib(pTHX) { char *s; if (!PL_tainting) { @@ -2837,7 +2774,7 @@ init_perllib(void) #endif STATIC void -incpush(char *p, int addsubdirs) +incpush(pTHX_ char *p, int addsubdirs) { SV *subdir = Nullsv; @@ -2925,7 +2862,7 @@ incpush(char *p, int addsubdirs) #ifdef USE_THREADS STATIC struct perl_thread * -init_main_thread() +init_main_thread(pTHX) { struct perl_thread *thr; XPV *xpv; @@ -2996,7 +2933,7 @@ init_main_thread() #endif /* USE_THREADS */ void -call_list(I32 oldscope, AV *paramList) +Perl_call_list(pTHX_ I32 oldscope, AV *paramList) { dTHR; SV *atsv = ERRSV; @@ -3059,18 +2996,18 @@ call_list(I32 oldscope, AV *paramList) } STATIC void * -call_list_body(va_list args) +call_list_body(pTHX_ va_list args) { dTHR; CV *cv = va_arg(args, CV*); PUSHMARK(PL_stack_sp); - perl_call_sv((SV*)cv, G_EVAL|G_DISCARD); + call_sv((SV*)cv, G_EVAL|G_DISCARD); return NULL; } void -my_exit(U32 status) +Perl_my_exit(pTHX_ U32 status) { dTHR; @@ -3091,7 +3028,7 @@ my_exit(U32 status) } void -my_failure_exit(void) +Perl_my_failure_exit(pTHX) { #ifdef VMS if (vaxc$errno & 1) { @@ -3120,7 +3057,7 @@ my_failure_exit(void) } STATIC void -my_exit_jump(void) +my_exit_jump(pTHX) { dTHR; register PERL_CONTEXT *cx; @@ -3149,12 +3086,8 @@ my_exit_jump(void) #include "XSUB.h" -static I32 -#ifdef PERL_OBJECT -read_e_script(CPerlObj *pPerl, int idx, SV *buf_sv, int maxlen) -#else -read_e_script(int idx, SV *buf_sv, int maxlen) -#endif +STATIC I32 +read_e_script(pTHX_ int idx, SV *buf_sv, int maxlen) { char *p, *nl; p = SvPVX(PL_e_script); @@ -1522,6 +1522,22 @@ union any { (PerlLIO_setmode(PerlIO_fileno(fp), O_BINARY) != -1 ? TRUE : NULL) #endif +#ifndef pTHX +# define pTHX void +# define pTHX_ +# define _pTHX +#endif + +#ifndef aTHX +# define aTHX +# define aTHX_ +# define _aTHX +#endif + +#ifndef STATIC +# define STATIC static +#endif + #include "regexp.h" #include "sv.h" #include "util.h" @@ -1565,7 +1581,8 @@ struct _sublex_info { typedef struct magic_state MGS; /* struct magic_state defined in mg.c */ -#ifdef PERL_OBJECT +/* Length of a variant. */ + typedef struct { I32 len_min; I32 len_delta; @@ -1585,7 +1602,6 @@ typedef struct { } scan_data_t; typedef I32 CHECKPOINT; -#endif /* PERL_OBJECT */ #if defined(iAPX286) || defined(M_I286) || defined(I80286) # define I286 @@ -2377,8 +2393,46 @@ typedef void *Thread; #include "thread.h" #include "pp.h" + +#ifndef PERL_CALLCONV +# define PERL_CALLCONV +#endif + +#ifdef PERL_OBJECT +# define VIRTUAL virtual PERL_CALLCONV +#else +# define VIRTUAL PERL_CALLCONV +START_EXTERN_C +#endif + +#ifndef NEXT30_NO_ATTRIBUTE +# ifndef HASATTRIBUTE /* disable GNU-cc attribute checking? */ +# ifdef __attribute__ /* Avoid possible redefinition errors */ +# undef __attribute__ +# endif +# define __attribute__(attr) +# endif +#endif + +#ifdef USE_PURE_BISON +int Perl_yylex(pTHX_ YYSTYPE *lvalp, int *lcharp); +#endif + +typedef void (*DESTRUCTORFUNC_t) (pTHX_ void*); +typedef void (*SVFUNC_t) (pTHX_ SV*); +typedef I32 (*SVCOMPARE_t) (pTHX_ SV*, SV*); +typedef void (*XSINIT_t) (pTHX); +typedef void (*ATEXIT_t) (pTHX_ void*); +typedef void (*XSUBADDR_t) (pTHX_ CV *); + #include "proto.h" +#include "pp_proto.h" + +#ifndef PERL_OBJECT +END_EXTERN_C +#endif + /* The following must follow proto.h as #defines mess up syntax */ #if !defined(PERL_FOR_X2P) @@ -2733,14 +2787,14 @@ typedef struct am_table_short AMTS; #define SET_NUMERIC_STANDARD() \ STMT_START { \ - if (! PL_numeric_standard) \ - perl_set_numeric_standard(); \ + if (! PL_numeric_standard) \ + set_numeric_standard(); \ } STMT_END #define SET_NUMERIC_LOCAL() \ STMT_START { \ if (! PL_numeric_local) \ - perl_set_numeric_local(); \ + set_numeric_local(); \ } STMT_END #else /* !USE_LOCALE_NUMERIC */ diff --git a/perl_exp.SH b/perl_exp.SH index 5a15ed43fc..ffacdac551 100644 --- a/perl_exp.SH +++ b/perl_exp.SH @@ -54,7 +54,7 @@ echo "#!" > perl.exp syms="global.sym pp.sym" -sed -n '/^[A-Za-z]/ s/^/Perl_/p' $syms >> perl.exp +cat $syms >> perl.exp sed -n '/^[A-Za-z]/ s/^/PL_/p' globvar.sym >> perl.exp sed -n 's/^PERLVAR.*(G\([^[,]*\).*/PL_\1/p' perlvars.h >> perl.exp @@ -75,36 +75,8 @@ fi # not actually be defined, but there's no harm in that). # -cat >>perl.exp <<END -perl_init_i18nl10n -perl_init_i18nl14n -perl_new_collate -perl_new_ctype -perl_new_numeric -perl_set_numeric_local -perl_set_numeric_standard -perl_alloc -perl_construct -perl_destruct -perl_free -perl_parse -perl_run -perl_get_sv -perl_get_av -perl_get_hv -perl_get_cv -perl_call_argv -perl_call_pv -perl_call_method -perl_call_sv -perl_eval_pv -perl_eval_sv -perl_require_pv -Perl_malloc -Perl_calloc -Perl_realloc -Perl_mfree -END +#cat >>perl.exp <<END +#END # The shebang line nicely sorts as the first one. sort -o perl.exp -u perl.exp @@ -21,6 +21,7 @@ */ #include "EXTERN.h" +#define PERL_IN_PERLIO_C #include "perl.h" #ifdef PERLIO_IS_STDIO @@ -4,6 +4,7 @@ static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91"; #define YYBYACC 1 #line 16 "perly.y" #include "EXTERN.h" +#define PERL_IN_PERLY_C #include "perl.h" #define yydebug PL_yydebug @@ -13,20 +14,7 @@ static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91"; #define yyval PL_yyval #define yylval PL_yylval -#ifdef PERL_OBJECT -static void -Dep(CPerlObj *pPerl) -{ - pPerl->deprecate("\"do\" to call subroutines"); -} -#define dep() Dep(this) -#else -static void -dep(void) -{ - deprecate("\"do\" to call subroutines"); -} -#endif +#define dep() deprecate("\"do\" to call subroutines") #line 30 "perly.y" #define YYERRCODE 256 @@ -1329,7 +1317,7 @@ struct ysv { }; void -yydestruct(void *ptr) +Perl_yydestruct(pTHX_ void *ptr) { struct ysv* ysave = (struct ysv*)ptr; if (ysave->yyss) Safefree(ysave->yyss); @@ -1344,7 +1332,7 @@ yydestruct(void *ptr) } int -yyparse(void) +Perl_yyparse(pTHX) { register int yym, yyn, yystate; register short *yyssp; @@ -14,13 +14,10 @@ %{ #include "EXTERN.h" +#define PERL_IN_PERLY_C #include "perl.h" -static void -dep(void) -{ - deprecate("\"do\" to call subroutines"); -} +#define dep() deprecate("\"do\" to call subroutines") %} @@ -13,6 +13,7 @@ */ #include "EXTERN.h" +#define PERL_IN_PP_C #include "perl.h" /* @@ -110,12 +111,6 @@ typedef unsigned UBW; # define CAT32(sv,p) sv_catpvn(sv, (char*)(p), SIZE32) #endif -#ifndef PERL_OBJECT -static void doencodes (SV* sv, char* s, I32 len); -static SV* refto (SV* sv); -static U32 seed (void); -#endif - /* variations on pp_null */ #ifdef I_UNISTD @@ -521,7 +516,7 @@ PP(pp_refgen) } STATIC SV* -refto(SV *sv) +refto(pTHX_ SV *sv) { SV* rv; @@ -1707,7 +1702,7 @@ PP(pp_srand) } STATIC U32 -seed(void) +seed(pTHX) { /* * This is really just a quick hack which grabs various garbage @@ -2895,7 +2890,7 @@ PP(pp_splice) PUSHMARK(MARK); PUTBACK; ENTER; - perl_call_method("SPLICE",GIMME_V); + call_method("SPLICE",GIMME_V); LEAVE; SPAGAIN; RETURN; @@ -3089,7 +3084,7 @@ PP(pp_push) PUSHMARK(MARK); PUTBACK; ENTER; - perl_call_method("PUSH",G_SCALAR|G_DISCARD); + call_method("PUSH",G_SCALAR|G_DISCARD); LEAVE; SPAGAIN; } @@ -3145,7 +3140,7 @@ PP(pp_unshift) PUSHMARK(MARK); PUTBACK; ENTER; - perl_call_method("UNSHIFT",G_SCALAR|G_DISCARD); + call_method("UNSHIFT",G_SCALAR|G_DISCARD); LEAVE; SPAGAIN; } @@ -3229,8 +3224,8 @@ PP(pp_reverse) RETURN; } -STATIC SV * -mul128(SV *sv, U8 m) +STATIC SV * +mul128(pTHX_ SV *sv, U8 m) { STRLEN len; char *s = SvPV(sv, len); @@ -4215,7 +4210,7 @@ PP(pp_unpack) } STATIC void -doencodes(register SV *sv, register char *s, register I32 len) +doencodes(pTHX_ register SV *sv, register char *s, register I32 len) { char hunk[5]; @@ -4243,7 +4238,7 @@ doencodes(register SV *sv, register char *s, register I32 len) } STATIC SV * -is_an_int(char *s, STRLEN l) +is_an_int(pTHX_ char *s, STRLEN l) { STRLEN n_a; SV *result = newSVpvn(s, l); @@ -4291,10 +4286,9 @@ is_an_int(char *s, STRLEN l) return (result); } +/* pnum must be '\0' terminated */ STATIC int -div128(SV *pnum, bool *done) - /* must be '\0' terminated */ - +div128(pTHX_ SV *pnum, bool *done) { STRLEN len; char *s = SvPV(pnum, len); @@ -5115,7 +5109,7 @@ PP(pp_split) else { PUTBACK; ENTER; - perl_call_method("PUSH",G_SCALAR|G_DISCARD); + call_method("PUSH",G_SCALAR|G_DISCARD); LEAVE; SPAGAIN; if (gimme == G_ARRAY) { @@ -5143,7 +5137,7 @@ PP(pp_split) #ifdef USE_THREADS void -unlock_condpair(void *svv) +Perl_unlock_condpair(pTHX_ void *svv) { dTHR; MAGIC *mg = mg_find((SV*)svv, 'm'); @@ -1,377 +1,377 @@ -ck_anoncode -ck_bitop -ck_concat -ck_defined -ck_delete -ck_eof -ck_eval -ck_exec -ck_exists -ck_ftst -ck_fun -ck_fun_locale -ck_glob -ck_grep -ck_index -ck_lengthconst -ck_lfun -ck_listiob -ck_match -ck_null -ck_repeat -ck_require -ck_rfun -ck_rvconst -ck_scmp -ck_select -ck_shift -ck_sort -ck_spair -ck_split -ck_subr -ck_svconst -ck_trunc -pp_null -pp_stub -pp_scalar -pp_pushmark -pp_wantarray -pp_const -pp_gvsv -pp_gv -pp_gelem -pp_padsv -pp_padav -pp_padhv -pp_padany -pp_pushre -pp_rv2gv -pp_rv2sv -pp_av2arylen -pp_rv2cv -pp_anoncode -pp_prototype -pp_refgen -pp_srefgen -pp_ref -pp_bless -pp_backtick -pp_glob -pp_readline -pp_rcatline -pp_regcmaybe -pp_regcreset -pp_regcomp -pp_match -pp_qr -pp_subst -pp_substcont -pp_trans -pp_sassign -pp_aassign -pp_chop -pp_schop -pp_chomp -pp_schomp -pp_defined -pp_undef -pp_study -pp_pos -pp_preinc -pp_predec -pp_postinc -pp_postdec -pp_pow -pp_multiply -pp_i_multiply -pp_divide -pp_i_divide -pp_modulo -pp_i_modulo -pp_repeat -pp_add -pp_i_add -pp_subtract -pp_i_subtract -pp_concat -pp_stringify -pp_left_shift -pp_right_shift -pp_lt -pp_i_lt -pp_gt -pp_i_gt -pp_le -pp_i_le -pp_ge -pp_i_ge -pp_eq -pp_i_eq -pp_ne -pp_i_ne -pp_ncmp -pp_i_ncmp -pp_slt -pp_sgt -pp_sle -pp_sge -pp_seq -pp_sne -pp_scmp -pp_bit_and -pp_bit_xor -pp_bit_or -pp_negate -pp_i_negate -pp_not -pp_complement -pp_atan2 -pp_sin -pp_cos -pp_rand -pp_srand -pp_exp -pp_log -pp_sqrt -pp_int -pp_hex -pp_oct -pp_abs -pp_length -pp_substr -pp_vec -pp_index -pp_rindex -pp_sprintf -pp_formline -pp_ord -pp_chr -pp_crypt -pp_ucfirst -pp_lcfirst -pp_uc -pp_lc -pp_quotemeta -pp_rv2av -pp_aelemfast -pp_aelem -pp_aslice -pp_each -pp_values -pp_keys -pp_delete -pp_exists -pp_rv2hv -pp_helem -pp_hslice -pp_unpack -pp_pack -pp_split -pp_join -pp_list -pp_lslice -pp_anonlist -pp_anonhash -pp_splice -pp_push -pp_pop -pp_shift -pp_unshift -pp_sort -pp_reverse -pp_grepstart -pp_grepwhile -pp_mapstart -pp_mapwhile -pp_range -pp_flip -pp_flop -pp_and -pp_or -pp_xor -pp_cond_expr -pp_andassign -pp_orassign -pp_method -pp_entersub -pp_leavesub -pp_caller -pp_warn -pp_die -pp_reset -pp_lineseq -pp_nextstate -pp_dbstate -pp_unstack -pp_enter -pp_leave -pp_scope -pp_enteriter -pp_iter -pp_enterloop -pp_leaveloop -pp_return -pp_last -pp_next -pp_redo -pp_dump -pp_goto -pp_exit -pp_open -pp_close -pp_pipe_op -pp_fileno -pp_umask -pp_binmode -pp_tie -pp_untie -pp_tied -pp_dbmopen -pp_dbmclose -pp_sselect -pp_select -pp_getc -pp_read -pp_enterwrite -pp_leavewrite -pp_prtf -pp_print -pp_sysopen -pp_sysseek -pp_sysread -pp_syswrite -pp_send -pp_recv -pp_eof -pp_tell -pp_seek -pp_truncate -pp_fcntl -pp_ioctl -pp_flock -pp_socket -pp_sockpair -pp_bind -pp_connect -pp_listen -pp_accept -pp_shutdown -pp_gsockopt -pp_ssockopt -pp_getsockname -pp_getpeername -pp_lstat -pp_stat -pp_ftrread -pp_ftrwrite -pp_ftrexec -pp_fteread -pp_ftewrite -pp_fteexec -pp_ftis -pp_fteowned -pp_ftrowned -pp_ftzero -pp_ftsize -pp_ftmtime -pp_ftatime -pp_ftctime -pp_ftsock -pp_ftchr -pp_ftblk -pp_ftfile -pp_ftdir -pp_ftpipe -pp_ftlink -pp_ftsuid -pp_ftsgid -pp_ftsvtx -pp_fttty -pp_fttext -pp_ftbinary -pp_chdir -pp_chown -pp_chroot -pp_unlink -pp_chmod -pp_utime -pp_rename -pp_link -pp_symlink -pp_readlink -pp_mkdir -pp_rmdir -pp_open_dir -pp_readdir -pp_telldir -pp_seekdir -pp_rewinddir -pp_closedir -pp_fork -pp_wait -pp_waitpid -pp_system -pp_exec -pp_kill -pp_getppid -pp_getpgrp -pp_setpgrp -pp_getpriority -pp_setpriority -pp_time -pp_tms -pp_localtime -pp_gmtime -pp_alarm -pp_sleep -pp_shmget -pp_shmctl -pp_shmread -pp_shmwrite -pp_msgget -pp_msgctl -pp_msgsnd -pp_msgrcv -pp_semget -pp_semctl -pp_semop -pp_require -pp_dofile -pp_entereval -pp_leaveeval -pp_entertry -pp_leavetry -pp_ghbyname -pp_ghbyaddr -pp_ghostent -pp_gnbyname -pp_gnbyaddr -pp_gnetent -pp_gpbyname -pp_gpbynumber -pp_gprotoent -pp_gsbyname -pp_gsbyport -pp_gservent -pp_shostent -pp_snetent -pp_sprotoent -pp_sservent -pp_ehostent -pp_enetent -pp_eprotoent -pp_eservent -pp_gpwnam -pp_gpwuid -pp_gpwent -pp_spwent -pp_epwent -pp_ggrnam -pp_ggrgid -pp_ggrent -pp_sgrent -pp_egrent -pp_getlogin -pp_syscall -pp_lock -pp_threadsv +Perl_ck_anoncode +Perl_ck_bitop +Perl_ck_concat +Perl_ck_defined +Perl_ck_delete +Perl_ck_eof +Perl_ck_eval +Perl_ck_exec +Perl_ck_exists +Perl_ck_ftst +Perl_ck_fun +Perl_ck_fun_locale +Perl_ck_glob +Perl_ck_grep +Perl_ck_index +Perl_ck_lengthconst +Perl_ck_lfun +Perl_ck_listiob +Perl_ck_match +Perl_ck_null +Perl_ck_repeat +Perl_ck_require +Perl_ck_rfun +Perl_ck_rvconst +Perl_ck_scmp +Perl_ck_select +Perl_ck_shift +Perl_ck_sort +Perl_ck_spair +Perl_ck_split +Perl_ck_subr +Perl_ck_svconst +Perl_ck_trunc +Perl_pp_null +Perl_pp_stub +Perl_pp_scalar +Perl_pp_pushmark +Perl_pp_wantarray +Perl_pp_const +Perl_pp_gvsv +Perl_pp_gv +Perl_pp_gelem +Perl_pp_padsv +Perl_pp_padav +Perl_pp_padhv +Perl_pp_padany +Perl_pp_pushre +Perl_pp_rv2gv +Perl_pp_rv2sv +Perl_pp_av2arylen +Perl_pp_rv2cv +Perl_pp_anoncode +Perl_pp_prototype +Perl_pp_refgen +Perl_pp_srefgen +Perl_pp_ref +Perl_pp_bless +Perl_pp_backtick +Perl_pp_glob +Perl_pp_readline +Perl_pp_rcatline +Perl_pp_regcmaybe +Perl_pp_regcreset +Perl_pp_regcomp +Perl_pp_match +Perl_pp_qr +Perl_pp_subst +Perl_pp_substcont +Perl_pp_trans +Perl_pp_sassign +Perl_pp_aassign +Perl_pp_chop +Perl_pp_schop +Perl_pp_chomp +Perl_pp_schomp +Perl_pp_defined +Perl_pp_undef +Perl_pp_study +Perl_pp_pos +Perl_pp_preinc +Perl_pp_predec +Perl_pp_postinc +Perl_pp_postdec +Perl_pp_pow +Perl_pp_multiply +Perl_pp_i_multiply +Perl_pp_divide +Perl_pp_i_divide +Perl_pp_modulo +Perl_pp_i_modulo +Perl_pp_repeat +Perl_pp_add +Perl_pp_i_add +Perl_pp_subtract +Perl_pp_i_subtract +Perl_pp_concat +Perl_pp_stringify +Perl_pp_left_shift +Perl_pp_right_shift +Perl_pp_lt +Perl_pp_i_lt +Perl_pp_gt +Perl_pp_i_gt +Perl_pp_le +Perl_pp_i_le +Perl_pp_ge +Perl_pp_i_ge +Perl_pp_eq +Perl_pp_i_eq +Perl_pp_ne +Perl_pp_i_ne +Perl_pp_ncmp +Perl_pp_i_ncmp +Perl_pp_slt +Perl_pp_sgt +Perl_pp_sle +Perl_pp_sge +Perl_pp_seq +Perl_pp_sne +Perl_pp_scmp +Perl_pp_bit_and +Perl_pp_bit_xor +Perl_pp_bit_or +Perl_pp_negate +Perl_pp_i_negate +Perl_pp_not +Perl_pp_complement +Perl_pp_atan2 +Perl_pp_sin +Perl_pp_cos +Perl_pp_rand +Perl_pp_srand +Perl_pp_exp +Perl_pp_log +Perl_pp_sqrt +Perl_pp_int +Perl_pp_hex +Perl_pp_oct +Perl_pp_abs +Perl_pp_length +Perl_pp_substr +Perl_pp_vec +Perl_pp_index +Perl_pp_rindex +Perl_pp_sprintf +Perl_pp_formline +Perl_pp_ord +Perl_pp_chr +Perl_pp_crypt +Perl_pp_ucfirst +Perl_pp_lcfirst +Perl_pp_uc +Perl_pp_lc +Perl_pp_quotemeta +Perl_pp_rv2av +Perl_pp_aelemfast +Perl_pp_aelem +Perl_pp_aslice +Perl_pp_each +Perl_pp_values +Perl_pp_keys +Perl_pp_delete +Perl_pp_exists +Perl_pp_rv2hv +Perl_pp_helem +Perl_pp_hslice +Perl_pp_unpack +Perl_pp_pack +Perl_pp_split +Perl_pp_join +Perl_pp_list +Perl_pp_lslice +Perl_pp_anonlist +Perl_pp_anonhash +Perl_pp_splice +Perl_pp_push +Perl_pp_pop +Perl_pp_shift +Perl_pp_unshift +Perl_pp_sort +Perl_pp_reverse +Perl_pp_grepstart +Perl_pp_grepwhile +Perl_pp_mapstart +Perl_pp_mapwhile +Perl_pp_range +Perl_pp_flip +Perl_pp_flop +Perl_pp_and +Perl_pp_or +Perl_pp_xor +Perl_pp_cond_expr +Perl_pp_andassign +Perl_pp_orassign +Perl_pp_method +Perl_pp_entersub +Perl_pp_leavesub +Perl_pp_caller +Perl_pp_warn +Perl_pp_die +Perl_pp_reset +Perl_pp_lineseq +Perl_pp_nextstate +Perl_pp_dbstate +Perl_pp_unstack +Perl_pp_enter +Perl_pp_leave +Perl_pp_scope +Perl_pp_enteriter +Perl_pp_iter +Perl_pp_enterloop +Perl_pp_leaveloop +Perl_pp_return +Perl_pp_last +Perl_pp_next +Perl_pp_redo +Perl_pp_dump +Perl_pp_goto +Perl_pp_exit +Perl_pp_open +Perl_pp_close +Perl_pp_pipe_op +Perl_pp_fileno +Perl_pp_umask +Perl_pp_binmode +Perl_pp_tie +Perl_pp_untie +Perl_pp_tied +Perl_pp_dbmopen +Perl_pp_dbmclose +Perl_pp_sselect +Perl_pp_select +Perl_pp_getc +Perl_pp_read +Perl_pp_enterwrite +Perl_pp_leavewrite +Perl_pp_prtf +Perl_pp_print +Perl_pp_sysopen +Perl_pp_sysseek +Perl_pp_sysread +Perl_pp_syswrite +Perl_pp_send +Perl_pp_recv +Perl_pp_eof +Perl_pp_tell +Perl_pp_seek +Perl_pp_truncate +Perl_pp_fcntl +Perl_pp_ioctl +Perl_pp_flock +Perl_pp_socket +Perl_pp_sockpair +Perl_pp_bind +Perl_pp_connect +Perl_pp_listen +Perl_pp_accept +Perl_pp_shutdown +Perl_pp_gsockopt +Perl_pp_ssockopt +Perl_pp_getsockname +Perl_pp_getpeername +Perl_pp_lstat +Perl_pp_stat +Perl_pp_ftrread +Perl_pp_ftrwrite +Perl_pp_ftrexec +Perl_pp_fteread +Perl_pp_ftewrite +Perl_pp_fteexec +Perl_pp_ftis +Perl_pp_fteowned +Perl_pp_ftrowned +Perl_pp_ftzero +Perl_pp_ftsize +Perl_pp_ftmtime +Perl_pp_ftatime +Perl_pp_ftctime +Perl_pp_ftsock +Perl_pp_ftchr +Perl_pp_ftblk +Perl_pp_ftfile +Perl_pp_ftdir +Perl_pp_ftpipe +Perl_pp_ftlink +Perl_pp_ftsuid +Perl_pp_ftsgid +Perl_pp_ftsvtx +Perl_pp_fttty +Perl_pp_fttext +Perl_pp_ftbinary +Perl_pp_chdir +Perl_pp_chown +Perl_pp_chroot +Perl_pp_unlink +Perl_pp_chmod +Perl_pp_utime +Perl_pp_rename +Perl_pp_link +Perl_pp_symlink +Perl_pp_readlink +Perl_pp_mkdir +Perl_pp_rmdir +Perl_pp_open_dir +Perl_pp_readdir +Perl_pp_telldir +Perl_pp_seekdir +Perl_pp_rewinddir +Perl_pp_closedir +Perl_pp_fork +Perl_pp_wait +Perl_pp_waitpid +Perl_pp_system +Perl_pp_exec +Perl_pp_kill +Perl_pp_getppid +Perl_pp_getpgrp +Perl_pp_setpgrp +Perl_pp_getpriority +Perl_pp_setpriority +Perl_pp_time +Perl_pp_tms +Perl_pp_localtime +Perl_pp_gmtime +Perl_pp_alarm +Perl_pp_sleep +Perl_pp_shmget +Perl_pp_shmctl +Perl_pp_shmread +Perl_pp_shmwrite +Perl_pp_msgget +Perl_pp_msgctl +Perl_pp_msgsnd +Perl_pp_msgrcv +Perl_pp_semget +Perl_pp_semctl +Perl_pp_semop +Perl_pp_require +Perl_pp_dofile +Perl_pp_entereval +Perl_pp_leaveeval +Perl_pp_entertry +Perl_pp_leavetry +Perl_pp_ghbyname +Perl_pp_ghbyaddr +Perl_pp_ghostent +Perl_pp_gnbyname +Perl_pp_gnbyaddr +Perl_pp_gnetent +Perl_pp_gpbyname +Perl_pp_gpbynumber +Perl_pp_gprotoent +Perl_pp_gsbyname +Perl_pp_gsbyport +Perl_pp_gservent +Perl_pp_shostent +Perl_pp_snetent +Perl_pp_sprotoent +Perl_pp_sservent +Perl_pp_ehostent +Perl_pp_enetent +Perl_pp_eprotoent +Perl_pp_eservent +Perl_pp_gpwnam +Perl_pp_gpwuid +Perl_pp_gpwent +Perl_pp_spwent +Perl_pp_epwent +Perl_pp_ggrnam +Perl_pp_ggrgid +Perl_pp_ggrent +Perl_pp_sgrent +Perl_pp_egrent +Perl_pp_getlogin +Perl_pp_syscall +Perl_pp_lock +Perl_pp_threadsv @@ -17,6 +17,7 @@ */ #include "EXTERN.h" +#define PERL_IN_PP_CTL_C #include "perl.h" #ifndef WORD_ALIGN @@ -29,27 +30,6 @@ #define CALLOP this->*PL_op #else #define CALLOP *PL_op -static void *docatch_body (va_list args); -static OP *docatch (OP *o); -static OP *dofindlabel (OP *o, char *label, OP **opstack, OP **oplimit); -static void doparseform (SV *sv); -static I32 dopoptoeval (I32 startingblock); -static I32 dopoptolabel (char *label); -static I32 dopoptoloop (I32 startingblock); -static I32 dopoptosub (I32 startingblock); -static I32 dopoptosub_at (PERL_CONTEXT *cxstk, I32 startingblock); -static void save_lines (AV *array, SV *sv); -static I32 sortcv (SV *a, SV *b); -static void qsortsv (SV **array, size_t num_elts, I32 (*fun)(SV *a, SV *b)); -static OP *doeval (int gimme, OP** startop); -static PerlIO *doopen_pmc (const char *name, const char *mode); -static I32 sv_ncmp (SV *a, SV *b); -static I32 sv_i_ncmp (SV *a, SV *b); -static I32 amagic_ncmp (SV *a, SV *b); -static I32 amagic_i_ncmp (SV *a, SV *b); -static I32 amagic_cmp (SV *str1, SV *str2); -static I32 amagic_cmp_locale (SV *str1, SV *str2); -static void free_closures (void); #endif PP(pp_wantarray) @@ -218,7 +198,7 @@ PP(pp_substcont) } void -rxres_save(void **rsp, REGEXP *rx) +Perl_rxres_save(pTHX_ void **rsp, REGEXP *rx) { UV *p = (UV*)*rsp; U32 i; @@ -246,7 +226,7 @@ rxres_save(void **rsp, REGEXP *rx) } void -rxres_restore(void **rsp, REGEXP *rx) +Perl_rxres_restore(pTHX_ void **rsp, REGEXP *rx) { UV *p = (UV*)*rsp; U32 i; @@ -267,7 +247,7 @@ rxres_restore(void **rsp, REGEXP *rx) } void -rxres_free(void **rsp) +Perl_rxres_free(pTHX_ void **rsp) { UV *p = (UV*)*rsp; @@ -762,14 +742,15 @@ PP(pp_mapwhile) } STATIC I32 -sv_ncmp (SV *a, SV *b) +sv_ncmp(pTHX_ SV *a, SV *b) { double nv1 = SvNV(a); double nv2 = SvNV(b); return nv1 < nv2 ? -1 : nv1 > nv2 ? 1 : 0; } + STATIC I32 -sv_i_ncmp (SV *a, SV *b) +sv_i_ncmp(pTHX_ SV *a, SV *b) { IV iv1 = SvIV(a); IV iv2 = SvIV(b); @@ -787,7 +768,7 @@ sv_i_ncmp (SV *a, SV *b) } STMT_END STATIC I32 -amagic_ncmp(register SV *a, register SV *b) +amagic_ncmp(pTHX_ register SV *a, register SV *b) { SV *tmpsv; tryCALL_AMAGICbin(a,b,ncmp,&tmpsv); @@ -809,7 +790,7 @@ amagic_ncmp(register SV *a, register SV *b) } STATIC I32 -amagic_i_ncmp(register SV *a, register SV *b) +amagic_i_ncmp(pTHX_ register SV *a, register SV *b) { SV *tmpsv; tryCALL_AMAGICbin(a,b,ncmp,&tmpsv); @@ -831,7 +812,7 @@ amagic_i_ncmp(register SV *a, register SV *b) } STATIC I32 -amagic_cmp(register SV *str1, register SV *str2) +amagic_cmp(pTHX_ register SV *str1, register SV *str2) { SV *tmpsv; tryCALL_AMAGICbin(str1,str2,scmp,&tmpsv); @@ -853,7 +834,7 @@ amagic_cmp(register SV *str1, register SV *str2) } STATIC I32 -amagic_cmp_locale(register SV *str1, register SV *str2) +amagic_cmp_locale(pTHX_ register SV *str1, register SV *str2) { SV *tmpsv; tryCALL_AMAGICbin(str1,str2,scmp,&tmpsv); @@ -1135,7 +1116,7 @@ PP(pp_flop) /* Control. */ STATIC I32 -dopoptolabel(char *label) +dopoptolabel(pTHX_ char *label) { dTHR; register I32 i; @@ -1179,14 +1160,14 @@ dopoptolabel(char *label) } I32 -dowantarray(void) +Perl_dowantarray(pTHX) { I32 gimme = block_gimme(); return (gimme == G_VOID) ? G_SCALAR : gimme; } I32 -block_gimme(void) +Perl_block_gimme(pTHX) { dTHR; I32 cxix; @@ -1210,14 +1191,14 @@ block_gimme(void) } STATIC I32 -dopoptosub(I32 startingblock) +dopoptosub(pTHX_ I32 startingblock) { dTHR; return dopoptosub_at(cxstack, startingblock); } STATIC I32 -dopoptosub_at(PERL_CONTEXT *cxstk, I32 startingblock) +dopoptosub_at(pTHX_ PERL_CONTEXT *cxstk, I32 startingblock) { dTHR; I32 i; @@ -1237,7 +1218,7 @@ dopoptosub_at(PERL_CONTEXT *cxstk, I32 startingblock) } STATIC I32 -dopoptoeval(I32 startingblock) +dopoptoeval(pTHX_ I32 startingblock) { dTHR; I32 i; @@ -1256,7 +1237,7 @@ dopoptoeval(I32 startingblock) } STATIC I32 -dopoptoloop(I32 startingblock) +dopoptoloop(pTHX_ I32 startingblock) { dTHR; I32 i; @@ -1293,7 +1274,7 @@ dopoptoloop(I32 startingblock) } void -dounwind(I32 cxix) +Perl_dounwind(pTHX_ I32 cxix) { dTHR; register PERL_CONTEXT *cx; @@ -1335,7 +1316,7 @@ dounwind(I32 cxix) * relying on the incidental global values. */ STATIC void -free_closures(void) +free_closures(pTHX) { dTHR; SV **svp = AvARRAY(PL_comppad_name); @@ -1362,7 +1343,7 @@ free_closures(void) } OP * -die_where(char *message, STRLEN msglen) +Perl_die_where(pTHX_ char *message, STRLEN msglen) { dSP; STRLEN n_a; @@ -1596,7 +1577,7 @@ PP(pp_caller) } STATIC I32 -sortcv(SV *a, SV *b) +sortcv(pTHX_ SV *a, SV *b) { dTHR; I32 oldsaveix = PL_savestack_ix; @@ -2029,7 +2010,7 @@ PP(pp_redo) } STATIC OP * -dofindlabel(OP *o, char *label, OP **opstack, OP **oplimit) +dofindlabel(pTHX_ OP *o, char *label, OP **opstack, OP **oplimit) { OP *kid; OP **ops = opstack; @@ -2335,9 +2316,9 @@ PP(pp_goto) gv_efullname3(sv, CvGV(cv), Nullch); } if ( PERLDB_GOTO - && (gotocv = perl_get_cv("DB::goto", FALSE)) ) { + && (gotocv = get_cv("DB::goto", FALSE)) ) { PUSHMARK( PL_stack_sp ); - perl_call_sv((SV*)gotocv, G_SCALAR | G_NODEBUG); + call_sv((SV*)gotocv, G_SCALAR | G_NODEBUG); PL_stack_sp--; } } @@ -2513,7 +2494,7 @@ PP(pp_cswitch) /* Eval. */ STATIC void -save_lines(AV *array, SV *sv) +save_lines(pTHX_ AV *array, SV *sv) { register char *s = SvPVX(sv); register char *send = SvPVX(sv) + SvCUR(sv); @@ -2537,14 +2518,14 @@ save_lines(AV *array, SV *sv) } STATIC void * -docatch_body(va_list args) +docatch_body(pTHX_ va_list args) { CALLRUNOPS(); return NULL; } STATIC OP * -docatch(OP *o) +docatch(pTHX_ OP *o) { dTHR; int ret; @@ -2576,7 +2557,7 @@ docatch(OP *o) } OP * -sv_compile_2op(SV *sv, OP** startop, char *code, AV** avp) +Perl_sv_compile_2op(pTHX_ SV *sv, OP** startop, char *code, AV** avp) /* sv Text to convert to OP tree. */ /* startop op_free() this to undo. */ /* code Short string id of the caller. */ @@ -2644,7 +2625,7 @@ sv_compile_2op(SV *sv, OP** startop, char *code, AV** avp) /* With USE_THREADS, eval_owner must be held on entry to doeval */ STATIC OP * -doeval(int gimme, OP** startop) +doeval(pTHX_ int gimme, OP** startop) { dSP; OP *saveop = PL_op; @@ -2795,13 +2776,13 @@ doeval(int gimme, OP** startop) /* Register with debugger: */ if (PERLDB_INTER && saveop->op_type == OP_REQUIRE) { - CV *cv = perl_get_cv("DB::postponed", FALSE); + CV *cv = get_cv("DB::postponed", FALSE); if (cv) { dSP; PUSHMARK(SP); XPUSHs((SV*)PL_compiling.cop_filegv); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); } } @@ -2821,7 +2802,7 @@ doeval(int gimme, OP** startop) } STATIC PerlIO * -doopen_pmc(const char *name, const char *mode) +doopen_pmc(pTHX_ const char *name, const char *mode) { STRLEN namelen = strlen(name); PerlIO *fp; @@ -3218,7 +3199,7 @@ PP(pp_leavetry) } STATIC void -doparseform(SV *sv) +doparseform(pTHX_ SV *sv) { STRLEN len; register char *s = SvPV_force(sv, len); @@ -3506,7 +3487,7 @@ struct partition_stack_entry { ((this->*compare)(array[elt1], array[elt2])) #else #define qsort_cmp(elt1, elt2) \ - ((*compare)(array[elt1], array[elt2])) + ((*compare)(aTHX_ array[elt1], array[elt2])) #endif #ifdef QSORT_ORDER_GUESS @@ -3588,11 +3569,7 @@ doqsort_all_asserts( /* ****************************************************************** qsort */ STATIC void -#ifdef PERL_OBJECT -qsortsv(SV ** array, size_t num_elts, SVCOMPARE compare) -#else -qsortsv(SV ** array, size_t num_elts, I32 (*compare)(SV *a, SV *b)) -#endif +qsortsv(pTHX_ SV ** array, size_t num_elts, SVCOMPARE_t compare) { register SV * temp; @@ -16,6 +16,7 @@ */ #include "EXTERN.h" +#define PERL_IN_PP_HOT_C #include "perl.h" #ifdef I_UNISTD @@ -33,8 +34,8 @@ /* Hot code. */ #ifdef USE_THREADS -static void -unset_cvowner(void *cvarg) +STATIC void +unset_cvowner(pTHX_ void *cvarg) { register CV* cv = (CV *) cvarg; #ifdef DEBUGGING @@ -338,7 +339,7 @@ PP(pp_print) *MARK = SvTIED_obj((SV*)gv, mg); PUTBACK; ENTER; - perl_call_method("PRINT", G_SCALAR); + call_method("PRINT", G_SCALAR); LEAVE; SPAGAIN; MARK = ORIGMARK + 1; @@ -1119,7 +1120,7 @@ ret_no: } OP * -do_readline(void) +Perl_do_readline(pTHX) { dSP; dTARGETSTACKED; register SV *sv; @@ -1136,7 +1137,7 @@ do_readline(void) XPUSHs(SvTIED_obj((SV*)PL_last_in_gv, mg)); PUTBACK; ENTER; - perl_call_method("READLINE", gimme); + call_method("READLINE", gimme); LEAVE; SPAGAIN; if (gimme == G_SCALAR) @@ -2040,7 +2041,7 @@ PP(pp_leavesub) } STATIC CV * -get_db_sub(SV **svp, CV *cv) +get_db_sub(pTHX_ SV **svp, CV *cv) { dTHR; SV *dbsv = GvSV(PL_DBsub); @@ -2108,7 +2109,7 @@ PP(pp_entersub) DIE(PL_no_usym, "a subroutine"); if (PL_op->op_private & HINT_STRICT_REFS) DIE(PL_no_symref, sym, "a subroutine"); - cv = perl_get_cv(sym, TRUE); + cv = get_cv(sym, TRUE); break; } { @@ -2511,7 +2512,7 @@ try_autoload: } void -sub_crush_depth(CV *cv) +Perl_sub_crush_depth(pTHX_ CV *cv) { if (CvANON(cv)) warner(WARN_RECURSION, "Deep recursion on anonymous subroutine"); @@ -2566,7 +2567,7 @@ PP(pp_aelem) } void -vivify_ref(SV *sv, U32 to_what) +Perl_vivify_ref(pTHX_ SV *sv, U32 to_what) { if (SvGMAGICAL(sv)) mg_get(sv); diff --git a/pp_proto.h b/pp_proto.h index 9beb6817fe..b3d092b8fb 100644 --- a/pp_proto.h +++ b/pp_proto.h @@ -1,379 +1,379 @@ -PERL_CKDEF(ck_anoncode) -PERL_CKDEF(ck_bitop) -PERL_CKDEF(ck_concat) -PERL_CKDEF(ck_defined) -PERL_CKDEF(ck_delete) -PERL_CKDEF(ck_eof) -PERL_CKDEF(ck_eval) -PERL_CKDEF(ck_exec) -PERL_CKDEF(ck_exists) -PERL_CKDEF(ck_ftst) -PERL_CKDEF(ck_fun) -PERL_CKDEF(ck_fun_locale) -PERL_CKDEF(ck_glob) -PERL_CKDEF(ck_grep) -PERL_CKDEF(ck_index) -PERL_CKDEF(ck_lengthconst) -PERL_CKDEF(ck_lfun) -PERL_CKDEF(ck_listiob) -PERL_CKDEF(ck_match) -PERL_CKDEF(ck_null) -PERL_CKDEF(ck_repeat) -PERL_CKDEF(ck_require) -PERL_CKDEF(ck_rfun) -PERL_CKDEF(ck_rvconst) -PERL_CKDEF(ck_scmp) -PERL_CKDEF(ck_select) -PERL_CKDEF(ck_shift) -PERL_CKDEF(ck_sort) -PERL_CKDEF(ck_spair) -PERL_CKDEF(ck_split) -PERL_CKDEF(ck_subr) -PERL_CKDEF(ck_svconst) -PERL_CKDEF(ck_trunc) +PERL_CKDEF(Perl_ck_anoncode) +PERL_CKDEF(Perl_ck_bitop) +PERL_CKDEF(Perl_ck_concat) +PERL_CKDEF(Perl_ck_defined) +PERL_CKDEF(Perl_ck_delete) +PERL_CKDEF(Perl_ck_eof) +PERL_CKDEF(Perl_ck_eval) +PERL_CKDEF(Perl_ck_exec) +PERL_CKDEF(Perl_ck_exists) +PERL_CKDEF(Perl_ck_ftst) +PERL_CKDEF(Perl_ck_fun) +PERL_CKDEF(Perl_ck_fun_locale) +PERL_CKDEF(Perl_ck_glob) +PERL_CKDEF(Perl_ck_grep) +PERL_CKDEF(Perl_ck_index) +PERL_CKDEF(Perl_ck_lengthconst) +PERL_CKDEF(Perl_ck_lfun) +PERL_CKDEF(Perl_ck_listiob) +PERL_CKDEF(Perl_ck_match) +PERL_CKDEF(Perl_ck_null) +PERL_CKDEF(Perl_ck_repeat) +PERL_CKDEF(Perl_ck_require) +PERL_CKDEF(Perl_ck_rfun) +PERL_CKDEF(Perl_ck_rvconst) +PERL_CKDEF(Perl_ck_scmp) +PERL_CKDEF(Perl_ck_select) +PERL_CKDEF(Perl_ck_shift) +PERL_CKDEF(Perl_ck_sort) +PERL_CKDEF(Perl_ck_spair) +PERL_CKDEF(Perl_ck_split) +PERL_CKDEF(Perl_ck_subr) +PERL_CKDEF(Perl_ck_svconst) +PERL_CKDEF(Perl_ck_trunc) -PERL_PPDEF(pp_null) -PERL_PPDEF(pp_stub) -PERL_PPDEF(pp_scalar) -PERL_PPDEF(pp_pushmark) -PERL_PPDEF(pp_wantarray) -PERL_PPDEF(pp_const) -PERL_PPDEF(pp_gvsv) -PERL_PPDEF(pp_gv) -PERL_PPDEF(pp_gelem) -PERL_PPDEF(pp_padsv) -PERL_PPDEF(pp_padav) -PERL_PPDEF(pp_padhv) -PERL_PPDEF(pp_padany) -PERL_PPDEF(pp_pushre) -PERL_PPDEF(pp_rv2gv) -PERL_PPDEF(pp_rv2sv) -PERL_PPDEF(pp_av2arylen) -PERL_PPDEF(pp_rv2cv) -PERL_PPDEF(pp_anoncode) -PERL_PPDEF(pp_prototype) -PERL_PPDEF(pp_refgen) -PERL_PPDEF(pp_srefgen) -PERL_PPDEF(pp_ref) -PERL_PPDEF(pp_bless) -PERL_PPDEF(pp_backtick) -PERL_PPDEF(pp_glob) -PERL_PPDEF(pp_readline) -PERL_PPDEF(pp_rcatline) -PERL_PPDEF(pp_regcmaybe) -PERL_PPDEF(pp_regcreset) -PERL_PPDEF(pp_regcomp) -PERL_PPDEF(pp_match) -PERL_PPDEF(pp_qr) -PERL_PPDEF(pp_subst) -PERL_PPDEF(pp_substcont) -PERL_PPDEF(pp_trans) -PERL_PPDEF(pp_sassign) -PERL_PPDEF(pp_aassign) -PERL_PPDEF(pp_chop) -PERL_PPDEF(pp_schop) -PERL_PPDEF(pp_chomp) -PERL_PPDEF(pp_schomp) -PERL_PPDEF(pp_defined) -PERL_PPDEF(pp_undef) -PERL_PPDEF(pp_study) -PERL_PPDEF(pp_pos) -PERL_PPDEF(pp_preinc) -PERL_PPDEF(pp_predec) -PERL_PPDEF(pp_postinc) -PERL_PPDEF(pp_postdec) -PERL_PPDEF(pp_pow) -PERL_PPDEF(pp_multiply) -PERL_PPDEF(pp_i_multiply) -PERL_PPDEF(pp_divide) -PERL_PPDEF(pp_i_divide) -PERL_PPDEF(pp_modulo) -PERL_PPDEF(pp_i_modulo) -PERL_PPDEF(pp_repeat) -PERL_PPDEF(pp_add) -PERL_PPDEF(pp_i_add) -PERL_PPDEF(pp_subtract) -PERL_PPDEF(pp_i_subtract) -PERL_PPDEF(pp_concat) -PERL_PPDEF(pp_stringify) -PERL_PPDEF(pp_left_shift) -PERL_PPDEF(pp_right_shift) -PERL_PPDEF(pp_lt) -PERL_PPDEF(pp_i_lt) -PERL_PPDEF(pp_gt) -PERL_PPDEF(pp_i_gt) -PERL_PPDEF(pp_le) -PERL_PPDEF(pp_i_le) -PERL_PPDEF(pp_ge) -PERL_PPDEF(pp_i_ge) -PERL_PPDEF(pp_eq) -PERL_PPDEF(pp_i_eq) -PERL_PPDEF(pp_ne) -PERL_PPDEF(pp_i_ne) -PERL_PPDEF(pp_ncmp) -PERL_PPDEF(pp_i_ncmp) -PERL_PPDEF(pp_slt) -PERL_PPDEF(pp_sgt) -PERL_PPDEF(pp_sle) -PERL_PPDEF(pp_sge) -PERL_PPDEF(pp_seq) -PERL_PPDEF(pp_sne) -PERL_PPDEF(pp_scmp) -PERL_PPDEF(pp_bit_and) -PERL_PPDEF(pp_bit_xor) -PERL_PPDEF(pp_bit_or) -PERL_PPDEF(pp_negate) -PERL_PPDEF(pp_i_negate) -PERL_PPDEF(pp_not) -PERL_PPDEF(pp_complement) -PERL_PPDEF(pp_atan2) -PERL_PPDEF(pp_sin) -PERL_PPDEF(pp_cos) -PERL_PPDEF(pp_rand) -PERL_PPDEF(pp_srand) -PERL_PPDEF(pp_exp) -PERL_PPDEF(pp_log) -PERL_PPDEF(pp_sqrt) -PERL_PPDEF(pp_int) -PERL_PPDEF(pp_hex) -PERL_PPDEF(pp_oct) -PERL_PPDEF(pp_abs) -PERL_PPDEF(pp_length) -PERL_PPDEF(pp_substr) -PERL_PPDEF(pp_vec) -PERL_PPDEF(pp_index) -PERL_PPDEF(pp_rindex) -PERL_PPDEF(pp_sprintf) -PERL_PPDEF(pp_formline) -PERL_PPDEF(pp_ord) -PERL_PPDEF(pp_chr) -PERL_PPDEF(pp_crypt) -PERL_PPDEF(pp_ucfirst) -PERL_PPDEF(pp_lcfirst) -PERL_PPDEF(pp_uc) -PERL_PPDEF(pp_lc) -PERL_PPDEF(pp_quotemeta) -PERL_PPDEF(pp_rv2av) -PERL_PPDEF(pp_aelemfast) -PERL_PPDEF(pp_aelem) -PERL_PPDEF(pp_aslice) -PERL_PPDEF(pp_each) -PERL_PPDEF(pp_values) -PERL_PPDEF(pp_keys) -PERL_PPDEF(pp_delete) -PERL_PPDEF(pp_exists) -PERL_PPDEF(pp_rv2hv) -PERL_PPDEF(pp_helem) -PERL_PPDEF(pp_hslice) -PERL_PPDEF(pp_unpack) -PERL_PPDEF(pp_pack) -PERL_PPDEF(pp_split) -PERL_PPDEF(pp_join) -PERL_PPDEF(pp_list) -PERL_PPDEF(pp_lslice) -PERL_PPDEF(pp_anonlist) -PERL_PPDEF(pp_anonhash) -PERL_PPDEF(pp_splice) -PERL_PPDEF(pp_push) -PERL_PPDEF(pp_pop) -PERL_PPDEF(pp_shift) -PERL_PPDEF(pp_unshift) -PERL_PPDEF(pp_sort) -PERL_PPDEF(pp_reverse) -PERL_PPDEF(pp_grepstart) -PERL_PPDEF(pp_grepwhile) -PERL_PPDEF(pp_mapstart) -PERL_PPDEF(pp_mapwhile) -PERL_PPDEF(pp_range) -PERL_PPDEF(pp_flip) -PERL_PPDEF(pp_flop) -PERL_PPDEF(pp_and) -PERL_PPDEF(pp_or) -PERL_PPDEF(pp_xor) -PERL_PPDEF(pp_cond_expr) -PERL_PPDEF(pp_andassign) -PERL_PPDEF(pp_orassign) -PERL_PPDEF(pp_method) -PERL_PPDEF(pp_entersub) -PERL_PPDEF(pp_leavesub) -PERL_PPDEF(pp_caller) -PERL_PPDEF(pp_warn) -PERL_PPDEF(pp_die) -PERL_PPDEF(pp_reset) -PERL_PPDEF(pp_lineseq) -PERL_PPDEF(pp_nextstate) -PERL_PPDEF(pp_dbstate) -PERL_PPDEF(pp_unstack) -PERL_PPDEF(pp_enter) -PERL_PPDEF(pp_leave) -PERL_PPDEF(pp_scope) -PERL_PPDEF(pp_enteriter) -PERL_PPDEF(pp_iter) -PERL_PPDEF(pp_enterloop) -PERL_PPDEF(pp_leaveloop) -PERL_PPDEF(pp_return) -PERL_PPDEF(pp_last) -PERL_PPDEF(pp_next) -PERL_PPDEF(pp_redo) -PERL_PPDEF(pp_dump) -PERL_PPDEF(pp_goto) -PERL_PPDEF(pp_exit) -PERL_PPDEF(pp_open) -PERL_PPDEF(pp_close) -PERL_PPDEF(pp_pipe_op) -PERL_PPDEF(pp_fileno) -PERL_PPDEF(pp_umask) -PERL_PPDEF(pp_binmode) -PERL_PPDEF(pp_tie) -PERL_PPDEF(pp_untie) -PERL_PPDEF(pp_tied) -PERL_PPDEF(pp_dbmopen) -PERL_PPDEF(pp_dbmclose) -PERL_PPDEF(pp_sselect) -PERL_PPDEF(pp_select) -PERL_PPDEF(pp_getc) -PERL_PPDEF(pp_read) -PERL_PPDEF(pp_enterwrite) -PERL_PPDEF(pp_leavewrite) -PERL_PPDEF(pp_prtf) -PERL_PPDEF(pp_print) -PERL_PPDEF(pp_sysopen) -PERL_PPDEF(pp_sysseek) -PERL_PPDEF(pp_sysread) -PERL_PPDEF(pp_syswrite) -PERL_PPDEF(pp_send) -PERL_PPDEF(pp_recv) -PERL_PPDEF(pp_eof) -PERL_PPDEF(pp_tell) -PERL_PPDEF(pp_seek) -PERL_PPDEF(pp_truncate) -PERL_PPDEF(pp_fcntl) -PERL_PPDEF(pp_ioctl) -PERL_PPDEF(pp_flock) -PERL_PPDEF(pp_socket) -PERL_PPDEF(pp_sockpair) -PERL_PPDEF(pp_bind) -PERL_PPDEF(pp_connect) -PERL_PPDEF(pp_listen) -PERL_PPDEF(pp_accept) -PERL_PPDEF(pp_shutdown) -PERL_PPDEF(pp_gsockopt) -PERL_PPDEF(pp_ssockopt) -PERL_PPDEF(pp_getsockname) -PERL_PPDEF(pp_getpeername) -PERL_PPDEF(pp_lstat) -PERL_PPDEF(pp_stat) -PERL_PPDEF(pp_ftrread) -PERL_PPDEF(pp_ftrwrite) -PERL_PPDEF(pp_ftrexec) -PERL_PPDEF(pp_fteread) -PERL_PPDEF(pp_ftewrite) -PERL_PPDEF(pp_fteexec) -PERL_PPDEF(pp_ftis) -PERL_PPDEF(pp_fteowned) -PERL_PPDEF(pp_ftrowned) -PERL_PPDEF(pp_ftzero) -PERL_PPDEF(pp_ftsize) -PERL_PPDEF(pp_ftmtime) -PERL_PPDEF(pp_ftatime) -PERL_PPDEF(pp_ftctime) -PERL_PPDEF(pp_ftsock) -PERL_PPDEF(pp_ftchr) -PERL_PPDEF(pp_ftblk) -PERL_PPDEF(pp_ftfile) -PERL_PPDEF(pp_ftdir) -PERL_PPDEF(pp_ftpipe) -PERL_PPDEF(pp_ftlink) -PERL_PPDEF(pp_ftsuid) -PERL_PPDEF(pp_ftsgid) -PERL_PPDEF(pp_ftsvtx) -PERL_PPDEF(pp_fttty) -PERL_PPDEF(pp_fttext) -PERL_PPDEF(pp_ftbinary) -PERL_PPDEF(pp_chdir) -PERL_PPDEF(pp_chown) -PERL_PPDEF(pp_chroot) -PERL_PPDEF(pp_unlink) -PERL_PPDEF(pp_chmod) -PERL_PPDEF(pp_utime) -PERL_PPDEF(pp_rename) -PERL_PPDEF(pp_link) -PERL_PPDEF(pp_symlink) -PERL_PPDEF(pp_readlink) -PERL_PPDEF(pp_mkdir) -PERL_PPDEF(pp_rmdir) -PERL_PPDEF(pp_open_dir) -PERL_PPDEF(pp_readdir) -PERL_PPDEF(pp_telldir) -PERL_PPDEF(pp_seekdir) -PERL_PPDEF(pp_rewinddir) -PERL_PPDEF(pp_closedir) -PERL_PPDEF(pp_fork) -PERL_PPDEF(pp_wait) -PERL_PPDEF(pp_waitpid) -PERL_PPDEF(pp_system) -PERL_PPDEF(pp_exec) -PERL_PPDEF(pp_kill) -PERL_PPDEF(pp_getppid) -PERL_PPDEF(pp_getpgrp) -PERL_PPDEF(pp_setpgrp) -PERL_PPDEF(pp_getpriority) -PERL_PPDEF(pp_setpriority) -PERL_PPDEF(pp_time) -PERL_PPDEF(pp_tms) -PERL_PPDEF(pp_localtime) -PERL_PPDEF(pp_gmtime) -PERL_PPDEF(pp_alarm) -PERL_PPDEF(pp_sleep) -PERL_PPDEF(pp_shmget) -PERL_PPDEF(pp_shmctl) -PERL_PPDEF(pp_shmread) -PERL_PPDEF(pp_shmwrite) -PERL_PPDEF(pp_msgget) -PERL_PPDEF(pp_msgctl) -PERL_PPDEF(pp_msgsnd) -PERL_PPDEF(pp_msgrcv) -PERL_PPDEF(pp_semget) -PERL_PPDEF(pp_semctl) -PERL_PPDEF(pp_semop) -PERL_PPDEF(pp_require) -PERL_PPDEF(pp_dofile) -PERL_PPDEF(pp_entereval) -PERL_PPDEF(pp_leaveeval) -PERL_PPDEF(pp_entertry) -PERL_PPDEF(pp_leavetry) -PERL_PPDEF(pp_ghbyname) -PERL_PPDEF(pp_ghbyaddr) -PERL_PPDEF(pp_ghostent) -PERL_PPDEF(pp_gnbyname) -PERL_PPDEF(pp_gnbyaddr) -PERL_PPDEF(pp_gnetent) -PERL_PPDEF(pp_gpbyname) -PERL_PPDEF(pp_gpbynumber) -PERL_PPDEF(pp_gprotoent) -PERL_PPDEF(pp_gsbyname) -PERL_PPDEF(pp_gsbyport) -PERL_PPDEF(pp_gservent) -PERL_PPDEF(pp_shostent) -PERL_PPDEF(pp_snetent) -PERL_PPDEF(pp_sprotoent) -PERL_PPDEF(pp_sservent) -PERL_PPDEF(pp_ehostent) -PERL_PPDEF(pp_enetent) -PERL_PPDEF(pp_eprotoent) -PERL_PPDEF(pp_eservent) -PERL_PPDEF(pp_gpwnam) -PERL_PPDEF(pp_gpwuid) -PERL_PPDEF(pp_gpwent) -PERL_PPDEF(pp_spwent) -PERL_PPDEF(pp_epwent) -PERL_PPDEF(pp_ggrnam) -PERL_PPDEF(pp_ggrgid) -PERL_PPDEF(pp_ggrent) -PERL_PPDEF(pp_sgrent) -PERL_PPDEF(pp_egrent) -PERL_PPDEF(pp_getlogin) -PERL_PPDEF(pp_syscall) -PERL_PPDEF(pp_lock) -PERL_PPDEF(pp_threadsv) +PERL_PPDEF(Perl_pp_null) +PERL_PPDEF(Perl_pp_stub) +PERL_PPDEF(Perl_pp_scalar) +PERL_PPDEF(Perl_pp_pushmark) +PERL_PPDEF(Perl_pp_wantarray) +PERL_PPDEF(Perl_pp_const) +PERL_PPDEF(Perl_pp_gvsv) +PERL_PPDEF(Perl_pp_gv) +PERL_PPDEF(Perl_pp_gelem) +PERL_PPDEF(Perl_pp_padsv) +PERL_PPDEF(Perl_pp_padav) +PERL_PPDEF(Perl_pp_padhv) +PERL_PPDEF(Perl_pp_padany) +PERL_PPDEF(Perl_pp_pushre) +PERL_PPDEF(Perl_pp_rv2gv) +PERL_PPDEF(Perl_pp_rv2sv) +PERL_PPDEF(Perl_pp_av2arylen) +PERL_PPDEF(Perl_pp_rv2cv) +PERL_PPDEF(Perl_pp_anoncode) +PERL_PPDEF(Perl_pp_prototype) +PERL_PPDEF(Perl_pp_refgen) +PERL_PPDEF(Perl_pp_srefgen) +PERL_PPDEF(Perl_pp_ref) +PERL_PPDEF(Perl_pp_bless) +PERL_PPDEF(Perl_pp_backtick) +PERL_PPDEF(Perl_pp_glob) +PERL_PPDEF(Perl_pp_readline) +PERL_PPDEF(Perl_pp_rcatline) +PERL_PPDEF(Perl_pp_regcmaybe) +PERL_PPDEF(Perl_pp_regcreset) +PERL_PPDEF(Perl_pp_regcomp) +PERL_PPDEF(Perl_pp_match) +PERL_PPDEF(Perl_pp_qr) +PERL_PPDEF(Perl_pp_subst) +PERL_PPDEF(Perl_pp_substcont) +PERL_PPDEF(Perl_pp_trans) +PERL_PPDEF(Perl_pp_sassign) +PERL_PPDEF(Perl_pp_aassign) +PERL_PPDEF(Perl_pp_chop) +PERL_PPDEF(Perl_pp_schop) +PERL_PPDEF(Perl_pp_chomp) +PERL_PPDEF(Perl_pp_schomp) +PERL_PPDEF(Perl_pp_defined) +PERL_PPDEF(Perl_pp_undef) +PERL_PPDEF(Perl_pp_study) +PERL_PPDEF(Perl_pp_pos) +PERL_PPDEF(Perl_pp_preinc) +PERL_PPDEF(Perl_pp_predec) +PERL_PPDEF(Perl_pp_postinc) +PERL_PPDEF(Perl_pp_postdec) +PERL_PPDEF(Perl_pp_pow) +PERL_PPDEF(Perl_pp_multiply) +PERL_PPDEF(Perl_pp_i_multiply) +PERL_PPDEF(Perl_pp_divide) +PERL_PPDEF(Perl_pp_i_divide) +PERL_PPDEF(Perl_pp_modulo) +PERL_PPDEF(Perl_pp_i_modulo) +PERL_PPDEF(Perl_pp_repeat) +PERL_PPDEF(Perl_pp_add) +PERL_PPDEF(Perl_pp_i_add) +PERL_PPDEF(Perl_pp_subtract) +PERL_PPDEF(Perl_pp_i_subtract) +PERL_PPDEF(Perl_pp_concat) +PERL_PPDEF(Perl_pp_stringify) +PERL_PPDEF(Perl_pp_left_shift) +PERL_PPDEF(Perl_pp_right_shift) +PERL_PPDEF(Perl_pp_lt) +PERL_PPDEF(Perl_pp_i_lt) +PERL_PPDEF(Perl_pp_gt) +PERL_PPDEF(Perl_pp_i_gt) +PERL_PPDEF(Perl_pp_le) +PERL_PPDEF(Perl_pp_i_le) +PERL_PPDEF(Perl_pp_ge) +PERL_PPDEF(Perl_pp_i_ge) +PERL_PPDEF(Perl_pp_eq) +PERL_PPDEF(Perl_pp_i_eq) +PERL_PPDEF(Perl_pp_ne) +PERL_PPDEF(Perl_pp_i_ne) +PERL_PPDEF(Perl_pp_ncmp) +PERL_PPDEF(Perl_pp_i_ncmp) +PERL_PPDEF(Perl_pp_slt) +PERL_PPDEF(Perl_pp_sgt) +PERL_PPDEF(Perl_pp_sle) +PERL_PPDEF(Perl_pp_sge) +PERL_PPDEF(Perl_pp_seq) +PERL_PPDEF(Perl_pp_sne) +PERL_PPDEF(Perl_pp_scmp) +PERL_PPDEF(Perl_pp_bit_and) +PERL_PPDEF(Perl_pp_bit_xor) +PERL_PPDEF(Perl_pp_bit_or) +PERL_PPDEF(Perl_pp_negate) +PERL_PPDEF(Perl_pp_i_negate) +PERL_PPDEF(Perl_pp_not) +PERL_PPDEF(Perl_pp_complement) +PERL_PPDEF(Perl_pp_atan2) +PERL_PPDEF(Perl_pp_sin) +PERL_PPDEF(Perl_pp_cos) +PERL_PPDEF(Perl_pp_rand) +PERL_PPDEF(Perl_pp_srand) +PERL_PPDEF(Perl_pp_exp) +PERL_PPDEF(Perl_pp_log) +PERL_PPDEF(Perl_pp_sqrt) +PERL_PPDEF(Perl_pp_int) +PERL_PPDEF(Perl_pp_hex) +PERL_PPDEF(Perl_pp_oct) +PERL_PPDEF(Perl_pp_abs) +PERL_PPDEF(Perl_pp_length) +PERL_PPDEF(Perl_pp_substr) +PERL_PPDEF(Perl_pp_vec) +PERL_PPDEF(Perl_pp_index) +PERL_PPDEF(Perl_pp_rindex) +PERL_PPDEF(Perl_pp_sprintf) +PERL_PPDEF(Perl_pp_formline) +PERL_PPDEF(Perl_pp_ord) +PERL_PPDEF(Perl_pp_chr) +PERL_PPDEF(Perl_pp_crypt) +PERL_PPDEF(Perl_pp_ucfirst) +PERL_PPDEF(Perl_pp_lcfirst) +PERL_PPDEF(Perl_pp_uc) +PERL_PPDEF(Perl_pp_lc) +PERL_PPDEF(Perl_pp_quotemeta) +PERL_PPDEF(Perl_pp_rv2av) +PERL_PPDEF(Perl_pp_aelemfast) +PERL_PPDEF(Perl_pp_aelem) +PERL_PPDEF(Perl_pp_aslice) +PERL_PPDEF(Perl_pp_each) +PERL_PPDEF(Perl_pp_values) +PERL_PPDEF(Perl_pp_keys) +PERL_PPDEF(Perl_pp_delete) +PERL_PPDEF(Perl_pp_exists) +PERL_PPDEF(Perl_pp_rv2hv) +PERL_PPDEF(Perl_pp_helem) +PERL_PPDEF(Perl_pp_hslice) +PERL_PPDEF(Perl_pp_unpack) +PERL_PPDEF(Perl_pp_pack) +PERL_PPDEF(Perl_pp_split) +PERL_PPDEF(Perl_pp_join) +PERL_PPDEF(Perl_pp_list) +PERL_PPDEF(Perl_pp_lslice) +PERL_PPDEF(Perl_pp_anonlist) +PERL_PPDEF(Perl_pp_anonhash) +PERL_PPDEF(Perl_pp_splice) +PERL_PPDEF(Perl_pp_push) +PERL_PPDEF(Perl_pp_pop) +PERL_PPDEF(Perl_pp_shift) +PERL_PPDEF(Perl_pp_unshift) +PERL_PPDEF(Perl_pp_sort) +PERL_PPDEF(Perl_pp_reverse) +PERL_PPDEF(Perl_pp_grepstart) +PERL_PPDEF(Perl_pp_grepwhile) +PERL_PPDEF(Perl_pp_mapstart) +PERL_PPDEF(Perl_pp_mapwhile) +PERL_PPDEF(Perl_pp_range) +PERL_PPDEF(Perl_pp_flip) +PERL_PPDEF(Perl_pp_flop) +PERL_PPDEF(Perl_pp_and) +PERL_PPDEF(Perl_pp_or) +PERL_PPDEF(Perl_pp_xor) +PERL_PPDEF(Perl_pp_cond_expr) +PERL_PPDEF(Perl_pp_andassign) +PERL_PPDEF(Perl_pp_orassign) +PERL_PPDEF(Perl_pp_method) +PERL_PPDEF(Perl_pp_entersub) +PERL_PPDEF(Perl_pp_leavesub) +PERL_PPDEF(Perl_pp_caller) +PERL_PPDEF(Perl_pp_warn) +PERL_PPDEF(Perl_pp_die) +PERL_PPDEF(Perl_pp_reset) +PERL_PPDEF(Perl_pp_lineseq) +PERL_PPDEF(Perl_pp_nextstate) +PERL_PPDEF(Perl_pp_dbstate) +PERL_PPDEF(Perl_pp_unstack) +PERL_PPDEF(Perl_pp_enter) +PERL_PPDEF(Perl_pp_leave) +PERL_PPDEF(Perl_pp_scope) +PERL_PPDEF(Perl_pp_enteriter) +PERL_PPDEF(Perl_pp_iter) +PERL_PPDEF(Perl_pp_enterloop) +PERL_PPDEF(Perl_pp_leaveloop) +PERL_PPDEF(Perl_pp_return) +PERL_PPDEF(Perl_pp_last) +PERL_PPDEF(Perl_pp_next) +PERL_PPDEF(Perl_pp_redo) +PERL_PPDEF(Perl_pp_dump) +PERL_PPDEF(Perl_pp_goto) +PERL_PPDEF(Perl_pp_exit) +PERL_PPDEF(Perl_pp_open) +PERL_PPDEF(Perl_pp_close) +PERL_PPDEF(Perl_pp_pipe_op) +PERL_PPDEF(Perl_pp_fileno) +PERL_PPDEF(Perl_pp_umask) +PERL_PPDEF(Perl_pp_binmode) +PERL_PPDEF(Perl_pp_tie) +PERL_PPDEF(Perl_pp_untie) +PERL_PPDEF(Perl_pp_tied) +PERL_PPDEF(Perl_pp_dbmopen) +PERL_PPDEF(Perl_pp_dbmclose) +PERL_PPDEF(Perl_pp_sselect) +PERL_PPDEF(Perl_pp_select) +PERL_PPDEF(Perl_pp_getc) +PERL_PPDEF(Perl_pp_read) +PERL_PPDEF(Perl_pp_enterwrite) +PERL_PPDEF(Perl_pp_leavewrite) +PERL_PPDEF(Perl_pp_prtf) +PERL_PPDEF(Perl_pp_print) +PERL_PPDEF(Perl_pp_sysopen) +PERL_PPDEF(Perl_pp_sysseek) +PERL_PPDEF(Perl_pp_sysread) +PERL_PPDEF(Perl_pp_syswrite) +PERL_PPDEF(Perl_pp_send) +PERL_PPDEF(Perl_pp_recv) +PERL_PPDEF(Perl_pp_eof) +PERL_PPDEF(Perl_pp_tell) +PERL_PPDEF(Perl_pp_seek) +PERL_PPDEF(Perl_pp_truncate) +PERL_PPDEF(Perl_pp_fcntl) +PERL_PPDEF(Perl_pp_ioctl) +PERL_PPDEF(Perl_pp_flock) +PERL_PPDEF(Perl_pp_socket) +PERL_PPDEF(Perl_pp_sockpair) +PERL_PPDEF(Perl_pp_bind) +PERL_PPDEF(Perl_pp_connect) +PERL_PPDEF(Perl_pp_listen) +PERL_PPDEF(Perl_pp_accept) +PERL_PPDEF(Perl_pp_shutdown) +PERL_PPDEF(Perl_pp_gsockopt) +PERL_PPDEF(Perl_pp_ssockopt) +PERL_PPDEF(Perl_pp_getsockname) +PERL_PPDEF(Perl_pp_getpeername) +PERL_PPDEF(Perl_pp_lstat) +PERL_PPDEF(Perl_pp_stat) +PERL_PPDEF(Perl_pp_ftrread) +PERL_PPDEF(Perl_pp_ftrwrite) +PERL_PPDEF(Perl_pp_ftrexec) +PERL_PPDEF(Perl_pp_fteread) +PERL_PPDEF(Perl_pp_ftewrite) +PERL_PPDEF(Perl_pp_fteexec) +PERL_PPDEF(Perl_pp_ftis) +PERL_PPDEF(Perl_pp_fteowned) +PERL_PPDEF(Perl_pp_ftrowned) +PERL_PPDEF(Perl_pp_ftzero) +PERL_PPDEF(Perl_pp_ftsize) +PERL_PPDEF(Perl_pp_ftmtime) +PERL_PPDEF(Perl_pp_ftatime) +PERL_PPDEF(Perl_pp_ftctime) +PERL_PPDEF(Perl_pp_ftsock) +PERL_PPDEF(Perl_pp_ftchr) +PERL_PPDEF(Perl_pp_ftblk) +PERL_PPDEF(Perl_pp_ftfile) +PERL_PPDEF(Perl_pp_ftdir) +PERL_PPDEF(Perl_pp_ftpipe) +PERL_PPDEF(Perl_pp_ftlink) +PERL_PPDEF(Perl_pp_ftsuid) +PERL_PPDEF(Perl_pp_ftsgid) +PERL_PPDEF(Perl_pp_ftsvtx) +PERL_PPDEF(Perl_pp_fttty) +PERL_PPDEF(Perl_pp_fttext) +PERL_PPDEF(Perl_pp_ftbinary) +PERL_PPDEF(Perl_pp_chdir) +PERL_PPDEF(Perl_pp_chown) +PERL_PPDEF(Perl_pp_chroot) +PERL_PPDEF(Perl_pp_unlink) +PERL_PPDEF(Perl_pp_chmod) +PERL_PPDEF(Perl_pp_utime) +PERL_PPDEF(Perl_pp_rename) +PERL_PPDEF(Perl_pp_link) +PERL_PPDEF(Perl_pp_symlink) +PERL_PPDEF(Perl_pp_readlink) +PERL_PPDEF(Perl_pp_mkdir) +PERL_PPDEF(Perl_pp_rmdir) +PERL_PPDEF(Perl_pp_open_dir) +PERL_PPDEF(Perl_pp_readdir) +PERL_PPDEF(Perl_pp_telldir) +PERL_PPDEF(Perl_pp_seekdir) +PERL_PPDEF(Perl_pp_rewinddir) +PERL_PPDEF(Perl_pp_closedir) +PERL_PPDEF(Perl_pp_fork) +PERL_PPDEF(Perl_pp_wait) +PERL_PPDEF(Perl_pp_waitpid) +PERL_PPDEF(Perl_pp_system) +PERL_PPDEF(Perl_pp_exec) +PERL_PPDEF(Perl_pp_kill) +PERL_PPDEF(Perl_pp_getppid) +PERL_PPDEF(Perl_pp_getpgrp) +PERL_PPDEF(Perl_pp_setpgrp) +PERL_PPDEF(Perl_pp_getpriority) +PERL_PPDEF(Perl_pp_setpriority) +PERL_PPDEF(Perl_pp_time) +PERL_PPDEF(Perl_pp_tms) +PERL_PPDEF(Perl_pp_localtime) +PERL_PPDEF(Perl_pp_gmtime) +PERL_PPDEF(Perl_pp_alarm) +PERL_PPDEF(Perl_pp_sleep) +PERL_PPDEF(Perl_pp_shmget) +PERL_PPDEF(Perl_pp_shmctl) +PERL_PPDEF(Perl_pp_shmread) +PERL_PPDEF(Perl_pp_shmwrite) +PERL_PPDEF(Perl_pp_msgget) +PERL_PPDEF(Perl_pp_msgctl) +PERL_PPDEF(Perl_pp_msgsnd) +PERL_PPDEF(Perl_pp_msgrcv) +PERL_PPDEF(Perl_pp_semget) +PERL_PPDEF(Perl_pp_semctl) +PERL_PPDEF(Perl_pp_semop) +PERL_PPDEF(Perl_pp_require) +PERL_PPDEF(Perl_pp_dofile) +PERL_PPDEF(Perl_pp_entereval) +PERL_PPDEF(Perl_pp_leaveeval) +PERL_PPDEF(Perl_pp_entertry) +PERL_PPDEF(Perl_pp_leavetry) +PERL_PPDEF(Perl_pp_ghbyname) +PERL_PPDEF(Perl_pp_ghbyaddr) +PERL_PPDEF(Perl_pp_ghostent) +PERL_PPDEF(Perl_pp_gnbyname) +PERL_PPDEF(Perl_pp_gnbyaddr) +PERL_PPDEF(Perl_pp_gnetent) +PERL_PPDEF(Perl_pp_gpbyname) +PERL_PPDEF(Perl_pp_gpbynumber) +PERL_PPDEF(Perl_pp_gprotoent) +PERL_PPDEF(Perl_pp_gsbyname) +PERL_PPDEF(Perl_pp_gsbyport) +PERL_PPDEF(Perl_pp_gservent) +PERL_PPDEF(Perl_pp_shostent) +PERL_PPDEF(Perl_pp_snetent) +PERL_PPDEF(Perl_pp_sprotoent) +PERL_PPDEF(Perl_pp_sservent) +PERL_PPDEF(Perl_pp_ehostent) +PERL_PPDEF(Perl_pp_enetent) +PERL_PPDEF(Perl_pp_eprotoent) +PERL_PPDEF(Perl_pp_eservent) +PERL_PPDEF(Perl_pp_gpwnam) +PERL_PPDEF(Perl_pp_gpwuid) +PERL_PPDEF(Perl_pp_gpwent) +PERL_PPDEF(Perl_pp_spwent) +PERL_PPDEF(Perl_pp_epwent) +PERL_PPDEF(Perl_pp_ggrnam) +PERL_PPDEF(Perl_pp_ggrgid) +PERL_PPDEF(Perl_pp_ggrent) +PERL_PPDEF(Perl_pp_sgrent) +PERL_PPDEF(Perl_pp_egrent) +PERL_PPDEF(Perl_pp_getlogin) +PERL_PPDEF(Perl_pp_syscall) +PERL_PPDEF(Perl_pp_lock) +PERL_PPDEF(Perl_pp_threadsv) @@ -15,6 +15,7 @@ */ #include "EXTERN.h" +#define PERL_IN_PP_SYS_C #include "perl.h" #ifdef I_SHADOW @@ -124,10 +125,6 @@ extern int h_errno; # endif #endif -#if !defined(HAS_MKDIR) || !defined(HAS_RMDIR) -static int dooneliner (char *cmd, char *filename); -#endif - #ifdef HAS_CHSIZE # ifdef my_chsize /* Probably #defined to Perl_my_chsize in embed.h */ # undef my_chsize @@ -230,7 +227,7 @@ static char zero_but_true[ZBTLEN + 1] = "0 but true"; || defined(HAS_SETREGID) || defined(HAS_SETRESGID)) /* The Hard Way. */ STATIC int -emulate_eaccess (const char* path, int mode) +emulate_eaccess(pTHX_ const char* path, int mode) { Uid_t ruid = getuid(); Uid_t euid = geteuid(); @@ -295,7 +292,7 @@ emulate_eaccess (const char* path, int mode) #if !defined(PERL_EFF_ACCESS_R_OK) STATIC int -emulate_eaccess (const char* path, int mode) +emulate_eaccess(pTHX_ const char* path, int mode) { croak("switching effective uid is not implemented"); /*NOTREACHED*/ @@ -474,8 +471,8 @@ PP(pp_die) PUSHs(file); PUSHs(line); PUTBACK; - perl_call_sv((SV*)GvCV(gv), - G_SCALAR|G_EVAL|G_KEEPERR); + call_sv((SV*)GvCV(gv), + G_SCALAR|G_EVAL|G_KEEPERR); sv_setsv(error,*PL_stack_sp--); } } @@ -539,7 +536,7 @@ PP(pp_open) XPUSHs(sv); PUTBACK; ENTER; - perl_call_method("OPEN", G_SCALAR); + call_method("OPEN", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -571,7 +568,7 @@ PP(pp_close) XPUSHs(SvTIED_obj((SV*)gv, mg)); PUTBACK; ENTER; - perl_call_method("CLOSE", G_SCALAR); + call_method("CLOSE", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -653,7 +650,7 @@ PP(pp_fileno) XPUSHs(SvTIED_obj((SV*)gv, mg)); PUTBACK; ENTER; - perl_call_method("FILENO", G_SCALAR); + call_method("FILENO", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -708,7 +705,7 @@ PP(pp_binmode) XPUSHs(SvTIED_obj((SV*)gv, mg)); PUTBACK; ENTER; - perl_call_method("BINMODE", G_SCALAR); + call_method("BINMODE", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -765,10 +762,10 @@ PP(pp_tie) while (items--) PUSHs(*MARK++); PUTBACK; - perl_call_method(methname, G_SCALAR); + call_method(methname, G_SCALAR); } else { - /* Not clear why we don't call perl_call_method here too. + /* Not clear why we don't call call_method here too. * perhaps to get different error message ? */ stash = gv_stashsv(*MARK, FALSE); @@ -783,7 +780,7 @@ PP(pp_tie) while (items--) PUSHs(*MARK++); PUTBACK; - perl_call_sv((SV*)GvCV(gv), G_SCALAR); + call_sv((SV*)GvCV(gv), G_SCALAR); } SPAGAIN; @@ -852,7 +849,7 @@ PP(pp_dbmopen) stash = gv_stashsv(sv, FALSE); if (!stash || !(gv = gv_fetchmethod(stash, "TIEHASH"))) { PUTBACK; - perl_require_pv("AnyDBM_File.pm"); + require_pv("AnyDBM_File.pm"); SPAGAIN; if (!(gv = gv_fetchmethod(stash, "TIEHASH"))) DIE("No dbm on this machine"); @@ -870,7 +867,7 @@ PP(pp_dbmopen) PUSHs(sv_2mortal(newSViv(O_RDWR))); PUSHs(right); PUTBACK; - perl_call_sv((SV*)GvCV(gv), G_SCALAR); + call_sv((SV*)GvCV(gv), G_SCALAR); SPAGAIN; if (!sv_isobject(TOPs)) { @@ -881,7 +878,7 @@ PP(pp_dbmopen) PUSHs(sv_2mortal(newSViv(O_RDONLY))); PUSHs(right); PUTBACK; - perl_call_sv((SV*)GvCV(gv), G_SCALAR); + call_sv((SV*)GvCV(gv), G_SCALAR); SPAGAIN; } @@ -1040,7 +1037,7 @@ PP(pp_sselect) } void -setdefout(GV *gv) +Perl_setdefout(pTHX_ GV *gv) { dTHR; if (gv) @@ -1103,7 +1100,7 @@ PP(pp_getc) XPUSHs(SvTIED_obj((SV*)gv, mg)); PUTBACK; ENTER; - perl_call_method("GETC", gimme); + call_method("GETC", gimme); LEAVE; SPAGAIN; if (gimme == G_SCALAR) @@ -1125,7 +1122,7 @@ PP(pp_read) } STATIC OP * -doform(CV *cv, GV *gv, OP *retop) +doform(pTHX_ CV *cv, GV *gv, OP *retop) { dTHR; register PERL_CONTEXT *cx; @@ -1327,7 +1324,7 @@ PP(pp_prtf) *MARK = SvTIED_obj((SV*)gv, mg); PUTBACK; ENTER; - perl_call_method("PRINTF", G_SCALAR); + call_method("PRINTF", G_SCALAR); LEAVE; SPAGAIN; MARK = ORIGMARK + 1; @@ -1437,7 +1434,7 @@ PP(pp_sysread) PUSHMARK(MARK-1); *MARK = SvTIED_obj((SV*)gv, mg); ENTER; - perl_call_method("READ", G_SCALAR); + call_method("READ", G_SCALAR); LEAVE; SPAGAIN; sv = POPs; @@ -1587,7 +1584,7 @@ PP(pp_send) PUSHMARK(MARK-1); *MARK = SvTIED_obj((SV*)gv, mg); ENTER; - perl_call_method("WRITE", G_SCALAR); + call_method("WRITE", G_SCALAR); LEAVE; SPAGAIN; sv = POPs; @@ -1685,7 +1682,7 @@ PP(pp_eof) XPUSHs(SvTIED_obj((SV*)gv, mg)); PUTBACK; ENTER; - perl_call_method("EOF", G_SCALAR); + call_method("EOF", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -1711,7 +1708,7 @@ PP(pp_tell) XPUSHs(SvTIED_obj((SV*)gv, mg)); PUTBACK; ENTER; - perl_call_method("TELL", G_SCALAR); + call_method("TELL", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -1743,7 +1740,7 @@ PP(pp_sysseek) XPUSHs(sv_2mortal(newSViv((IV) whence))); PUTBACK; ENTER; - perl_call_method("SEEK", G_SCALAR); + call_method("SEEK", G_SCALAR); LEAVE; SPAGAIN; RETURN; @@ -3178,7 +3175,7 @@ PP(pp_readlink) #if !defined(HAS_MKDIR) || !defined(HAS_RMDIR) STATIC int -dooneliner(char *cmd, char *filename) +dooneliner(pTHX_ char *cmd, char *filename) { char *save_filename = filename; char *cmdline; @@ -4909,8 +4906,8 @@ PP(pp_syscall) What's really needed is a good file locking module. */ -static int -fcntl_emulate_flock(int fd, int operation) +STATIC int +fcntl_emulate_flock(pTHX_ int fd, int operation) { struct flock flock; @@ -4967,7 +4964,7 @@ fcntl_emulate_flock(int fd, int operation) # endif STATIC int -lockf_emulate_flock (int fd, int operation) +lockf_emulate_flock(pTHX_ int fd, int operation) { int i; int save_errno; @@ -1,982 +1,1354 @@ -#ifndef PERL_CALLCONV -# define PERL_CALLCONV -#endif - -#ifdef PERL_OBJECT -#define VIRTUAL virtual PERL_CALLCONV -#else -#define VIRTUAL PERL_CALLCONV -START_EXTERN_C -#endif - -/* NOTE!!! When new virtual functions are added, they must be added at - * the end of this file to maintain binary compatibility with PERL_OBJECT - */ - - -#ifndef NEXT30_NO_ATTRIBUTE -#ifndef HASATTRIBUTE /* disable GNU-cc attribute checking? */ -#ifdef __attribute__ /* Avoid possible redefinition errors */ -#undef __attribute__ -#endif -#define __attribute__(attr) -#endif -#endif -VIRTUAL SV* amagic_call (SV* left,SV* right,int method,int dir); -VIRTUAL bool Gv_AMupdate (HV* stash); -VIRTUAL OP* append_elem (I32 optype, OP* head, OP* tail); -VIRTUAL OP* append_list (I32 optype, LISTOP* first, LISTOP* last); -VIRTUAL I32 apply (I32 type, SV** mark, SV** sp); -VIRTUAL void assertref (OP* o); -VIRTUAL bool avhv_exists_ent (AV *ar, SV* keysv, U32 hash); -VIRTUAL SV** avhv_fetch_ent (AV *ar, SV* keysv, I32 lval, U32 hash); -VIRTUAL HE* avhv_iternext (AV *ar); -VIRTUAL SV* avhv_iterval (AV *ar, HE* entry); -VIRTUAL HV* avhv_keys (AV *ar); -VIRTUAL void av_clear (AV* ar); -VIRTUAL void av_extend (AV* ar, I32 key); -VIRTUAL AV* av_fake (I32 size, SV** svp); -VIRTUAL SV** av_fetch (AV* ar, I32 key, I32 lval); -VIRTUAL void av_fill (AV* ar, I32 fill); -VIRTUAL I32 av_len (AV* ar); -VIRTUAL AV* av_make (I32 size, SV** svp); -VIRTUAL SV* av_pop (AV* ar); -VIRTUAL void av_push (AV* ar, SV* val); -VIRTUAL void av_reify (AV* ar); -VIRTUAL SV* av_shift (AV* ar); -VIRTUAL SV** av_store (AV* ar, I32 key, SV* val); -VIRTUAL void av_undef (AV* ar); -VIRTUAL void av_unshift (AV* ar, I32 num); -VIRTUAL OP* bind_match (I32 type, OP* left, OP* pat); -VIRTUAL OP* block_end (I32 floor, OP* seq); -VIRTUAL I32 block_gimme (void); -VIRTUAL int block_start (int full); -VIRTUAL void boot_core_UNIVERSAL (void); -VIRTUAL void call_list (I32 oldscope, AV* av_list); -VIRTUAL I32 cando (I32 bit, I32 effective, Stat_t* statbufp); -VIRTUAL U32 cast_ulong (double f); -VIRTUAL I32 cast_i32 (double f); -VIRTUAL IV cast_iv (double f); -VIRTUAL UV cast_uv (double f); -#if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) -VIRTUAL I32 my_chsize (int fd, Off_t length); -#endif - -#ifdef USE_THREADS -VIRTUAL MAGIC * condpair_magic (SV *sv); -#endif -VIRTUAL OP* convert (I32 optype, I32 flags, OP* o); -VIRTUAL void croak (const char* pat,...) __attribute__((noreturn)); -VIRTUAL void cv_ckproto (CV* cv, GV* gv, char* p); -VIRTUAL CV* cv_clone (CV* proto); -VIRTUAL SV* cv_const_sv (CV* cv); -VIRTUAL SV* op_const_sv (OP* o, CV* cv); -VIRTUAL void cv_undef (CV* cv); -VIRTUAL void cx_dump (PERL_CONTEXT* cs); -VIRTUAL SV* filter_add (filter_t funcp, SV* datasv); -VIRTUAL void filter_del (filter_t funcp); -VIRTUAL I32 filter_read (int idx, SV* buffer, int maxlen); -VIRTUAL char ** get_op_descs (void); -VIRTUAL char ** get_op_names (void); -VIRTUAL char * get_no_modify (void); -VIRTUAL U32 * get_opargs (void); -VIRTUAL I32 cxinc (void); -VIRTUAL void deb (const char* pat,...); -VIRTUAL void deb_growlevel (void); -VIRTUAL void debprofdump (void); -VIRTUAL I32 debop (OP* o); -VIRTUAL I32 debstack (void); -VIRTUAL I32 debstackptrs (void); -VIRTUAL char* delimcpy (char* to, char* toend, char* from, char* fromend, - int delim, I32* retlen); -VIRTUAL void deprecate (char* s); -VIRTUAL OP* die (const char* pat,...); -VIRTUAL OP* die_where (char* message, STRLEN msglen); -VIRTUAL void dounwind (I32 cxix); -VIRTUAL bool do_aexec (SV* really, SV** mark, SV** sp); -VIRTUAL int do_binmode (PerlIO *fp, int iotype, int flag); -VIRTUAL void do_chop (SV* asv, SV* sv); -VIRTUAL bool do_close (GV* gv, bool not_implicit); -VIRTUAL bool do_eof (GV* gv); -VIRTUAL bool do_exec (char* cmd); -#ifndef WIN32 -VIRTUAL bool do_exec3 (char* cmd, int fd, int flag); -#endif -VIRTUAL void do_execfree (void); +#if defined(WIN32) +int& Perl_ErrorNo(pTHX); +#endif +#if defined(PERL_GLOBAL_STRUCT) +struct perl_vars * Perl_GetVars(pTHX); +#endif +bool Perl_Gv_AMupdate(pTHX_ HV* stash); +SV* Perl_amagic_call(pTHX_ SV* left, SV* right, int method, int dir); +OP* Perl_append_elem(pTHX_ I32 optype, OP* head, OP* tail); +OP* Perl_append_list(pTHX_ I32 optype, LISTOP* first, LISTOP* last); +I32 Perl_apply(pTHX_ I32 type, SV** mark, SV** sp); +void Perl_assertref(pTHX_ OP* o); +void Perl_av_clear(pTHX_ AV* ar); +void Perl_av_extend(pTHX_ AV* ar, I32 key); +AV* Perl_av_fake(pTHX_ I32 size, SV** svp); +SV** Perl_av_fetch(pTHX_ AV* ar, I32 key, I32 lval); +void Perl_av_fill(pTHX_ AV* ar, I32 fill); +I32 Perl_av_len(pTHX_ AV* ar); +AV* Perl_av_make(pTHX_ I32 size, SV** svp); +SV* Perl_av_pop(pTHX_ AV* ar); +void Perl_av_push(pTHX_ AV* ar, SV* val); +void Perl_av_reify(pTHX_ AV* ar); +SV* Perl_av_shift(pTHX_ AV* ar); +SV** Perl_av_store(pTHX_ AV* ar, I32 key, SV* val); +void Perl_av_undef(pTHX_ AV* ar); +void Perl_av_unshift(pTHX_ AV* ar, I32 num); +bool Perl_avhv_exists_ent(pTHX_ AV *ar, SV* keysv, U32 hash); +SV** Perl_avhv_fetch_ent(pTHX_ AV *ar, SV* keysv, I32 lval, U32 hash); +HE* Perl_avhv_iternext(pTHX_ AV *ar); +SV* Perl_avhv_iterval(pTHX_ AV *ar, HE* entry); +HV* Perl_avhv_keys(pTHX_ AV *ar); +OP* Perl_bind_match(pTHX_ I32 type, OP* left, OP* pat); +OP* Perl_block_end(pTHX_ I32 floor, OP* seq); +I32 Perl_block_gimme(pTHX); +int Perl_block_start(pTHX_ int full); +void Perl_boot_core_UNIVERSAL(pTHX); +void* Perl_bset_obj_store(pTHX_ void *obj, I32 ix); +I32 Perl_call_argv(pTHX_ const char* sub_name, I32 flags, char** argv); +void Perl_call_atexit(pTHX_ ATEXIT_t fn, void *ptr); +void Perl_call_list(pTHX_ I32 oldscope, AV* av_list); +I32 Perl_call_method(pTHX_ const char* methname, I32 flags); +I32 Perl_call_pv(pTHX_ const char* sub_name, I32 flags); +I32 Perl_call_sv(pTHX_ SV* sv, I32 flags); +#if defined(MYMALLOC) +Malloc_t Perl_calloc(pTHX_ MEM_SIZE elements, MEM_SIZE size); +#endif +I32 Perl_cando(pTHX_ I32 bit, I32 effective, Stat_t* statbufp); +I32 Perl_cast_i32(pTHX_ double f); +IV Perl_cast_iv(pTHX_ double f); +U32 Perl_cast_ulong(pTHX_ double f); +UV Perl_cast_uv(pTHX_ double f); +#if defined(USE_THREADS) +MAGIC* Perl_condpair_magic(pTHX_ SV *sv); +#endif +OP* Perl_convert(pTHX_ I32 optype, I32 flags, OP* o); +void Perl_croak(pTHX_ const char* pat, ...) __attribute__((noreturn)); +void Perl_cv_ckproto(pTHX_ CV* cv, GV* gv, char* p); +CV* Perl_cv_clone(pTHX_ CV* proto); +SV* Perl_cv_const_sv(pTHX_ CV* cv); +void Perl_cv_undef(pTHX_ CV* cv); +void Perl_cx_dump(pTHX_ PERL_CONTEXT* cs); +I32 Perl_cxinc(pTHX); +void Perl_deb(pTHX_ const char* pat, ...); +void Perl_deb_growlevel(pTHX); +I32 Perl_debop(pTHX_ OP* o); +void Perl_debprofdump(pTHX); +I32 Perl_debstack(pTHX); +I32 Perl_debstackptrs(pTHX); +void* Perl_default_protect(pTHX_ int *excpt, protect_body_t body, ...); +char* Perl_delimcpy(pTHX_ char* to, char* toend, char* from, char* fromend, int delim, I32* retlen); +void Perl_deprecate(pTHX_ char* s); +OP* Perl_die(pTHX_ const char* pat, ...); +OP* Perl_die_where(pTHX_ char* message, STRLEN msglen); +bool Perl_do_aexec(pTHX_ SV* really, SV** mark, SV** sp); +int Perl_do_binmode(pTHX_ PerlIO *fp, int iotype, int flag); +I32 Perl_do_chomp(pTHX_ SV* sv); +void Perl_do_chop(pTHX_ SV* asv, SV* sv); +bool Perl_do_close(pTHX_ GV* gv, bool not_implicit); +bool Perl_do_eof(pTHX_ GV* gv); +bool Perl_do_exec(pTHX_ char* cmd); +#if !defined(WIN32) +bool Perl_do_exec3(pTHX_ char* cmd, int fd, int flag); +#endif +void Perl_do_execfree(pTHX); +void Perl_do_gv_dump(pTHX_ I32 level, PerlIO *file, char *name, GV *sv); +void Perl_do_gvgv_dump(pTHX_ I32 level, PerlIO *file, char *name, GV *sv); +void Perl_do_hv_dump(pTHX_ I32 level, PerlIO *file, char *name, HV *sv); +#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) +I32 Perl_do_ipcctl(pTHX_ I32 optype, SV** mark, SV** sp); +#endif #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) -VIRTUAL I32 do_ipcctl (I32 optype, SV** mark, SV** sp); -VIRTUAL I32 do_ipcget (I32 optype, SV** mark, SV** sp); +I32 Perl_do_ipcget(pTHX_ I32 optype, SV** mark, SV** sp); #endif -VIRTUAL void do_join (SV* sv, SV* del, SV** mark, SV** sp); -VIRTUAL OP* do_kv (ARGSproto); +void Perl_do_join(pTHX_ SV* sv, SV* del, SV** mark, SV** sp); +OP* Perl_do_kv(pTHX_ ARGSproto); +void Perl_do_magic_dump(pTHX_ I32 level, PerlIO *file, MAGIC *mg, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim); #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) -VIRTUAL I32 do_msgrcv (SV** mark, SV** sp); -VIRTUAL I32 do_msgsnd (SV** mark, SV** sp); -#endif -VIRTUAL bool do_open (GV* gv, char* name, I32 len, - int as_raw, int rawmode, int rawperm, PerlIO* supplied_fp); -VIRTUAL void do_pipe (SV* sv, GV* rgv, GV* wgv); -VIRTUAL bool do_print (SV* sv, PerlIO* fp); -VIRTUAL OP* do_readline (void); -VIRTUAL I32 do_chomp (SV* sv); -VIRTUAL bool do_seek (GV* gv, Off_t pos, int whence); +I32 Perl_do_msgrcv(pTHX_ SV** mark, SV** sp); +#endif #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) -VIRTUAL I32 do_semop (SV** mark, SV** sp); -VIRTUAL I32 do_shmio (I32 optype, SV** mark, SV** sp); -#endif -VIRTUAL void do_sprintf (SV* sv, I32 len, SV** sarg); -VIRTUAL Off_t do_sysseek (GV* gv, Off_t pos, int whence); -VIRTUAL Off_t do_tell (GV* gv); -VIRTUAL I32 do_trans (SV* sv); -VIRTUAL void do_vecset (SV* sv); -VIRTUAL void do_vop (I32 optype, SV* sv, SV* left, SV* right); -VIRTUAL OP* dofile (OP* term); -VIRTUAL I32 dowantarray (void); -VIRTUAL void dump_all (void); -VIRTUAL void dump_eval (void); -#ifdef DUMP_FDS /* See util.c */ -VIRTUAL void dump_fds (char* s); -#endif -VIRTUAL void dump_form (GV* gv); -VIRTUAL void gv_dump (GV* gv); -#ifdef MYMALLOC -VIRTUAL void dump_mstats (char* s); -#endif -VIRTUAL void op_dump (OP* arg); -VIRTUAL void pmop_dump (PMOP* pm); -VIRTUAL void dump_packsubs (HV* stash); -VIRTUAL void dump_sub (GV* gv); -VIRTUAL void fbm_compile (SV* sv, U32 flags); -VIRTUAL char* fbm_instr (unsigned char* big, unsigned char* bigend, SV* littlesv, U32 flags); -VIRTUAL char* find_script (char *scriptname, bool dosearch, char **search_ext, I32 flags); -#ifdef USE_THREADS -VIRTUAL PADOFFSET find_threadsv (const char *name); -#endif -VIRTUAL OP* force_list (OP* arg); -VIRTUAL OP* fold_constants (OP* arg); -VIRTUAL char* form (const char* pat, ...); -VIRTUAL void free_tmps (void); -VIRTUAL OP* gen_constant_list (OP* o); -#ifndef HAS_GETENV_LEN -VIRTUAL char* getenv_len (char* key, unsigned long *len); -#endif -VIRTUAL void gp_free (GV* gv); -VIRTUAL GP* gp_ref (GP* gp); -VIRTUAL GV* gv_AVadd (GV* gv); -VIRTUAL GV* gv_HVadd (GV* gv); -VIRTUAL GV* gv_IOadd (GV* gv); -VIRTUAL GV* gv_autoload4 (HV* stash, const char* name, STRLEN len, I32 method); -VIRTUAL void gv_check (HV* stash); -VIRTUAL void gv_efullname (SV* sv, GV* gv); -VIRTUAL void gv_efullname3 (SV* sv, GV* gv, const char* prefix); -VIRTUAL GV* gv_fetchfile (const char* name); -VIRTUAL GV* gv_fetchmeth (HV* stash, const char* name, STRLEN len, I32 level); -VIRTUAL GV* gv_fetchmethod (HV* stash, const char* name); -VIRTUAL GV* gv_fetchmethod_autoload (HV* stash, const char* name, I32 autoload); -VIRTUAL GV* gv_fetchpv (const char* name, I32 add, I32 sv_type); -VIRTUAL void gv_fullname (SV* sv, GV* gv); -VIRTUAL void gv_fullname3 (SV* sv, GV* gv, const char* prefix); -VIRTUAL void gv_init (GV* gv, HV* stash, const char* name, STRLEN len, int multi); -VIRTUAL HV* gv_stashpv (const char* name, I32 create); -VIRTUAL HV* gv_stashpvn (const char* name, U32 namelen, I32 create); -VIRTUAL HV* gv_stashsv (SV* sv, I32 create); -VIRTUAL void hv_clear (HV* tb); -VIRTUAL void hv_delayfree_ent (HV* hv, HE* entry); -VIRTUAL SV* hv_delete (HV* tb, const char* key, U32 klen, I32 flags); -VIRTUAL SV* hv_delete_ent (HV* tb, SV* key, I32 flags, U32 hash); -VIRTUAL bool hv_exists (HV* tb, const char* key, U32 klen); -VIRTUAL bool hv_exists_ent (HV* tb, SV* key, U32 hash); -VIRTUAL SV** hv_fetch (HV* tb, const char* key, U32 klen, I32 lval); -VIRTUAL HE* hv_fetch_ent (HV* tb, SV* key, I32 lval, U32 hash); -VIRTUAL void hv_free_ent (HV* hv, HE* entry); -VIRTUAL I32 hv_iterinit (HV* tb); -VIRTUAL char* hv_iterkey (HE* entry, I32* retlen); -VIRTUAL SV* hv_iterkeysv (HE* entry); -VIRTUAL HE* hv_iternext (HV* tb); -VIRTUAL SV* hv_iternextsv (HV* hv, char** key, I32* retlen); -VIRTUAL SV* hv_iterval (HV* tb, HE* entry); -VIRTUAL void hv_ksplit (HV* hv, IV newmax); -VIRTUAL void hv_magic (HV* hv, GV* gv, int how); -VIRTUAL SV** hv_store (HV* tb, const char* key, U32 klen, SV* val, U32 hash); -VIRTUAL HE* hv_store_ent (HV* tb, SV* key, SV* val, U32 hash); -VIRTUAL void hv_undef (HV* tb); -VIRTUAL I32 ibcmp (const char* a, const char* b, I32 len); -VIRTUAL I32 ibcmp_locale (const char* a, const char* b, I32 len); -VIRTUAL I32 ingroup (I32 testgid, I32 effective); -VIRTUAL void init_stacks (ARGSproto); -VIRTUAL U32 intro_my (void); -VIRTUAL char* instr (const char* big, const char* little); -VIRTUAL bool io_close (IO* io); -VIRTUAL OP* invert (OP* cmd); -VIRTUAL bool is_uni_alnum (U32 c); -VIRTUAL bool is_uni_idfirst (U32 c); -VIRTUAL bool is_uni_alpha (U32 c); -VIRTUAL bool is_uni_space (U32 c); -VIRTUAL bool is_uni_digit (U32 c); -VIRTUAL bool is_uni_upper (U32 c); -VIRTUAL bool is_uni_lower (U32 c); -VIRTUAL bool is_uni_print (U32 c); -VIRTUAL U32 to_uni_upper (U32 c); -VIRTUAL U32 to_uni_title (U32 c); -VIRTUAL U32 to_uni_lower (U32 c); -VIRTUAL bool is_uni_alnum_lc (U32 c); -VIRTUAL bool is_uni_idfirst_lc (U32 c); -VIRTUAL bool is_uni_alpha_lc (U32 c); -VIRTUAL bool is_uni_space_lc (U32 c); -VIRTUAL bool is_uni_digit_lc (U32 c); -VIRTUAL bool is_uni_upper_lc (U32 c); -VIRTUAL bool is_uni_lower_lc (U32 c); -VIRTUAL bool is_uni_print_lc (U32 c); -VIRTUAL U32 to_uni_upper_lc (U32 c); -VIRTUAL U32 to_uni_title_lc (U32 c); -VIRTUAL U32 to_uni_lower_lc (U32 c); -VIRTUAL bool is_utf8_alnum (U8 *p); -VIRTUAL bool is_utf8_idfirst (U8 *p); -VIRTUAL bool is_utf8_alpha (U8 *p); -VIRTUAL bool is_utf8_space (U8 *p); -VIRTUAL bool is_utf8_digit (U8 *p); -VIRTUAL bool is_utf8_upper (U8 *p); -VIRTUAL bool is_utf8_lower (U8 *p); -VIRTUAL bool is_utf8_print (U8 *p); -VIRTUAL bool is_utf8_mark (U8 *p); -VIRTUAL OP* jmaybe (OP* arg); -VIRTUAL I32 keyword (char* d, I32 len); -VIRTUAL void leave_scope (I32 base); -VIRTUAL void lex_end (void); -VIRTUAL void lex_start (SV* line); -VIRTUAL OP* linklist (OP* o); -VIRTUAL OP* list (OP* o); -VIRTUAL OP* listkids (OP* o); -VIRTUAL OP* localize (OP* arg, I32 lexical); -VIRTUAL I32 looks_like_number (SV* sv); -VIRTUAL int magic_clearenv (SV* sv, MAGIC* mg); -VIRTUAL int magic_clear_all_env (SV* sv, MAGIC* mg); -VIRTUAL int magic_clearpack (SV* sv, MAGIC* mg); -VIRTUAL int magic_clearsig (SV* sv, MAGIC* mg); -VIRTUAL int magic_existspack (SV* sv, MAGIC* mg); -VIRTUAL int magic_freeregexp (SV* sv, MAGIC* mg); -VIRTUAL int magic_get (SV* sv, MAGIC* mg); -VIRTUAL int magic_getarylen (SV* sv, MAGIC* mg); -VIRTUAL int magic_getdefelem (SV* sv, MAGIC* mg); -VIRTUAL int magic_getglob (SV* sv, MAGIC* mg); -VIRTUAL int magic_getnkeys (SV* sv, MAGIC* mg); -VIRTUAL int magic_getpack (SV* sv, MAGIC* mg); -VIRTUAL int magic_getpos (SV* sv, MAGIC* mg); -VIRTUAL int magic_getsig (SV* sv, MAGIC* mg); -VIRTUAL int magic_getsubstr (SV* sv, MAGIC* mg); -VIRTUAL int magic_gettaint (SV* sv, MAGIC* mg); -VIRTUAL int magic_getuvar (SV* sv, MAGIC* mg); -VIRTUAL int magic_getvec (SV* sv, MAGIC* mg); -VIRTUAL U32 magic_len (SV* sv, MAGIC* mg); -#ifdef USE_THREADS -VIRTUAL int magic_mutexfree (SV* sv, MAGIC* mg); -#endif /* USE_THREADS */ -VIRTUAL int magic_nextpack (SV* sv, MAGIC* mg, SV* key); -VIRTUAL U32 magic_regdata_cnt (SV* sv, MAGIC* mg); -VIRTUAL int magic_regdatum_get (SV* sv, MAGIC* mg); -VIRTUAL int magic_set (SV* sv, MAGIC* mg); -VIRTUAL int magic_setamagic (SV* sv, MAGIC* mg); -VIRTUAL int magic_setarylen (SV* sv, MAGIC* mg); -VIRTUAL int magic_setbm (SV* sv, MAGIC* mg); -VIRTUAL int magic_setdbline (SV* sv, MAGIC* mg); -#ifdef USE_LOCALE_COLLATE -VIRTUAL int magic_setcollxfrm (SV* sv, MAGIC* mg); -#endif -VIRTUAL int magic_setdefelem (SV* sv, MAGIC* mg); -VIRTUAL int magic_setenv (SV* sv, MAGIC* mg); -VIRTUAL int magic_setfm (SV* sv, MAGIC* mg); -VIRTUAL int magic_setisa (SV* sv, MAGIC* mg); -VIRTUAL int magic_setglob (SV* sv, MAGIC* mg); -VIRTUAL int magic_setmglob (SV* sv, MAGIC* mg); -VIRTUAL int magic_setnkeys (SV* sv, MAGIC* mg); -VIRTUAL int magic_setpack (SV* sv, MAGIC* mg); -VIRTUAL int magic_setpos (SV* sv, MAGIC* mg); -VIRTUAL int magic_setsig (SV* sv, MAGIC* mg); -VIRTUAL int magic_setsubstr (SV* sv, MAGIC* mg); -VIRTUAL int magic_settaint (SV* sv, MAGIC* mg); -VIRTUAL int magic_setuvar (SV* sv, MAGIC* mg); -VIRTUAL int magic_setvec (SV* sv, MAGIC* mg); -VIRTUAL int magic_set_all_env (SV* sv, MAGIC* mg); -VIRTUAL U32 magic_sizepack (SV* sv, MAGIC* mg); -VIRTUAL int magic_wipepack (SV* sv, MAGIC* mg); -VIRTUAL void magicname (char* sym, char* name, I32 namlen); -int main (int argc, char** argv, char** env); -#ifdef MYMALLOC -VIRTUAL MEM_SIZE malloced_size (void *p); -#endif -VIRTUAL void markstack_grow (void); -#ifdef USE_LOCALE_COLLATE -VIRTUAL char* mem_collxfrm (const char* s, STRLEN len, STRLEN* xlen); -#endif -VIRTUAL SV* mess (const char* pat, va_list* args); -VIRTUAL int mg_clear (SV* sv); -VIRTUAL int mg_copy (SV* sv, SV* nsv, const char* key, I32 klen); -VIRTUAL MAGIC* mg_find (SV* sv, int type); -VIRTUAL int mg_free (SV* sv); -VIRTUAL int mg_get (SV* sv); -VIRTUAL U32 mg_length (SV* sv); -VIRTUAL void mg_magical (SV* sv); -VIRTUAL int mg_set (SV* sv); -VIRTUAL I32 mg_size (SV* sv); -VIRTUAL OP* mod (OP* o, I32 type); -VIRTUAL char* moreswitches (char* s); -VIRTUAL OP* my (OP* o); +I32 Perl_do_msgsnd(pTHX_ SV** mark, SV** sp); +#endif +void Perl_do_op_dump(pTHX_ I32 level, PerlIO *file, OP *o); +bool Perl_do_open(pTHX_ GV* gv, char* name, I32 len, int as_raw, int rawmode, int rawperm, PerlIO* supplied_fp); +void Perl_do_pipe(pTHX_ SV* sv, GV* rgv, GV* wgv); +void Perl_do_pmop_dump(pTHX_ I32 level, PerlIO *file, PMOP *pm); +bool Perl_do_print(pTHX_ SV* sv, PerlIO* fp); +OP* Perl_do_readline(pTHX); +bool Perl_do_seek(pTHX_ GV* gv, Off_t pos, int whence); +#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) +I32 Perl_do_semop(pTHX_ SV** mark, SV** sp); +#endif +#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) +I32 Perl_do_shmio(pTHX_ I32 optype, SV** mark, SV** sp); +#endif +void Perl_do_sprintf(pTHX_ SV* sv, I32 len, SV** sarg); +void Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim); +Off_t Perl_do_sysseek(pTHX_ GV* gv, Off_t pos, int whence); +Off_t Perl_do_tell(pTHX_ GV* gv); +I32 Perl_do_trans(pTHX_ SV* sv); +void Perl_do_vecset(pTHX_ SV* sv); +void Perl_do_vop(pTHX_ I32 optype, SV* sv, SV* left, SV* right); +OP* Perl_dofile(pTHX_ OP* term); +void Perl_dounwind(pTHX_ I32 cxix); +I32 Perl_dowantarray(pTHX); +void Perl_dump_all(pTHX); +void Perl_dump_eval(pTHX); +#if defined(DUMP_FDS) +void Perl_dump_fds(pTHX_ char* s); +#endif +void Perl_dump_form(pTHX_ GV* gv); +void Perl_dump_indent(pTHX_ I32 level, PerlIO *file, const char* pat, ...); +#if defined(MYMALLOC) +void Perl_dump_mstats(pTHX_ char* s); +#endif +void Perl_dump_packsubs(pTHX_ HV* stash); +void Perl_dump_sub(pTHX_ GV* gv); +SV* Perl_eval_pv(pTHX_ const char* p, I32 croak_on_error); +I32 Perl_eval_sv(pTHX_ SV* sv, I32 flags); +void Perl_fbm_compile(pTHX_ SV* sv, U32 flags); +char* Perl_fbm_instr(pTHX_ unsigned char* big, unsigned char* bigend, SV* littlesv, U32 flags); +SV* Perl_filter_add(pTHX_ filter_t funcp, SV* datasv); +void Perl_filter_del(pTHX_ filter_t funcp); +I32 Perl_filter_read(pTHX_ int idx, SV* buffer, int maxlen); +char* Perl_find_script(pTHX_ char *scriptname, bool dosearch, char **search_ext, I32 flags); +#if defined(USE_THREADS) +PADOFFSET Perl_find_threadsv(pTHX_ const char *name); +#endif +OP* Perl_fold_constants(pTHX_ OP* arg); +OP* Perl_force_list(pTHX_ OP* arg); +char* Perl_form(pTHX_ const char* pat, ...); +void Perl_free_tmps(pTHX); +OP* Perl_gen_constant_list(pTHX_ OP* o); +AV* Perl_get_av(pTHX_ const char* name, I32 create); +CV* Perl_get_cv(pTHX_ const char* name, I32 create); +HV* Perl_get_hv(pTHX_ const char* name, I32 create); +char* Perl_get_no_modify(pTHX); +char** Perl_get_op_descs(pTHX); +char** Perl_get_op_names(pTHX); +U32* Perl_get_opargs(pTHX); +SV* Perl_get_sv(pTHX_ const char* name, I32 create); +MGVTBL* Perl_get_vtbl(pTHX_ int vtbl_id); +#if !defined(HAS_GETENV_LEN) +char* Perl_getenv_len(pTHX_ char* key, unsigned long *len); +#endif +void Perl_gp_free(pTHX_ GV* gv); +GP* Perl_gp_ref(pTHX_ GP* gp); +GV* Perl_gv_AVadd(pTHX_ GV* gv); +GV* Perl_gv_HVadd(pTHX_ GV* gv); +GV* Perl_gv_IOadd(pTHX_ GV* gv); +GV* Perl_gv_autoload4(pTHX_ HV* stash, const char* name, STRLEN len, I32 method); +void Perl_gv_check(pTHX_ HV* stash); +void Perl_gv_dump(pTHX_ GV* gv); +void Perl_gv_efullname(pTHX_ SV* sv, GV* gv); +void Perl_gv_efullname3(pTHX_ SV* sv, GV* gv, const char* prefix); +GV* Perl_gv_fetchfile(pTHX_ const char* name); +GV* Perl_gv_fetchmeth(pTHX_ HV* stash, const char* name, STRLEN len, I32 level); +GV* Perl_gv_fetchmethod(pTHX_ HV* stash, const char* name); +GV* Perl_gv_fetchmethod_autoload(pTHX_ HV* stash, const char* name, I32 autoload); +GV* Perl_gv_fetchpv(pTHX_ const char* name, I32 add, I32 sv_type); +void Perl_gv_fullname(pTHX_ SV* sv, GV* gv); +void Perl_gv_fullname3(pTHX_ SV* sv, GV* gv, const char* prefix); +void Perl_gv_init(pTHX_ GV* gv, HV* stash, const char* name, STRLEN len, int multi); +HV* Perl_gv_stashpv(pTHX_ const char* name, I32 create); +HV* Perl_gv_stashpvn(pTHX_ const char* name, U32 namelen, I32 create); +HV* Perl_gv_stashsv(pTHX_ SV* sv, I32 create); +void Perl_hv_clear(pTHX_ HV* tb); +void Perl_hv_delayfree_ent(pTHX_ HV* hv, HE* entry); +SV* Perl_hv_delete(pTHX_ HV* tb, const char* key, U32 klen, I32 flags); +SV* Perl_hv_delete_ent(pTHX_ HV* tb, SV* key, I32 flags, U32 hash); +bool Perl_hv_exists(pTHX_ HV* tb, const char* key, U32 klen); +bool Perl_hv_exists_ent(pTHX_ HV* tb, SV* key, U32 hash); +SV** Perl_hv_fetch(pTHX_ HV* tb, const char* key, U32 klen, I32 lval); +HE* Perl_hv_fetch_ent(pTHX_ HV* tb, SV* key, I32 lval, U32 hash); +void Perl_hv_free_ent(pTHX_ HV* hv, HE* entry); +I32 Perl_hv_iterinit(pTHX_ HV* tb); +char* Perl_hv_iterkey(pTHX_ HE* entry, I32* retlen); +SV* Perl_hv_iterkeysv(pTHX_ HE* entry); +HE* Perl_hv_iternext(pTHX_ HV* tb); +SV* Perl_hv_iternextsv(pTHX_ HV* hv, char** key, I32* retlen); +SV* Perl_hv_iterval(pTHX_ HV* tb, HE* entry); +void Perl_hv_ksplit(pTHX_ HV* hv, IV newmax); +void Perl_hv_magic(pTHX_ HV* hv, GV* gv, int how); +SV** Perl_hv_store(pTHX_ HV* tb, const char* key, U32 klen, SV* val, U32 hash); +HE* Perl_hv_store_ent(pTHX_ HV* tb, SV* key, SV* val, U32 hash); +void Perl_hv_undef(pTHX_ HV* tb); +I32 Perl_ibcmp(pTHX_ const char* a, const char* b, I32 len); +I32 Perl_ibcmp_locale(pTHX_ const char* a, const char* b, I32 len); +I32 Perl_ingroup(pTHX_ I32 testgid, I32 effective); +int Perl_init_i18nl10n(pTHX_ int printwarn); +int Perl_init_i18nl14n(pTHX_ int printwarn); +void Perl_init_stacks(pTHX_ ARGSproto); +char* Perl_instr(pTHX_ const char* big, const char* little); +U32 Perl_intro_my(pTHX); +OP* Perl_invert(pTHX_ OP* cmd); +bool Perl_io_close(pTHX_ IO* io); +bool Perl_is_uni_alnum(pTHX_ U32 c); +bool Perl_is_uni_alnum_lc(pTHX_ U32 c); +bool Perl_is_uni_alpha(pTHX_ U32 c); +bool Perl_is_uni_alpha_lc(pTHX_ U32 c); +bool Perl_is_uni_digit(pTHX_ U32 c); +bool Perl_is_uni_digit_lc(pTHX_ U32 c); +bool Perl_is_uni_idfirst(pTHX_ U32 c); +bool Perl_is_uni_idfirst_lc(pTHX_ U32 c); +bool Perl_is_uni_lower(pTHX_ U32 c); +bool Perl_is_uni_lower_lc(pTHX_ U32 c); +bool Perl_is_uni_print(pTHX_ U32 c); +bool Perl_is_uni_print_lc(pTHX_ U32 c); +bool Perl_is_uni_space(pTHX_ U32 c); +bool Perl_is_uni_space_lc(pTHX_ U32 c); +bool Perl_is_uni_upper(pTHX_ U32 c); +bool Perl_is_uni_upper_lc(pTHX_ U32 c); +bool Perl_is_utf8_alnum(pTHX_ U8 *p); +bool Perl_is_utf8_alpha(pTHX_ U8 *p); +bool Perl_is_utf8_digit(pTHX_ U8 *p); +bool Perl_is_utf8_idfirst(pTHX_ U8 *p); +bool Perl_is_utf8_lower(pTHX_ U8 *p); +bool Perl_is_utf8_mark(pTHX_ U8 *p); +bool Perl_is_utf8_print(pTHX_ U8 *p); +bool Perl_is_utf8_space(pTHX_ U8 *p); +bool Perl_is_utf8_upper(pTHX_ U8 *p); +OP* Perl_jmaybe(pTHX_ OP* arg); +I32 Perl_keyword(pTHX_ char* d, I32 len); +void Perl_leave_scope(pTHX_ I32 base); +void Perl_lex_end(pTHX); +void Perl_lex_start(pTHX_ SV* line); +OP* Perl_linklist(pTHX_ OP* o); +OP* Perl_list(pTHX_ OP* o); +OP* Perl_listkids(pTHX_ OP* o); +OP* Perl_localize(pTHX_ OP* arg, I32 lexical); +I32 Perl_looks_like_number(pTHX_ SV* sv); +int Perl_magic_clear_all_env(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_clearenv(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_clearpack(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_clearsig(pTHX_ SV* sv, MAGIC* mg); +void Perl_magic_dump(pTHX_ MAGIC *mg); +int Perl_magic_existspack(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_freeregexp(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_get(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getarylen(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getdefelem(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getglob(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getnkeys(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getpack(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getpos(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getsig(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getsubstr(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_gettaint(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getuvar(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_getvec(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_killbackrefs(pTHX_ SV *sv, MAGIC *mg); +U32 Perl_magic_len(pTHX_ SV* sv, MAGIC* mg); +#if defined(USE_THREADS) +int Perl_magic_mutexfree(pTHX_ SV* sv, MAGIC* mg); +#endif +int Perl_magic_nextpack(pTHX_ SV* sv, MAGIC* mg, SV* key); +U32 Perl_magic_regdata_cnt(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_regdatum_get(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_set(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_set_all_env(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setamagic(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setarylen(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setbm(pTHX_ SV* sv, MAGIC* mg); +#if defined(USE_LOCALE_COLLATE) +int Perl_magic_setcollxfrm(pTHX_ SV* sv, MAGIC* mg); +#endif +int Perl_magic_setdbline(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setdefelem(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setenv(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setfm(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setglob(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setisa(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setmglob(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setnkeys(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setpack(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setpos(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setsig(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setsubstr(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_settaint(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setuvar(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_setvec(pTHX_ SV* sv, MAGIC* mg); +U32 Perl_magic_sizepack(pTHX_ SV* sv, MAGIC* mg); +int Perl_magic_wipepack(pTHX_ SV* sv, MAGIC* mg); +void Perl_magicname(pTHX_ char* sym, char* name, I32 namlen); +int main(int argc, char** argv, char** env); +#if defined(MYMALLOC) +Malloc_t Perl_malloc(pTHX_ MEM_SIZE nbytes); +#endif +#if defined(MYMALLOC) +MEM_SIZE Perl_malloced_size(pTHX_ void *p); +#endif +void Perl_markstack_grow(pTHX); +#if defined(USE_LOCALE_COLLATE) +char* Perl_mem_collxfrm(pTHX_ const char* s, STRLEN len, STRLEN* xlen); +#endif +SV* Perl_mess(pTHX_ const char* pat, va_list* args); +#if defined(MYMALLOC) +Free_t Perl_mfree(pTHX_ Malloc_t where); +#endif +int Perl_mg_clear(pTHX_ SV* sv); +int Perl_mg_copy(pTHX_ SV* sv, SV* nsv, const char* key, I32 klen); +MAGIC* Perl_mg_find(pTHX_ SV* sv, int type); +int Perl_mg_free(pTHX_ SV* sv); +int Perl_mg_get(pTHX_ SV* sv); +U32 Perl_mg_length(pTHX_ SV* sv); +void Perl_mg_magical(pTHX_ SV* sv); +int Perl_mg_set(pTHX_ SV* sv); +I32 Perl_mg_size(pTHX_ SV* sv); +OP* Perl_mod(pTHX_ OP* o, I32 type); +char* Perl_moreswitches(pTHX_ char* s); +OP* Perl_my(pTHX_ OP* o); #if !defined(HAS_BCOPY) || !defined(HAS_SAFE_BCOPY) -VIRTUAL char* my_bcopy (const char* from, char* to, I32 len); +char* Perl_my_bcopy(pTHX_ const char* from, char* to, I32 len); #endif #if !defined(HAS_BZERO) && !defined(HAS_MEMSET) -VIRTUAL char* my_bzero (char* loc, I32 len); +char* Perl_my_bzero(pTHX_ char* loc, I32 len); +#endif +#if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) +I32 Perl_my_chsize(pTHX_ int fd, Off_t length); +#endif +void Perl_my_exit(pTHX_ U32 status) __attribute__((noreturn)); +void Perl_my_failure_exit(pTHX) __attribute__((noreturn)); +I32 Perl_my_fflush_all(pTHX); +#if defined(MYSWAP) +long Perl_my_htonl(pTHX_ long l); #endif -VIRTUAL void my_exit (U32 status) __attribute__((noreturn)); -VIRTUAL void my_failure_exit (void) __attribute__((noreturn)); -VIRTUAL I32 my_fflush_all (void); -VIRTUAL I32 my_lstat (ARGSproto); +I32 Perl_my_lstat(pTHX_ ARGSproto); #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP) -VIRTUAL I32 my_memcmp (const char* s1, const char* s2, I32 len); +I32 Perl_my_memcmp(pTHX_ const char* s1, const char* s2, I32 len); #endif #if !defined(HAS_MEMSET) -VIRTUAL void* my_memset (char* loc, I32 ch, I32 len); -#endif -#ifndef PERL_OBJECT -VIRTUAL I32 my_pclose (PerlIO* ptr); -VIRTUAL PerlIO* my_popen (char* cmd, char* mode); -#endif -VIRTUAL void my_setenv (char* nam, char* val); -VIRTUAL I32 my_stat (ARGSproto); -#ifdef MYSWAP -VIRTUAL short my_swap (short s); -VIRTUAL long my_htonl (long l); -VIRTUAL long my_ntohl (long l); -#endif -VIRTUAL void my_unexec (void); -VIRTUAL OP* newANONLIST (OP* o); -VIRTUAL OP* newANONHASH (OP* o); -VIRTUAL OP* newANONSUB (I32 floor, OP* proto, OP* block); -VIRTUAL OP* newASSIGNOP (I32 flags, OP* left, I32 optype, OP* right); -VIRTUAL OP* newCONDOP (I32 flags, OP* expr, OP* trueop, OP* falseop); -VIRTUAL void newCONSTSUB (HV* stash, char* name, SV* sv); -VIRTUAL void newFORM (I32 floor, OP* o, OP* block); -VIRTUAL OP* newFOROP (I32 flags, char* label, line_t forline, OP* sclr, OP* expr, OP*block, OP*cont); -VIRTUAL OP* newLOGOP (I32 optype, I32 flags, OP* left, OP* right); -VIRTUAL OP* newLOOPEX (I32 type, OP* label); -VIRTUAL OP* newLOOPOP (I32 flags, I32 debuggable, OP* expr, OP* block); -VIRTUAL OP* newNULLLIST (void); -VIRTUAL OP* newOP (I32 optype, I32 flags); -VIRTUAL void newPROG (OP* o); -VIRTUAL OP* newRANGE (I32 flags, OP* left, OP* right); -VIRTUAL OP* newSLICEOP (I32 flags, OP* subscript, OP* listop); -VIRTUAL OP* newSTATEOP (I32 flags, char* label, OP* o); -VIRTUAL CV* newSUB (I32 floor, OP* o, OP* proto, OP* block); -VIRTUAL CV* newXS (char* name, void (*subaddr)(CV* cv _CPERLproto), char* filename); -VIRTUAL AV* newAV (void); -VIRTUAL OP* newAVREF (OP* o); -VIRTUAL OP* newBINOP (I32 type, I32 flags, OP* first, OP* last); -VIRTUAL OP* newCVREF (I32 flags, OP* o); -VIRTUAL OP* newGVOP (I32 type, I32 flags, GV* gv); -VIRTUAL GV* newGVgen (char* pack); -VIRTUAL OP* newGVREF (I32 type, OP* o); -VIRTUAL OP* newHVREF (OP* o); -VIRTUAL HV* newHV (void); -VIRTUAL HV* newHVhv (HV* hv); -VIRTUAL IO* newIO (void); -VIRTUAL OP* newLISTOP (I32 type, I32 flags, OP* first, OP* last); -VIRTUAL OP* newPMOP (I32 type, I32 flags); -VIRTUAL OP* newPVOP (I32 type, I32 flags, char* pv); -VIRTUAL SV* newRV (SV* pref); -VIRTUAL SV* newRV_noinc (SV *sv); -VIRTUAL SV* newSV (STRLEN len); -VIRTUAL OP* newSVREF (OP* o); -VIRTUAL OP* newSVOP (I32 type, I32 flags, SV* sv); -VIRTUAL SV* newSViv (IV i); -VIRTUAL SV* newSVnv (double n); -VIRTUAL SV* newSVpv (const char* s, STRLEN len); -VIRTUAL SV* newSVpvn (const char *s, STRLEN len); -VIRTUAL SV* newSVpvf (const char* pat, ...); -VIRTUAL SV* newSVrv (SV* rv, const char* classname); -VIRTUAL SV* newSVsv (SV* old); -VIRTUAL OP* newUNOP (I32 type, I32 flags, OP* first); -VIRTUAL OP* newWHILEOP (I32 flags, I32 debuggable, LOOP* loop, - I32 whileline, OP* expr, OP* block, OP* cont); -#ifdef USE_THREADS -VIRTUAL struct perl_thread * new_struct_thread (struct perl_thread *t); -#endif -VIRTUAL PERL_SI * new_stackinfo (I32 stitems, I32 cxitems); -VIRTUAL PerlIO* nextargv (GV* gv); -VIRTUAL char* ninstr (const char* big, const char* bigend, const char* little, const char* lend); -VIRTUAL OP* oopsCV (OP* o); -VIRTUAL void op_free (OP* arg); -VIRTUAL void package (OP* o); -VIRTUAL PADOFFSET pad_alloc (I32 optype, U32 tmptype); -VIRTUAL PADOFFSET pad_allocmy (char* name); -VIRTUAL PADOFFSET pad_findmy (char* name); -VIRTUAL OP* oopsAV (OP* o); -VIRTUAL OP* oopsHV (OP* o); -VIRTUAL void pad_leavemy (I32 fill); -VIRTUAL SV* pad_sv (PADOFFSET po); -VIRTUAL void pad_free (PADOFFSET po); -VIRTUAL void pad_reset (void); -VIRTUAL void pad_swipe (PADOFFSET po); -VIRTUAL void peep (OP* o); -#ifndef PERL_OBJECT -PerlInterpreter* perl_alloc (void); -#endif -#ifdef PERL_OBJECT -VIRTUAL void perl_atexit (void(*fn)(CPerlObj *, void *), void* ptr); -#else -void perl_atexit (void(*fn)(void *), void*); -#endif -VIRTUAL I32 perl_call_argv (const char* sub_name, I32 flags, char** argv); -VIRTUAL I32 perl_call_method (const char* methname, I32 flags); -VIRTUAL I32 perl_call_pv (const char* sub_name, I32 flags); -VIRTUAL I32 perl_call_sv (SV* sv, I32 flags); -#ifdef PERL_OBJECT -VIRTUAL void perl_construct (void); -VIRTUAL void perl_destruct (void); -#else -void perl_construct (PerlInterpreter* sv_interp); -void perl_destruct (PerlInterpreter* sv_interp); -#endif -VIRTUAL SV* perl_eval_pv (const char* p, I32 croak_on_error); -VIRTUAL I32 perl_eval_sv (SV* sv, I32 flags); -#ifdef PERL_OBJECT -VIRTUAL void perl_free (void); -#else -void perl_free (PerlInterpreter* sv_interp); -#endif -VIRTUAL SV* perl_get_sv (const char* name, I32 create); -VIRTUAL AV* perl_get_av (const char* name, I32 create); -VIRTUAL HV* perl_get_hv (const char* name, I32 create); -VIRTUAL CV* perl_get_cv (const char* name, I32 create); -VIRTUAL int perl_init_i18nl10n (int printwarn); -VIRTUAL int perl_init_i18nl14n (int printwarn); -VIRTUAL void perl_new_collate (const char* newcoll); -VIRTUAL void perl_new_ctype (const char* newctype); -VIRTUAL void perl_new_numeric (const char* newcoll); -VIRTUAL void perl_set_numeric_local (void); -VIRTUAL void perl_set_numeric_standard (void); -#ifdef PERL_OBJECT -VIRTUAL int perl_parse (void(*xsinit)(CPerlObj*), int argc, char** argv, char** env); -#else -int perl_parse (PerlInterpreter* sv_interp, void(*xsinit)(void), int argc, char** argv, char** env); -#endif -VIRTUAL void perl_require_pv (const char* pv); -#define perl_requirepv perl_require_pv -#ifdef PERL_OBJECT -VIRTUAL int perl_run (void); -#else -int perl_run (PerlInterpreter* sv_interp); -#endif -VIRTUAL void pidgone (int pid, int status); -VIRTUAL void pmflag (U16* pmfl, int ch); -VIRTUAL OP* pmruntime (OP* pm, OP* expr, OP* repl); -VIRTUAL OP* pmtrans (OP* o, OP* expr, OP* repl); -VIRTUAL OP* pop_return (void); -VIRTUAL void pop_scope (void); -VIRTUAL OP* prepend_elem (I32 optype, OP* head, OP* tail); -VIRTUAL void push_return (OP* o); -VIRTUAL void push_scope (void); -VIRTUAL OP* ref (OP* o, I32 type); -VIRTUAL OP* refkids (OP* o, I32 type); -VIRTUAL void regdump (regexp* r); -VIRTUAL I32 pregexec (regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, U32 nosave); -VIRTUAL void pregfree (struct regexp* r); -VIRTUAL regexp* pregcomp (char* exp, char* xend, PMOP* pm); -VIRTUAL I32 regexec_flags (regexp* prog, char* stringarg, char* strend, - char* strbeg, I32 minend, SV* screamer, - void* data, U32 flags); -VIRTUAL regnode* regnext (regnode* p); -VIRTUAL void regprop (SV* sv, regnode* o); -VIRTUAL void repeatcpy (char* to, const char* from, I32 len, I32 count); -VIRTUAL char* rninstr (const char* big, const char* bigend, const char* little, const char* lend); -VIRTUAL Sighandler_t rsignal (int i, Sighandler_t t); -VIRTUAL int rsignal_restore (int i, Sigsave_t* t); -VIRTUAL int rsignal_save (int i, Sighandler_t t1, Sigsave_t* t2); -VIRTUAL Sighandler_t rsignal_state (int i); -VIRTUAL void rxres_free (void** rsp); -VIRTUAL void rxres_restore (void** rsp, REGEXP* prx); -VIRTUAL void rxres_save (void** rsp, REGEXP* prx); -#ifndef HAS_RENAME -VIRTUAL I32 same_dirent (char* a, char* b); -#endif -VIRTUAL char* savepv (const char* sv); -VIRTUAL char* savepvn (const char* sv, I32 len); -VIRTUAL void savestack_grow (void); -VIRTUAL void save_aelem (AV* av, I32 idx, SV **sptr); -VIRTUAL I32 save_alloc (I32 size, I32 pad); -VIRTUAL void save_aptr (AV** aptr); -VIRTUAL AV* save_ary (GV* gv); -VIRTUAL void save_clearsv (SV** svp); -VIRTUAL void save_delete (HV* hv, char* key, I32 klen); -#ifndef titan /* TitanOS cc can't handle this */ -#ifdef PERL_OBJECT -typedef void (CPerlObj::*DESTRUCTORFUNC) (void*); -VIRTUAL void save_destructor (DESTRUCTORFUNC f, void* p); -#else -void save_destructor (void (*f)(void*), void* p); -#endif -#endif /* titan */ -VIRTUAL void save_freesv (SV* sv); -VIRTUAL void save_freeop (OP* o); -VIRTUAL void save_freepv (char* pv); -VIRTUAL void save_generic_svref (SV** sptr); -VIRTUAL void save_gp (GV* gv, I32 empty); -VIRTUAL HV* save_hash (GV* gv); -VIRTUAL void save_helem (HV* hv, SV *key, SV **sptr); -VIRTUAL void save_hints (void); -VIRTUAL void save_hptr (HV** hptr); -VIRTUAL void save_I16 (I16* intp); -VIRTUAL void save_I32 (I32* intp); -VIRTUAL void save_int (int* intp); -VIRTUAL void save_item (SV* item); -VIRTUAL void save_iv (IV* iv); -VIRTUAL void save_list (SV** sarg, I32 maxsarg); -VIRTUAL void save_long (long* longp); -VIRTUAL void save_nogv (GV* gv); -VIRTUAL void save_op (void); -VIRTUAL SV* save_scalar (GV* gv); -VIRTUAL void save_pptr (char** pptr); -VIRTUAL void save_re_context (void); -VIRTUAL void save_sptr (SV** sptr); -VIRTUAL SV* save_svref (SV** sptr); -VIRTUAL SV** save_threadsv (PADOFFSET i); -VIRTUAL OP* sawparens (OP* o); -VIRTUAL OP* scalar (OP* o); -VIRTUAL OP* scalarkids (OP* o); -VIRTUAL OP* scalarseq (OP* o); -VIRTUAL OP* scalarvoid (OP* o); -VIRTUAL UV scan_bin (char* start, I32 len, I32* retlen); -VIRTUAL UV scan_hex (char* start, I32 len, I32* retlen); -VIRTUAL char* scan_num (char* s); -VIRTUAL UV scan_oct (char* start, I32 len, I32* retlen); -VIRTUAL OP* scope (OP* o); -VIRTUAL char* screaminstr (SV* bigsv, SV* littlesv, I32 start_shift, I32 end_shift, I32 *state, I32 last); -#ifndef VMS -VIRTUAL I32 setenv_getix (char* nam); -#endif -VIRTUAL void setdefout (GV* gv); -VIRTUAL char* sharepvn (const char* sv, I32 len, U32 hash); -VIRTUAL HEK* share_hek (const char* sv, I32 len, U32 hash); -VIRTUAL Signal_t sighandler (int sig); -VIRTUAL SV** stack_grow (SV** sp, SV**p, int n); -VIRTUAL I32 start_subparse (I32 is_format, U32 flags); -VIRTUAL void sub_crush_depth (CV* cv); -VIRTUAL bool sv_2bool (SV* sv); -VIRTUAL CV* sv_2cv (SV* sv, HV** st, GV** gvp, I32 lref); -VIRTUAL IO* sv_2io (SV* sv); -VIRTUAL IV sv_2iv (SV* sv); -VIRTUAL SV* sv_2mortal (SV* sv); -VIRTUAL double sv_2nv (SV* sv); -VIRTUAL char* sv_2pv (SV* sv, STRLEN* lp); -VIRTUAL UV sv_2uv (SV* sv); -VIRTUAL IV sv_iv (SV* sv); -VIRTUAL UV sv_uv (SV* sv); -VIRTUAL double sv_nv (SV* sv); -VIRTUAL char * sv_pvn (SV *sv, STRLEN *len); -VIRTUAL I32 sv_true (SV *sv); -VIRTUAL void sv_add_arena (char* ptr, U32 size, U32 flags); -VIRTUAL int sv_backoff (SV* sv); -VIRTUAL SV* sv_bless (SV* sv, HV* stash); -VIRTUAL void sv_catpvf (SV* sv, const char* pat, ...); -VIRTUAL void sv_catpv (SV* sv, const char* ptr); -VIRTUAL void sv_catpvn (SV* sv, const char* ptr, STRLEN len); -VIRTUAL void sv_catsv (SV* dsv, SV* ssv); -VIRTUAL void sv_chop (SV* sv, char* ptr); -VIRTUAL void sv_clean_all (void); -VIRTUAL void sv_clean_objs (void); -VIRTUAL void sv_clear (SV* sv); -VIRTUAL I32 sv_cmp (SV* sv1, SV* sv2); -VIRTUAL I32 sv_cmp_locale (SV* sv1, SV* sv2); -#ifdef USE_LOCALE_COLLATE -VIRTUAL char* sv_collxfrm (SV* sv, STRLEN* nxp); -#endif -VIRTUAL OP* sv_compile_2op (SV* sv, OP** startp, char* code, AV** avp); -VIRTUAL void sv_dec (SV* sv); -VIRTUAL void sv_dump (SV* sv); -VIRTUAL bool sv_derived_from (SV* sv, const char* name); -VIRTUAL I32 sv_eq (SV* sv1, SV* sv2); -VIRTUAL void sv_free (SV* sv); -VIRTUAL void sv_free_arenas (void); -VIRTUAL char* sv_gets (SV* sv, PerlIO* fp, I32 append); -VIRTUAL char* sv_grow (SV* sv, STRLEN newlen); -VIRTUAL void sv_inc (SV* sv); -VIRTUAL void sv_insert (SV* bigsv, STRLEN offset, STRLEN len, char* little, STRLEN littlelen); -VIRTUAL int sv_isa (SV* sv, const char* name); -VIRTUAL int sv_isobject (SV* sv); -VIRTUAL STRLEN sv_len (SV* sv); -VIRTUAL STRLEN sv_len_utf8 (SV* sv); -VIRTUAL void sv_magic (SV* sv, SV* obj, int how, const char* name, I32 namlen); -VIRTUAL SV* sv_mortalcopy (SV* oldsv); -VIRTUAL SV* sv_newmortal (void); -VIRTUAL SV* sv_newref (SV* sv); -VIRTUAL char* sv_peek (SV* sv); -VIRTUAL void sv_pos_u2b (SV* sv, I32* offsetp, I32* lenp); -VIRTUAL void sv_pos_b2u (SV* sv, I32* offsetp); -VIRTUAL char* sv_pvn_force (SV* sv, STRLEN* lp); -VIRTUAL char* sv_reftype (SV* sv, int ob); -VIRTUAL void sv_replace (SV* sv, SV* nsv); -VIRTUAL void sv_report_used (void); -VIRTUAL void sv_reset (char* s, HV* stash); -VIRTUAL void sv_setpvf (SV* sv, const char* pat, ...); -VIRTUAL void sv_setiv (SV* sv, IV num); -VIRTUAL void sv_setpviv (SV* sv, IV num); -VIRTUAL void sv_setuv (SV* sv, UV num); -VIRTUAL void sv_setnv (SV* sv, double num); -VIRTUAL SV* sv_setref_iv (SV* rv, const char* classname, IV iv); -VIRTUAL SV* sv_setref_nv (SV* rv, const char* classname, double nv); -VIRTUAL SV* sv_setref_pv (SV* rv, const char* classname, void* pv); -VIRTUAL SV* sv_setref_pvn (SV* rv, const char* classname, char* pv, STRLEN n); -VIRTUAL void sv_setpv (SV* sv, const char* ptr); -VIRTUAL void sv_setpvn (SV* sv, const char* ptr, STRLEN len); -VIRTUAL void sv_setsv (SV* dsv, SV* ssv); -VIRTUAL void sv_taint (SV* sv); -VIRTUAL bool sv_tainted (SV* sv); -VIRTUAL int sv_unmagic (SV* sv, int type); -VIRTUAL void sv_unref (SV* sv); -VIRTUAL void sv_untaint (SV* sv); -VIRTUAL bool sv_upgrade (SV* sv, U32 mt); -VIRTUAL void sv_usepvn (SV* sv, char* ptr, STRLEN len); -VIRTUAL void sv_vcatpvfn (SV* sv, const char* pat, STRLEN patlen, - va_list* args, SV** svargs, I32 svmax, - bool *used_locale); -VIRTUAL void sv_vsetpvfn (SV* sv, const char* pat, STRLEN patlen, - va_list* args, SV** svargs, I32 svmax, - bool *used_locale); -VIRTUAL SV* swash_init (char* pkg, char* name, SV* listsv, I32 minbits, I32 none); -VIRTUAL UV swash_fetch (SV *sv, U8 *ptr); -VIRTUAL void taint_env (void); -VIRTUAL void taint_proper (const char* f, char* s); -VIRTUAL UV to_utf8_lower (U8 *p); -VIRTUAL UV to_utf8_upper (U8 *p); -VIRTUAL UV to_utf8_title (U8 *p); -#ifdef UNLINK_ALL_VERSIONS -VIRTUAL I32 unlnk (char* f); -#endif -#ifdef USE_THREADS -VIRTUAL void unlock_condpair (void* svv); -#endif -VIRTUAL void unsharepvn (const char* sv, I32 len, U32 hash); -VIRTUAL void unshare_hek (HEK* hek); -VIRTUAL void utilize (int aver, I32 floor, OP* version, OP* id, OP* arg); -VIRTUAL U8* utf16_to_utf8 (U16* p, U8 *d, I32 bytelen); -VIRTUAL U8* utf16_to_utf8_reversed (U16* p, U8 *d, I32 bytelen); -VIRTUAL I32 utf8_distance (U8 *a, U8 *b); -VIRTUAL U8* utf8_hop (U8 *s, I32 off); -VIRTUAL UV utf8_to_uv (U8 *s, I32* retlen); -VIRTUAL U8* uv_to_utf8 (U8 *d, UV uv); -VIRTUAL void vivify_defelem (SV* sv); -VIRTUAL void vivify_ref (SV* sv, U32 to_what); -VIRTUAL I32 wait4pid (int pid, int* statusp, int flags); -VIRTUAL void warn (const char* pat,...); -VIRTUAL void warner (U32 err, const char* pat,...); -VIRTUAL void watch (char** addr); -VIRTUAL I32 whichsig (char* sig); -VIRTUAL int yyerror (char* s); -#ifdef USE_PURE_BISON -# define PERL_YYLEX_PARAM_DECL YYSTYPE *lvalp, int *lcharp -#else -# define PERL_YYLEX_PARAM_DECL void -#endif -VIRTUAL int yylex (PERL_YYLEX_PARAM_DECL); -VIRTUAL int yyparse (void); -VIRTUAL int yywarn (char* s); - -VIRTUAL Malloc_t safesysmalloc (MEM_SIZE nbytes); -VIRTUAL Malloc_t safesyscalloc (MEM_SIZE elements, MEM_SIZE size); -VIRTUAL Malloc_t safesysrealloc (Malloc_t where, MEM_SIZE nbytes); -VIRTUAL Free_t safesysfree (Malloc_t where); - -#ifdef LEAKTEST -VIRTUAL Malloc_t safexmalloc (I32 x, MEM_SIZE size); -VIRTUAL Malloc_t safexcalloc (I32 x, MEM_SIZE elements, MEM_SIZE size); -VIRTUAL Malloc_t safexrealloc (Malloc_t where, MEM_SIZE size); -VIRTUAL void safexfree (Malloc_t where); -#endif - -#ifdef PERL_GLOBAL_STRUCT -VIRTUAL struct perl_vars *Perl_GetVars (void); -#endif - -#ifdef PERL_OBJECT -protected: -void hsplit (HV *hv); -void hfreeentries (HV *hv); -void more_he (void); -HE* new_he (void); -void del_he (HE *p); -HEK *save_hek (const char *str, I32 len, U32 hash); -SV *mess_alloc (void); -void gv_init_sv (GV *gv, I32 sv_type); -SV *save_scalar_at (SV **sptr); -IV asIV (SV* sv); -UV asUV (SV* sv); -SV *more_sv (void); -void more_xiv (void); -void more_xnv (void); -void more_xpv (void); -void more_xrv (void); -XPVIV *new_xiv (void); -XPVNV *new_xnv (void); -XPV *new_xpv (void); -XRV *new_xrv (void); -void del_xiv (XPVIV* p); -void del_xnv (XPVNV* p); -void del_xpv (XPV* p); -void del_xrv (XRV* p); -void sv_unglob (SV* sv); -I32 avhv_index_sv (SV* sv); - -void do_report_used (SV *sv); -void do_clean_objs (SV *sv); -void do_clean_named_objs (SV *sv); -void do_clean_all (SV *sv); -void not_a_number (SV *sv); -void* my_safemalloc (MEM_SIZE size); - -typedef void (CPerlObj::*SVFUNC) (SV*); -void visit (SVFUNC f); - -typedef I32 (CPerlObj::*SVCOMPARE) (SV*, SV*); -void qsortsv (SV ** array, size_t num_elts, SVCOMPARE f); -I32 sortcv (SV *a, SV *b); -void save_magic (I32 mgs_ix, SV *sv); -int magic_methpack (SV *sv, MAGIC *mg, char *meth); -int magic_methcall (SV *sv, MAGIC *mg, char *meth, I32 f, int n, SV *val); -int magic_methcall (MAGIC *mg, char *meth, I32 flags, int n, SV *val); -OP * doform (CV *cv, GV *gv, OP *retop); -void doencodes (SV* sv, char* s, I32 len); -SV* refto (SV* sv); -U32 seed (void); -OP *docatch (OP *o); -void *docatch_body (va_list args); -void *perl_parse_body (va_list args); -void *perl_run_body (va_list args); -void *perl_call_body (va_list args); -void perl_call_xbody (OP *myop, int is_eval); -void *call_list_body (va_list args); -OP *dofindlabel (OP *o, char *label, OP **opstack, OP **oplimit); -void doparseform (SV *sv); -I32 dopoptoeval (I32 startingblock); -I32 dopoptolabel (char *label); -I32 dopoptoloop (I32 startingblock); -I32 dopoptosub (I32 startingblock); -I32 dopoptosub_at (PERL_CONTEXT* cxstk, I32 startingblock); -void free_closures (void); -void save_lines (AV *array, SV *sv); -OP *doeval (int gimme, OP** startop); -PerlIO *doopen_pmc (const char *name, const char *mode); -I32 sv_ncmp (SV *a, SV *b); -I32 sv_i_ncmp (SV *a, SV *b); -I32 amagic_ncmp (SV *a, SV *b); -I32 amagic_i_ncmp (SV *a, SV *b); -I32 amagic_cmp (SV *str1, SV *str2); -I32 amagic_cmp_locale (SV *str1, SV *str2); - -SV *mul128 (SV *sv, U8 m); -SV *is_an_int (char *s, STRLEN l); -int div128 (SV *pnum, bool *done); -void check_uni (void); -void force_next (I32 type); -char *force_version (char *start); -char *force_word (char *start, int token, int check_keyword, int allow_pack, int allow_tick); -SV *tokeq (SV *sv); -char *scan_const (char *start); -char *scan_formline (char *s); -char *scan_heredoc (char *s); -char *scan_ident (char *s, char *send, char *dest, STRLEN destlen, I32 ck_uni); -char *scan_inputsymbol (char *start); -char *scan_pat (char *start, I32 type); -char *scan_str (char *start); -char *scan_subst (char *start); -char *scan_trans (char *start); -char *scan_word (char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp); -char *skipspace (char *s); -void checkcomma (char *s, char *name, char *what); -void force_ident (char *s, int kind); -void incline (char *s); -int intuit_method (char *s, GV *gv); -int intuit_more (char *s); -I32 lop (I32 f, expectation x, char *s); -void missingterm (char *s); -void no_op (char *what, char *s); -void set_csh (void); -I32 sublex_done (void); -I32 sublex_push (void); -I32 sublex_start (void); -#ifdef CRIPPLED_CC -int uni (I32 f, char *s); -#endif -char * filter_gets (SV *sv, PerlIO *fp, STRLEN append); -SV *new_constant (char *s, STRLEN len, char *key, SV *sv, SV *pv, char *type); -int ao (int toketype); -void depcom (void); -#ifdef WIN32 -I32 win32_textfilter (int idx, SV *sv, int maxlen); -#endif -char* incl_perldb (void); -SV *isa_lookup (HV *stash, const char *name, int len, int level); -CV *get_db_sub (SV **svp, CV *cv); -I32 list_assignment (OP *o); -void bad_type (I32 n, char *t, char *name, OP *kid); -OP *modkids (OP *o, I32 type); -void no_bareword_allowed (OP *o); -OP *no_fh_allowed (OP *o); -OP *scalarboolean (OP *o); -OP *too_few_arguments (OP *o, char* name); -OP *too_many_arguments (OP *o, char* name); -void null (OP* o); -PADOFFSET pad_findlex (char* name, PADOFFSET newoff, U32 seq, CV* startcv, I32 cx_ix, I32 saweval, U32 flags); -OP *newDEFSVOP (void); -char* gv_ename (GV *gv); -CV *cv_clone2 (CV *proto, CV *outside); - -void find_beginning (void); -void forbid_setid (char *); -void incpush (char *, int); -void init_interp (void); -void init_ids (void); -void init_debugger (void); -void init_lexer (void); -void init_main_stash (void); -#ifdef USE_THREADS -struct perl_thread * init_main_thread (void); -#endif /* USE_THREADS */ -void init_perllib (void); -void init_postdump_symbols (int, char **, char **); -void init_predump_symbols (void); -void my_exit_jump (void) __attribute__((noreturn)); -void nuke_stacks (void); -void open_script (char *, bool, SV *, int *fd); -void usage (char *); -void validate_suid (char *, char*, int); -int emulate_eaccess (const char* path, int mode); - -regnode *reg (I32, I32 *); -regnode *reganode (U8, U32); -regnode *regatom (I32 *); -regnode *regbranch (I32 *, I32); -void regc (U8, char *); -void reguni (UV, char *, I32*); -regnode *regclass (void); -regnode *regclassutf8 (void); -I32 regcurly (char *); -regnode *reg_node (U8); -regnode *regpiece (I32 *); -void reginsert (U8, regnode *); -void regoptail (regnode *, regnode *); -void regset (char *, I32); -void regtail (regnode *, regnode *); -char* regwhite (char *, char *); -char* nextchar (void); -regnode *dumpuntil (regnode *start, regnode *node, regnode *last, SV* sv, I32 l); -void scan_commit (scan_data_t *data); -I32 study_chunk (regnode **scanp, I32 *deltap, regnode *last, scan_data_t *data, U32 flags); -I32 add_data (I32 n, char *s); -void re_croak2 (const char* pat1,const char* pat2,...) __attribute__((noreturn)); -char* regpposixcc (I32 value); -void clear_re (void *r); -I32 regmatch (regnode *prog); -I32 regrepeat (regnode *p, I32 max); -I32 regrepeat_hard (regnode *p, I32 max, I32 *lp); -I32 regtry (regexp *prog, char *startpos); -bool reginclass (char *p, I32 c); -bool reginclassutf8 (regnode *f, U8* p); -CHECKPOINT regcppush (I32 parenfloor); -char * regcppop (void); -char * regcp_set_to (I32 ss); -void cache_re (regexp *prog); -void restore_pos (void *arg); -U8 * reghop (U8 *pos, I32 off); -U8 * reghopmaybe (U8 *pos, I32 off); -void dump (char *pat,...); -#ifdef WIN32 -int do_aspawn (void *vreally, void **vmark, void **vsp); -#endif - -#ifdef DEBUGGING -void del_sv (SV *p); -#endif -void debprof (OP *o); - -OP *new_logop (I32 type, I32 flags, OP **firstp, OP **otherp); -void simplify_sort (OP *o); -bool is_handle_constructor (OP *o, I32 argnum); -void sv_add_backref (SV *tsv, SV *sv); -void sv_del_backref (SV *sv); - -I32 do_trans_CC_simple (SV *sv); -I32 do_trans_CC_count (SV *sv); -I32 do_trans_CC_complex (SV *sv); -I32 do_trans_UU_simple (SV *sv); -I32 do_trans_UU_count (SV *sv); -I32 do_trans_UU_complex (SV *sv); -I32 do_trans_UC_simple (SV *sv); -I32 do_trans_CU_simple (SV *sv); -I32 do_trans_UC_trivial (SV *sv); -I32 do_trans_CU_trivial (SV *sv); - -#undef PERL_CKDEF -#undef PERL_PPDEF -#define PERL_CKDEF(s) OP* s (OP *o); -#define PERL_PPDEF(s) OP* s (ARGSproto); -public: - -#include "pp_proto.h" - -void unwind_handler_stack (void *p); -void restore_magic (void *p); -void restore_rsfp (void *f); -void restore_expect (void *e); -void restore_lex_expect (void *e); -VIRTUAL void yydestruct (void *ptr); -VIRTUAL int fprintf (PerlIO *pf, const char *pat, ...); -VIRTUAL int runops_standard (void); -VIRTUAL int runops_debug (void); - -#ifdef WIN32 -VIRTUAL int& ErrorNo (void); -#endif /* WIN32 */ -#else /* !PERL_OBJECT */ -END_EXTERN_C -#endif /* PERL_OBJECT */ - -VIRTUAL void sv_catpvf_mg (SV *sv, const char* pat, ...); -VIRTUAL void sv_catpv_mg (SV *sv, const char *ptr); -VIRTUAL void sv_catpvn_mg (SV *sv, const char *ptr, STRLEN len); -VIRTUAL void sv_catsv_mg (SV *dstr, SV *sstr); -VIRTUAL void sv_setpvf_mg (SV *sv, const char* pat, ...); -VIRTUAL void sv_setiv_mg (SV *sv, IV i); -VIRTUAL void sv_setpviv_mg (SV *sv, IV iv); -VIRTUAL void sv_setuv_mg (SV *sv, UV u); -VIRTUAL void sv_setnv_mg (SV *sv, double num); -VIRTUAL void sv_setpv_mg (SV *sv, const char *ptr); -VIRTUAL void sv_setpvn_mg (SV *sv, const char *ptr, STRLEN len); -VIRTUAL void sv_setsv_mg (SV *dstr, SV *sstr); -VIRTUAL void sv_usepvn_mg (SV *sv, char *ptr, STRLEN len); - -VIRTUAL MGVTBL* get_vtbl (int vtbl_id); - -/* New virtual functions must be added here to maintain binary - * compatablity with PERL_OBJECT - */ - -VIRTUAL char* pv_display (SV *sv, char *pv, STRLEN cur, STRLEN len, STRLEN pvlim); -VIRTUAL void dump_indent (I32 level, PerlIO *file, const char* pat, ...); - -VIRTUAL void do_gv_dump (I32 level, PerlIO *file, char *name, GV *sv); -VIRTUAL void do_gvgv_dump (I32 level, PerlIO *file, char *name, GV *sv); -VIRTUAL void do_hv_dump (I32 level, PerlIO *file, char *name, HV *sv); -VIRTUAL void do_magic_dump (I32 level, PerlIO *file, MAGIC *mg, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim); -VIRTUAL void do_op_dump (I32 level, PerlIO *file, OP *o); -VIRTUAL void do_pmop_dump (I32 level, PerlIO *file, PMOP *pm); -VIRTUAL void do_sv_dump (I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bool dumpops, STRLEN pvlim); -VIRTUAL void magic_dump (MAGIC *mg); -VIRTUAL void* default_protect (int *excpt, protect_body_t body, ...); -VIRTUAL void reginitcolors (void); -VIRTUAL char* sv_2pv_nolen (SV* sv); -VIRTUAL char* sv_pv (SV *sv); -VIRTUAL void sv_force_normal (SV *sv); -VIRTUAL void tmps_grow (I32 n); -VIRTUAL void *bset_obj_store (void *obj, I32 ix); - -VIRTUAL SV* sv_rvweaken (SV *sv); -VIRTUAL int magic_killbackrefs (SV *sv, MAGIC *mg); +void* Perl_my_memset(pTHX_ char* loc, I32 ch, I32 len); +#endif +#if defined(MYSWAP) +long Perl_my_ntohl(pTHX_ long l); +#endif +#if !defined(PERL_OBJECT) +I32 Perl_my_pclose(pTHX_ PerlIO* ptr); +#endif +#if !defined(PERL_OBJECT) +PerlIO* Perl_my_popen(pTHX_ char* cmd, char* mode); +#endif +void Perl_my_setenv(pTHX_ char* nam, char* val); +I32 Perl_my_stat(pTHX_ ARGSproto); +#if defined(MYSWAP) +short Perl_my_swap(pTHX_ short s); +#endif +void Perl_my_unexec(pTHX); +OP* Perl_newANONHASH(pTHX_ OP* o); +OP* Perl_newANONLIST(pTHX_ OP* o); +OP* Perl_newANONSUB(pTHX_ I32 floor, OP* proto, OP* block); +OP* Perl_newASSIGNOP(pTHX_ I32 flags, OP* left, I32 optype, OP* right); +AV* Perl_newAV(pTHX); +OP* Perl_newAVREF(pTHX_ OP* o); +OP* Perl_newBINOP(pTHX_ I32 type, I32 flags, OP* first, OP* last); +OP* Perl_newCONDOP(pTHX_ I32 flags, OP* expr, OP* trueop, OP* falseop); +void Perl_newCONSTSUB(pTHX_ HV* stash, char* name, SV* sv); +OP* Perl_newCVREF(pTHX_ I32 flags, OP* o); +void Perl_newFORM(pTHX_ I32 floor, OP* o, OP* block); +OP* Perl_newFOROP(pTHX_ I32 flags, char* label, line_t forline, OP* sclr, OP* expr, OP*block, OP*cont); +OP* Perl_newGVOP(pTHX_ I32 type, I32 flags, GV* gv); +OP* Perl_newGVREF(pTHX_ I32 type, OP* o); +GV* Perl_newGVgen(pTHX_ char* pack); +HV* Perl_newHV(pTHX); +OP* Perl_newHVREF(pTHX_ OP* o); +HV* Perl_newHVhv(pTHX_ HV* hv); +IO* Perl_newIO(pTHX); +OP* Perl_newLISTOP(pTHX_ I32 type, I32 flags, OP* first, OP* last); +OP* Perl_newLOGOP(pTHX_ I32 optype, I32 flags, OP* left, OP* right); +OP* Perl_newLOOPEX(pTHX_ I32 type, OP* label); +OP* Perl_newLOOPOP(pTHX_ I32 flags, I32 debuggable, OP* expr, OP* block); +OP* Perl_newNULLLIST(pTHX); +OP* Perl_newOP(pTHX_ I32 optype, I32 flags); +OP* Perl_newPMOP(pTHX_ I32 type, I32 flags); +void Perl_newPROG(pTHX_ OP* o); +OP* Perl_newPVOP(pTHX_ I32 type, I32 flags, char* pv); +OP* Perl_newRANGE(pTHX_ I32 flags, OP* left, OP* right); +SV* Perl_newRV(pTHX_ SV* pref); +SV* Perl_newRV_noinc(pTHX_ SV *sv); +OP* Perl_newSLICEOP(pTHX_ I32 flags, OP* subscript, OP* listop); +OP* Perl_newSTATEOP(pTHX_ I32 flags, char* label, OP* o); +CV* Perl_newSUB(pTHX_ I32 floor, OP* o, OP* proto, OP* block); +SV* Perl_newSV(pTHX_ STRLEN len); +OP* Perl_newSVOP(pTHX_ I32 type, I32 flags, SV* sv); +OP* Perl_newSVREF(pTHX_ OP* o); +SV* Perl_newSViv(pTHX_ IV i); +SV* Perl_newSVnv(pTHX_ double n); +SV* Perl_newSVpv(pTHX_ const char* s, STRLEN len); +SV* Perl_newSVpvf(pTHX_ const char* pat, ...); +SV* Perl_newSVpvn(pTHX_ const char* s, STRLEN len); +SV* Perl_newSVrv(pTHX_ SV* rv, const char* classname); +SV* Perl_newSVsv(pTHX_ SV* old); +OP* Perl_newUNOP(pTHX_ I32 type, I32 flags, OP* first); +OP* Perl_newWHILEOP(pTHX_ I32 flags, I32 debuggable, LOOP* loop, I32 whileline, OP* expr, OP* block, OP* cont); +CV* Perl_newXS(pTHX_ char* name, XSUBADDR_t f, char* filename); +void Perl_new_collate(pTHX_ const char* newcoll); +void Perl_new_ctype(pTHX_ const char* newctype); +void Perl_new_numeric(pTHX_ const char* newcoll); +PERL_SI* Perl_new_stackinfo(pTHX_ I32 stitems, I32 cxitems); +#if defined(USE_THREADS) +struct perl_thread* Perl_new_struct_thread(pTHX_ struct perl_thread *t); +#endif +PerlIO* Perl_nextargv(pTHX_ GV* gv); +char* Perl_ninstr(pTHX_ const char* big, const char* bigend, const char* little, const char* lend); +OP* Perl_oopsAV(pTHX_ OP* o); +OP* Perl_oopsCV(pTHX_ OP* o); +OP* Perl_oopsHV(pTHX_ OP* o); +SV* Perl_op_const_sv(pTHX_ OP* o, CV* cv); +void Perl_op_dump(pTHX_ OP* arg); +void Perl_op_free(pTHX_ OP* arg); +void Perl_package(pTHX_ OP* o); +PADOFFSET Perl_pad_alloc(pTHX_ I32 optype, U32 tmptype); +PADOFFSET Perl_pad_allocmy(pTHX_ char* name); +PADOFFSET Perl_pad_findmy(pTHX_ char* name); +void Perl_pad_free(pTHX_ PADOFFSET po); +void Perl_pad_leavemy(pTHX_ I32 fill); +void Perl_pad_reset(pTHX); +SV* Perl_pad_sv(pTHX_ PADOFFSET po); +void Perl_pad_swipe(pTHX_ PADOFFSET po); +void Perl_peep(pTHX_ OP* o); +#if !defined(PERL_OBJECT) +PerlInterpreter* perl_alloc(void); +#endif +void perl_construct(PerlInterpreter* sv_interp); +void perl_destruct(PerlInterpreter* sv_interp); +void perl_free(PerlInterpreter* sv_interp); +int perl_parse(PerlInterpreter* sv_interp, XSINIT_t xsinit, int argc, char** argv, char** env); +int perl_run(PerlInterpreter* sv_interp); +void Perl_pidgone(pTHX_ int pid, int status); +void Perl_pmflag(pTHX_ U16* pmfl, int ch); +void Perl_pmop_dump(pTHX_ PMOP* pm); +OP* Perl_pmruntime(pTHX_ OP* pm, OP* expr, OP* repl); +OP* Perl_pmtrans(pTHX_ OP* o, OP* expr, OP* repl); +OP* Perl_pop_return(pTHX); +void Perl_pop_scope(pTHX); +regexp* Perl_pregcomp(pTHX_ char* exp, char* xend, PMOP* pm); +I32 Perl_pregexec(pTHX_ regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, U32 nosave); +void Perl_pregfree(pTHX_ struct regexp* r); +OP* Perl_prepend_elem(pTHX_ I32 optype, OP* head, OP* tail); +void Perl_push_return(pTHX_ OP* o); +void Perl_push_scope(pTHX); +char* Perl_pv_display(pTHX_ SV *sv, char *pv, STRLEN cur, STRLEN len, STRLEN pvlim); +#if defined(MYMALLOC) +Malloc_t Perl_realloc(pTHX_ Malloc_t where, MEM_SIZE nbytes); +#endif +OP* Perl_ref(pTHX_ OP* o, I32 type); +OP* Perl_refkids(pTHX_ OP* o, I32 type); +void Perl_regdump(pTHX_ regexp* r); +I32 Perl_regexec_flags(pTHX_ regexp* prog, char* stringarg, char* strend, char* strbeg, I32 minend, SV* screamer, void* data, U32 flags); +void Perl_reginitcolors(pTHX); +regnode* Perl_regnext(pTHX_ regnode* p); +void Perl_regprop(pTHX_ SV* sv, regnode* o); +void Perl_repeatcpy(pTHX_ char* to, const char* from, I32 len, I32 count); +void Perl_require_pv(pTHX_ const char* pv); +char* Perl_rninstr(pTHX_ const char* big, const char* bigend, const char* little, const char* lend); +Sighandler_t Perl_rsignal(pTHX_ int i, Sighandler_t t); +int Perl_rsignal_restore(pTHX_ int i, Sigsave_t* t); +int Perl_rsignal_save(pTHX_ int i, Sighandler_t t1, Sigsave_t* t2); +Sighandler_t Perl_rsignal_state(pTHX_ int i); +int Perl_runops_debug(pTHX); +int Perl_runops_standard(pTHX); +void Perl_rxres_free(pTHX_ void** rsp); +void Perl_rxres_restore(pTHX_ void** rsp, REGEXP* prx); +void Perl_rxres_save(pTHX_ void** rsp, REGEXP* prx); +Malloc_t Perl_safesyscalloc(pTHX_ MEM_SIZE elements, MEM_SIZE size); +Free_t Perl_safesysfree(pTHX_ Malloc_t where); +Malloc_t Perl_safesysmalloc(pTHX_ MEM_SIZE nbytes); +Malloc_t Perl_safesysrealloc(pTHX_ Malloc_t where, MEM_SIZE nbytes); +#if defined(LEAKTEST) +Malloc_t Perl_safexcalloc(pTHX_ I32 x, MEM_SIZE elements, MEM_SIZE size); +#endif +#if defined(LEAKTEST) +void Perl_safexfree(pTHX_ Malloc_t where); +#endif +#if defined(LEAKTEST) +Malloc_t Perl_safexmalloc(pTHX_ I32 x, MEM_SIZE size); +#endif +#if defined(LEAKTEST) +Malloc_t Perl_safexrealloc(pTHX_ Malloc_t where, MEM_SIZE size); +#endif +#if !defined(HAS_RENAME) +I32 Perl_same_dirent(pTHX_ char* a, char* b); +#endif +void Perl_save_I16(pTHX_ I16* intp); +void Perl_save_I32(pTHX_ I32* intp); +void Perl_save_aelem(pTHX_ AV* av, I32 idx, SV **sptr); +I32 Perl_save_alloc(pTHX_ I32 size, I32 pad); +void Perl_save_aptr(pTHX_ AV** aptr); +AV* Perl_save_ary(pTHX_ GV* gv); +void Perl_save_clearsv(pTHX_ SV** svp); +void Perl_save_delete(pTHX_ HV* hv, char* key, I32 klen); +void Perl_save_destructor(pTHX_ DESTRUCTORFUNC_t f, void* p); +void Perl_save_freeop(pTHX_ OP* o); +void Perl_save_freepv(pTHX_ char* pv); +void Perl_save_freesv(pTHX_ SV* sv); +void Perl_save_generic_svref(pTHX_ SV** sptr); +void Perl_save_gp(pTHX_ GV* gv, I32 empty); +HV* Perl_save_hash(pTHX_ GV* gv); +void Perl_save_helem(pTHX_ HV* hv, SV *key, SV **sptr); +void Perl_save_hints(pTHX); +void Perl_save_hptr(pTHX_ HV** hptr); +void Perl_save_int(pTHX_ int* intp); +void Perl_save_item(pTHX_ SV* item); +void Perl_save_iv(pTHX_ IV* iv); +void Perl_save_list(pTHX_ SV** sarg, I32 maxsarg); +void Perl_save_long(pTHX_ long* longp); +void Perl_save_nogv(pTHX_ GV* gv); +void Perl_save_op(pTHX); +void Perl_save_pptr(pTHX_ char** pptr); +void Perl_save_re_context(pTHX); +SV* Perl_save_scalar(pTHX_ GV* gv); +void Perl_save_sptr(pTHX_ SV** sptr); +SV* Perl_save_svref(pTHX_ SV** sptr); +SV** Perl_save_threadsv(pTHX_ PADOFFSET i); +char* Perl_savepv(pTHX_ const char* sv); +char* Perl_savepvn(pTHX_ const char* sv, I32 len); +void Perl_savestack_grow(pTHX); +OP* Perl_sawparens(pTHX_ OP* o); +OP* Perl_scalar(pTHX_ OP* o); +OP* Perl_scalarkids(pTHX_ OP* o); +OP* Perl_scalarseq(pTHX_ OP* o); +OP* Perl_scalarvoid(pTHX_ OP* o); +UV Perl_scan_bin(pTHX_ char* start, I32 len, I32* retlen); +UV Perl_scan_hex(pTHX_ char* start, I32 len, I32* retlen); +char* Perl_scan_num(pTHX_ char* s); +UV Perl_scan_oct(pTHX_ char* start, I32 len, I32* retlen); +OP* Perl_scope(pTHX_ OP* o); +char* Perl_screaminstr(pTHX_ SV* bigsv, SV* littlesv, I32 start_shift, I32 end_shift, I32 *state, I32 last); +void Perl_set_numeric_local(pTHX); +void Perl_set_numeric_standard(pTHX); +void Perl_setdefout(pTHX_ GV* gv); +#if !defined(VMS) +I32 Perl_setenv_getix(pTHX_ char* nam); +#endif +HEK* Perl_share_hek(pTHX_ const char* sv, I32 len, U32 hash); +char* Perl_sharepvn(pTHX_ const char* sv, I32 len, U32 hash); +Signal_t Perl_sighandler(pTHX_ int sig); +SV** Perl_stack_grow(pTHX_ SV** sp, SV**p, int n); +I32 Perl_start_subparse(pTHX_ I32 is_format, U32 flags); +void Perl_sub_crush_depth(pTHX_ CV* cv); +bool Perl_sv_2bool(pTHX_ SV* sv); +CV* Perl_sv_2cv(pTHX_ SV* sv, HV** st, GV** gvp, I32 lref); +IO* Perl_sv_2io(pTHX_ SV* sv); +IV Perl_sv_2iv(pTHX_ SV* sv); +SV* Perl_sv_2mortal(pTHX_ SV* sv); +double Perl_sv_2nv(pTHX_ SV* sv); +char* Perl_sv_2pv(pTHX_ SV* sv, STRLEN* lp); +char* Perl_sv_2pv_nolen(pTHX_ SV* sv); +UV Perl_sv_2uv(pTHX_ SV* sv); +void Perl_sv_add_arena(pTHX_ char* ptr, U32 size, U32 flags); +int Perl_sv_backoff(pTHX_ SV* sv); +SV* Perl_sv_bless(pTHX_ SV* sv, HV* stash); +void Perl_sv_catpv(pTHX_ SV* sv, const char* ptr); +void Perl_sv_catpv_mg(pTHX_ SV *sv, const char *ptr); +void Perl_sv_catpvf(pTHX_ SV* sv, const char* pat, ...); +void Perl_sv_catpvf_mg(pTHX_ SV *sv, const char* pat, ...); +void Perl_sv_catpvn(pTHX_ SV* sv, const char* ptr, STRLEN len); +void Perl_sv_catpvn_mg(pTHX_ SV *sv, const char *ptr, STRLEN len); +void Perl_sv_catsv(pTHX_ SV* dsv, SV* ssv); +void Perl_sv_catsv_mg(pTHX_ SV *dstr, SV *sstr); +void Perl_sv_chop(pTHX_ SV* sv, char* ptr); +void Perl_sv_clean_all(pTHX); +void Perl_sv_clean_objs(pTHX); +void Perl_sv_clear(pTHX_ SV* sv); +I32 Perl_sv_cmp(pTHX_ SV* sv1, SV* sv2); +I32 Perl_sv_cmp_locale(pTHX_ SV* sv1, SV* sv2); +#if defined(USE_LOCALE_COLLATE) +char* Perl_sv_collxfrm(pTHX_ SV* sv, STRLEN* nxp); +#endif +OP* Perl_sv_compile_2op(pTHX_ SV* sv, OP** startp, char* code, AV** avp); +void Perl_sv_dec(pTHX_ SV* sv); +bool Perl_sv_derived_from(pTHX_ SV* sv, const char* name); +void Perl_sv_dump(pTHX_ SV* sv); +I32 Perl_sv_eq(pTHX_ SV* sv1, SV* sv2); +void Perl_sv_force_normal(pTHX_ SV *sv); +void Perl_sv_free(pTHX_ SV* sv); +void Perl_sv_free_arenas(pTHX); +char* Perl_sv_gets(pTHX_ SV* sv, PerlIO* fp, I32 append); +char* Perl_sv_grow(pTHX_ SV* sv, STRLEN newlen); +void Perl_sv_inc(pTHX_ SV* sv); +void Perl_sv_insert(pTHX_ SV* bigsv, STRLEN offset, STRLEN len, char* little, STRLEN littlelen); +int Perl_sv_isa(pTHX_ SV* sv, const char* name); +int Perl_sv_isobject(pTHX_ SV* sv); +IV Perl_sv_iv(pTHX_ SV* sv); +STRLEN Perl_sv_len(pTHX_ SV* sv); +STRLEN Perl_sv_len_utf8(pTHX_ SV* sv); +void Perl_sv_magic(pTHX_ SV* sv, SV* obj, int how, const char* name, I32 namlen); +SV* Perl_sv_mortalcopy(pTHX_ SV* oldsv); +SV* Perl_sv_newmortal(pTHX); +SV* Perl_sv_newref(pTHX_ SV* sv); +double Perl_sv_nv(pTHX_ SV* sv); +char* Perl_sv_peek(pTHX_ SV* sv); +void Perl_sv_pos_b2u(pTHX_ SV* sv, I32* offsetp); +void Perl_sv_pos_u2b(pTHX_ SV* sv, I32* offsetp, I32* lenp); +char* Perl_sv_pv(pTHX_ SV *sv); +char* Perl_sv_pvn(pTHX_ SV *sv, STRLEN *len); +char* Perl_sv_pvn_force(pTHX_ SV* sv, STRLEN* lp); +char* Perl_sv_reftype(pTHX_ SV* sv, int ob); +void Perl_sv_replace(pTHX_ SV* sv, SV* nsv); +void Perl_sv_report_used(pTHX); +void Perl_sv_reset(pTHX_ char* s, HV* stash); +SV* Perl_sv_rvweaken(pTHX_ SV *sv); +void Perl_sv_setiv(pTHX_ SV* sv, IV num); +void Perl_sv_setiv_mg(pTHX_ SV *sv, IV i); +void Perl_sv_setnv(pTHX_ SV* sv, double num); +void Perl_sv_setnv_mg(pTHX_ SV *sv, double num); +void Perl_sv_setpv(pTHX_ SV* sv, const char* ptr); +void Perl_sv_setpv_mg(pTHX_ SV *sv, const char *ptr); +void Perl_sv_setpvf(pTHX_ SV* sv, const char* pat, ...); +void Perl_sv_setpvf_mg(pTHX_ SV *sv, const char* pat, ...); +void Perl_sv_setpviv(pTHX_ SV* sv, IV num); +void Perl_sv_setpviv_mg(pTHX_ SV *sv, IV iv); +void Perl_sv_setpvn(pTHX_ SV* sv, const char* ptr, STRLEN len); +void Perl_sv_setpvn_mg(pTHX_ SV *sv, const char *ptr, STRLEN len); +SV* Perl_sv_setref_iv(pTHX_ SV* rv, const char* classname, IV iv); +SV* Perl_sv_setref_nv(pTHX_ SV* rv, const char* classname, double nv); +SV* Perl_sv_setref_pv(pTHX_ SV* rv, const char* classname, void* pv); +SV* Perl_sv_setref_pvn(pTHX_ SV* rv, const char* classname, char* pv, STRLEN n); +void Perl_sv_setsv(pTHX_ SV* dsv, SV* ssv); +void Perl_sv_setsv_mg(pTHX_ SV *dstr, SV *sstr); +void Perl_sv_setuv(pTHX_ SV* sv, UV num); +void Perl_sv_setuv_mg(pTHX_ SV *sv, UV u); +void Perl_sv_taint(pTHX_ SV* sv); +bool Perl_sv_tainted(pTHX_ SV* sv); +I32 Perl_sv_true(pTHX_ SV *sv); +int Perl_sv_unmagic(pTHX_ SV* sv, int type); +void Perl_sv_unref(pTHX_ SV* sv); +void Perl_sv_untaint(pTHX_ SV* sv); +bool Perl_sv_upgrade(pTHX_ SV* sv, U32 mt); +void Perl_sv_usepvn(pTHX_ SV* sv, char* ptr, STRLEN len); +void Perl_sv_usepvn_mg(pTHX_ SV *sv, char *ptr, STRLEN len); +UV Perl_sv_uv(pTHX_ SV* sv); +void Perl_sv_vcatpvfn(pTHX_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *used_locale); +void Perl_sv_vsetpvfn(pTHX_ SV* sv, const char* pat, STRLEN patlen, va_list* args, SV** svargs, I32 svmax, bool *used_locale); +UV Perl_swash_fetch(pTHX_ SV *sv, U8 *ptr); +SV* Perl_swash_init(pTHX_ char* pkg, char* name, SV* listsv, I32 minbits, I32 none); +void Perl_taint_env(pTHX); +void Perl_taint_proper(pTHX_ const char* f, char* s); +void Perl_tmps_grow(pTHX_ I32 n); +U32 Perl_to_uni_lower(pTHX_ U32 c); +U32 Perl_to_uni_lower_lc(pTHX_ U32 c); +U32 Perl_to_uni_title(pTHX_ U32 c); +U32 Perl_to_uni_title_lc(pTHX_ U32 c); +U32 Perl_to_uni_upper(pTHX_ U32 c); +U32 Perl_to_uni_upper_lc(pTHX_ U32 c); +UV Perl_to_utf8_lower(pTHX_ U8 *p); +UV Perl_to_utf8_title(pTHX_ U8 *p); +UV Perl_to_utf8_upper(pTHX_ U8 *p); +#if defined(UNLINK_ALL_VERSIONS) +I32 Perl_unlnk(pTHX_ char* f); +#endif +#if defined(USE_THREADS) +void Perl_unlock_condpair(pTHX_ void* svv); +#endif +void Perl_unshare_hek(pTHX_ HEK* hek); +void Perl_unsharepvn(pTHX_ const char* sv, I32 len, U32 hash); +U8* Perl_utf16_to_utf8(pTHX_ U16* p, U8 *d, I32 bytelen); +U8* Perl_utf16_to_utf8_reversed(pTHX_ U16* p, U8 *d, I32 bytelen); +I32 Perl_utf8_distance(pTHX_ U8 *a, U8 *b); +U8* Perl_utf8_hop(pTHX_ U8 *s, I32 off); +UV Perl_utf8_to_uv(pTHX_ U8 *s, I32* retlen); +void Perl_utilize(pTHX_ int aver, I32 floor, OP* version, OP* id, OP* arg); +U8* Perl_uv_to_utf8(pTHX_ U8 *d, UV uv); +void Perl_vivify_defelem(pTHX_ SV* sv); +void Perl_vivify_ref(pTHX_ SV* sv, U32 to_what); +I32 Perl_wait4pid(pTHX_ int pid, int* statusp, int flags); +void Perl_warn(pTHX_ const char* pat, ...); +void Perl_warner(pTHX_ U32 err, const char* pat, ...); +void Perl_watch(pTHX_ char** addr); +I32 Perl_whichsig(pTHX_ char* sig); +void Perl_yydestruct(pTHX_ void *ptr); +int Perl_yyerror(pTHX_ char* s); +#if !defined(USE_PURE_BISON) +int Perl_yylex(pTHX); +#endif +int Perl_yyparse(pTHX); +int Perl_yywarn(pTHX_ char* s); +#if defined(PL_OP_SLAB_ALLOC) && defined(PERL_IN_OP_C) +STATIC void* Slab_Alloc(pTHX_ int m, size_t sz); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC I32 add_data(pTHX_ I32 n, char *s); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC void add_to_chain(pTHX_ void *p, MEM_SIZE size, MEM_SIZE chip); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 amagic_cmp(pTHX_ SV *str1, SV *str2); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 amagic_cmp_locale(pTHX_ SV *str1, SV *str2); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 amagic_i_ncmp(pTHX_ SV *a, SV *b); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 amagic_ncmp(pTHX_ SV *a, SV *b); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC int ao(pTHX_ int toketype); +#endif +#if defined(PERL_IN_SV_C) +STATIC IV asIV(pTHX_ SV* sv); +#endif +#if defined(PERL_IN_SV_C) +STATIC UV asUV(pTHX_ SV* sv); +#endif +#if defined(PERL_IN_AV_C) +STATIC I32 avhv_index_sv(pTHX_ SV* sv); +#endif +#if defined(PERL_IN_OP_C) +STATIC void bad_type(pTHX_ I32 n, char *t, char *name, OP *kid); +#endif +#if defined(MYMALLOC) && defined(DEBUGGING) && defined(PERL_IN_MALLOC_C) +STATIC void botch(pTHX_ char *diag, char *s); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC void cache_re(pTHX_ regexp *prog); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void* call_body(pTHX_ va_list args); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void* call_list_body(pTHX_ va_list args); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void call_xbody(pTHX_ OP *myop, int is_eval); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void check_uni(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void checkcomma(pTHX_ char *s, char *name, char *what); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void clear_re(pTHX_ void *r); +#endif +#if defined(PERL_IN_OP_C) +STATIC CV* cv_clone2(pTHX_ CV *proto, CV *outside); +#endif +#if defined(PERL_IN_RUN_C) +STATIC void debprof(pTHX_ OP *o); +#endif +#if defined(PERL_IN_HV_C) +STATIC void del_he(pTHX_ HE *p); +#endif +#if defined(DEBUGGING) && defined(PERL_IN_SV_C) +STATIC void del_sv(pTHX_ SV *p); +#endif +#if defined(PERL_IN_SV_C) +STATIC void del_xiv(pTHX_ XPVIV* p); +#endif +#if defined(PERL_IN_SV_C) +STATIC void del_xnv(pTHX_ XPVNV* p); +#endif +#if defined(PERL_IN_SV_C) +STATIC void del_xpv(pTHX_ XPV* p); +#endif +#if defined(PERL_IN_SV_C) +STATIC void del_xrv(pTHX_ XRV* p); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void depcom(pTHX); +#endif +#if defined(PERL_IN_PP_C) +STATIC int div128(pTHX_ SV *pnum, bool *done); +#endif +#if defined(WIN32) && defined(PERL_IN_GLOBALS_C) +STATIC int do_aspawn(pTHX_ void *vreally, void **vmark, void **vsp); +#endif +#if defined(PERL_IN_SV_C) +STATIC void do_clean_all(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_SV_C) +STATIC void do_clean_named_objs(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_SV_C) +STATIC void do_clean_objs(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_SV_C) +STATIC void do_report_used(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_CC_complex(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_CC_count(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_CC_simple(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_CU_simple(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_CU_trivial(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_UC_simple(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_UC_trivial(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_UU_complex(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_UU_count(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_DOOP_C) +STATIC I32 do_trans_UU_simple(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC OP* docatch(pTHX_ OP *o); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC void* docatch_body(pTHX_ va_list args); +#endif +#if defined(PERL_IN_PP_C) +STATIC void doencodes(pTHX_ SV* sv, char* s, I32 len); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC OP* doeval(pTHX_ int gimme, OP** startop); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC OP* dofindlabel(pTHX_ OP *o, char *label, OP **opstack, OP **oplimit); +#endif +#if defined(PERL_IN_PP_SYS_C) +STATIC OP* doform(pTHX_ CV *cv, GV *gv, OP *retop); +#endif +#if !defined(HAS_MKDIR) || !defined(HAS_RMDIR) && defined(PERL_IN_PP_SYS_C) +STATIC int dooneliner(pTHX_ char *cmd, char *filename); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC PerlIO * doopen_pmc(pTHX_ const char *name, const char *mode); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC void doparseform(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 dopoptoeval(pTHX_ I32 startingblock); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 dopoptolabel(pTHX_ char *label); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 dopoptoloop(pTHX_ I32 startingblock); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 dopoptosub(pTHX_ I32 startingblock); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 dopoptosub_at(pTHX_ PERL_CONTEXT* cxstk, I32 startingblock); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* dumpuntil(pTHX_ regnode *start, regnode *node, regnode *last, SV* sv, I32 l); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC Malloc_t emergency_sbrk(pTHX_ MEM_SIZE size); +#endif +#if defined(PERL_IN_PP_SYS_C) +STATIC int emulate_eaccess(pTHX_ const char* path, int mode); +#endif +#if defined(FCNTL_EMULATE_FLOCK) && defined(PERL_IN_PP_SYS_C) +STATIC int fcntl_emulate_flock(pTHX_ int fd, int operation); +#endif +#if defined(IAMSUID) && defined(PERL_IN_PERL_C) +STATIC int fd_on_nosuid_fs(pTHX_ int fd); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char * filter_gets(pTHX_ SV *sv, PerlIO *fp, STRLEN append); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void find_beginning(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void forbid_setid(pTHX_ char *); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void force_ident(pTHX_ char *s, int kind); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void force_next(pTHX_ I32 type); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* force_version(pTHX_ char *start); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* force_word(pTHX_ char *start, int token, int check_keyword, int allow_pack, int allow_tick); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC void free_closures(pTHX); +#endif +#if defined(PERL_IN_PP_HOT_C) +STATIC CV* get_db_sub(pTHX_ SV **svp, CV *cv); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC void* get_from_bigger_buckets(pTHX_ int bucket, MEM_SIZE size); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC void* get_from_chain(pTHX_ MEM_SIZE size); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC union overhead * getpages(pTHX_ int needed, int *nblksp, int bucket); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC int getpages_adjacent(pTHX_ int require); +#endif +#if defined(PERL_IN_OP_C) +STATIC char* gv_ename(pTHX_ GV *gv); +#endif +#if defined(PERL_IN_GV_C) +STATIC void gv_init_sv(pTHX_ GV *gv, I32 sv_type); +#endif +#if defined(PERL_IN_HV_C) +STATIC void hfreeentries(pTHX_ HV *hv); +#endif +#if defined(PERL_IN_HV_C) +STATIC void hsplit(pTHX_ HV *hv); +#endif +#if defined(PERL_IN_HV_C) +STATIC void hv_magic_check(pTHX_ HV *hv, bool *needs_copy, bool *needs_store); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* incl_perldb(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void incline(pTHX_ char *s); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void incpush(pTHX_ char *, int); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_debugger(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_ids(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_interp(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_lexer(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_main_stash(pTHX); +#endif +#if defined(USE_THREADS) && defined(PERL_IN_PERL_C) +STATIC struct perl_thread * init_main_thread(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_perllib(pTHX); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_postdump_symbols(pTHX_ int, char **, char **); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void init_predump_symbols(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC int intuit_method(pTHX_ char *s, GV *gv); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC int intuit_more(pTHX_ char *s); +#endif +#if defined(PERL_IN_PP_C) +STATIC SV* is_an_int(pTHX_ char *s, STRLEN l); +#endif +#if defined(PERL_IN_OP_C) +STATIC bool is_handle_constructor(pTHX_ OP *o, I32 argnum); +#endif +#if defined(PERL_IN_UNIVERSAL_C) +STATIC SV* isa_lookup(pTHX_ HV *stash, const char *name, int len, int level); +#endif +#if defined(PERL_IN_OP_C) +STATIC I32 list_assignment(pTHX_ OP *o); +#endif +#if defined(LOCKF_EMULATE_FLOCK) && defined(PERL_IN_PP_SYS_C) +STATIC int lockf_emulate_flock(pTHX_ int fd, int operation); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC I32 lop(pTHX_ I32 f, expectation x, char *s); +#endif +#if defined(PERL_IN_MG_C) +STATIC int magic_methcall(pTHX_ SV *sv, MAGIC *mg, char *meth, I32 f, int n, SV *val); +#endif +#if defined(PERL_IN_MG_C) +STATIC int magic_methpack(pTHX_ SV *sv, MAGIC *mg, char *meth); +#endif +#if defined(PERL_IN_UTIL_C) +STATIC SV* mess_alloc(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void missingterm(pTHX_ char *s); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* modkids(pTHX_ OP *o, I32 type); +#endif +#if defined(PERL_IN_HV_C) +STATIC void more_he(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC SV* more_sv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC void more_xiv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC void more_xnv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC void more_xpv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC void more_xrv(pTHX); +#endif +#if defined(MYMALLOC) && defined(PERL_IN_MALLOC_C) +STATIC void morecore(pTHX_ int bucket); +#endif +#if defined(PERL_IN_PP_C) +STATIC SV* mul128(pTHX_ SV *sv, U8 m); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void my_exit_jump(pTHX) __attribute__((noreturn)); +#endif +#if !defined(PURIFY) && defined(PERL_IN_SV_C) +STATIC void* my_safemalloc(pTHX_ MEM_SIZE size); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* newDEFSVOP(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC SV* new_constant(pTHX_ char *s, STRLEN len, char *key, SV *sv, SV *pv, char *type); +#endif +#if defined(PERL_IN_HV_C) +STATIC HE* new_he(pTHX); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* new_logop(pTHX_ I32 type, I32 flags, OP **firstp, OP **otherp); +#endif +#if defined(PERL_IN_SV_C) +STATIC XPVIV* new_xiv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC XPVNV* new_xnv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC XPV* new_xpv(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC XRV* new_xrv(pTHX); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC char* nextchar(pTHX); +#endif +#if defined(PERL_IN_OP_C) +STATIC void no_bareword_allowed(pTHX_ OP *o); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* no_fh_allowed(pTHX_ OP *o); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void no_op(pTHX_ char *what, char *s); +#endif +#if defined(PERL_IN_SV_C) +STATIC void not_a_number(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void nuke_stacks(pTHX); +#endif +#if defined(PERL_IN_OP_C) +STATIC void null(pTHX_ OP* o); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void open_script(pTHX_ char *, bool, SV *, int *fd); +#endif +#if defined(PERL_IN_OP_C) +STATIC PADOFFSET pad_findlex(pTHX_ char* name, PADOFFSET newoff, U32 seq, CV* startcv, I32 cx_ix, I32 saweval, U32 flags); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void* parse_body(pTHX_ va_list args); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC void qsortsv(pTHX_ SV ** array, size_t num_elts, SVCOMPARE_t f); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void re_croak2(pTHX_ const char* pat1, const char* pat2, ...) __attribute__((noreturn)); +#endif +#if defined(PERL_IN_PERL_C) +STATIC I32 read_e_script(pTHX_ int idx, SV *buf_sv, int maxlen); +#endif +#if defined(PERL_IN_PP_C) +STATIC SV* refto(pTHX_ SV* sv); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* reg(pTHX_ I32, I32 *); +#endif +#if defined(PURIFY) && defined(PERL_IN_SV_C) +STATIC void reg_add(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* reg_node(pTHX_ U8); +#endif +#if defined(PURIFY) && defined(PERL_IN_SV_C) +STATIC void reg_remove(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* reganode(pTHX_ U8, U32); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* regatom(pTHX_ I32 *); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* regbranch(pTHX_ I32 *, I32); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void regc(pTHX_ U8, char *); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* regclass(pTHX); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* regclassutf8(pTHX); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC char* regcp_set_to(pTHX_ I32 ss); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC char* regcppop(pTHX); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC CHECKPOINT regcppush(pTHX_ I32 parenfloor); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC I32 regcurly(pTHX_ char *); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC U8* reghop(pTHX_ U8 *pos, I32 off); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC U8* reghopmaybe(pTHX_ U8 *pos, I32 off); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC bool reginclass(pTHX_ char *p, I32 c); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC bool reginclassutf8(pTHX_ regnode *f, U8* p); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void reginsert(pTHX_ U8, regnode *); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC I32 regmatch(pTHX_ regnode *prog); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void regoptail(pTHX_ regnode *, regnode *); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC regnode* regpiece(pTHX_ I32 *); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC char* regpposixcc(pTHX_ I32 value); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC I32 regrepeat(pTHX_ regnode *p, I32 max); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC I32 regrepeat_hard(pTHX_ regnode *p, I32 max, I32 *lp); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void regset(pTHX_ char *, I32); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void regtail(pTHX_ regnode *, regnode *); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC I32 regtry(pTHX_ regexp *prog, char *startpos); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void reguni(pTHX_ UV, char *, I32*); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC char* regwhite(pTHX_ char *, char *); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void restore_expect(pTHX_ void *e); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void restore_lex_expect(pTHX_ void *e); +#endif +#if defined(PERL_IN_MG_C) +STATIC void restore_magic(pTHX_ void *p); +#endif +#if defined(PERL_IN_REGEXEC_C) +STATIC void restore_pos(pTHX_ void *arg); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void restore_rsfp(pTHX_ void *f); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void* run_body(pTHX_ va_list args); +#endif +#if defined(PERL_IN_HV_C) +STATIC HEK* save_hek(pTHX_ const char *str, I32 len, U32 hash); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC void save_lines(pTHX_ AV *array, SV *sv); +#endif +#if defined(PERL_IN_MG_C) +STATIC void save_magic(pTHX_ I32 mgs_ix, SV *sv); +#endif +#if defined(PERL_IN_SCOPE_C) +STATIC SV* save_scalar_at(pTHX_ SV **sptr); +#endif +#if defined(PERL_IN_OP_C) +STATIC bool scalar_mod_type(pTHX_ OP *o, I32 type); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* scalarboolean(pTHX_ OP *o); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC void scan_commit(pTHX_ scan_data_t *data); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_const(pTHX_ char *start); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_formline(pTHX_ char *s); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_heredoc(pTHX_ char *s); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_ident(pTHX_ char *s, char *send, char *dest, STRLEN destlen, I32 ck_uni); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_inputsymbol(pTHX_ char *start); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_pat(pTHX_ char *start, I32 type); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_str(pTHX_ char *start); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_subst(pTHX_ char *start); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_trans(pTHX_ char *start); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* scan_word(pTHX_ char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp); +#endif +#if defined(PERL_IN_PP_C) +STATIC U32 seed(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC void set_csh(pTHX); +#endif +#if defined(PERL_IN_OP_C) +STATIC void simplify_sort(pTHX_ OP *o); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC char* skipspace(pTHX_ char *s); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 sortcv(pTHX_ SV *a, SV *b); +#endif +#if defined(PERL_IN_REGCOMP_C) +STATIC I32 study_chunk(pTHX_ regnode **scanp, I32 *deltap, regnode *last, scan_data_t *data, U32 flags); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC I32 sublex_done(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC I32 sublex_push(pTHX); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC I32 sublex_start(pTHX); +#endif +#if defined(PERL_IN_SV_C) +STATIC void sv_add_backref(pTHX_ SV *tsv, SV *sv); +#endif +#if defined(PERL_IN_SV_C) +STATIC void sv_del_backref(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 sv_i_ncmp(pTHX_ SV *a, SV *b); +#endif +#if defined(PERL_IN_PP_CTL_C) +STATIC I32 sv_ncmp(pTHX_ SV *a, SV *b); +#endif +#if defined(PERL_IN_SV_C) +STATIC void sv_unglob(pTHX_ SV* sv); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC SV* tokeq(pTHX_ SV *sv); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* too_few_arguments(pTHX_ OP *o, char* name); +#endif +#if defined(PERL_IN_OP_C) +STATIC OP* too_many_arguments(pTHX_ OP *o, char* name); +#endif +#if defined(CRIPPLED_CC) && defined(PERL_IN_TOKE_C) +STATIC int uni(pTHX_ I32 f, char *s); +#endif +#if defined(USE_THREADS) && defined(PERL_IN_PP_HOT_C) +STATIC void unset_cvowner(pTHX_ void *cvarg); +#endif +#if defined(PERL_IN_MG_C) +STATIC void unwind_handler_stack(pTHX_ void *p); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void usage(pTHX_ char *); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC I32 utf16_textfilter(pTHX_ int idx, SV *sv, int maxlen); +#endif +#if defined(PERL_IN_TOKE_C) +STATIC I32 utf16rev_textfilter(pTHX_ int idx, SV *sv, int maxlen); +#endif +#if defined(PERL_IN_PERL_C) +STATIC void validate_suid(pTHX_ char *, char*, int); +#endif +#if defined(PERL_IN_SV_C) +STATIC void visit(pTHX_ SVFUNC_t f); +#endif +#if defined(WIN32) && defined(PERL_IN_TOKE_C) +STATIC I32 win32_textfilter(pTHX_ int idx, SV *sv, int maxlen); +#endif +#if defined(LEAKTEST) && defined(PERL_IN_UTIL_C) +STATIC void xstat(pTHX_ int); +#endif @@ -77,6 +77,7 @@ * regular-expression syntax might require a total rethink. */ #include "EXTERN.h" +#define PERL_IN_REGCOMP_C #include "perl.h" #ifndef PERL_IN_XSUB_RE @@ -128,50 +129,6 @@ * Forward declarations for pregcomp()'s friends. */ -#ifndef PERL_OBJECT -static regnode *reg (I32, I32 *); -static regnode *reganode (U8, U32); -static regnode *regatom (I32 *); -static regnode *regbranch (I32 *, I32); -static void regc (U8, char *); -static void reguni (UV, char *, I32*); -static regnode *regclass (void); -static regnode *regclassutf8 (void); -STATIC I32 regcurly (char *); -static regnode *reg_node (U8); -static regnode *regpiece (I32 *); -static void reginsert (U8, regnode *); -static void regoptail (regnode *, regnode *); -static void regtail (regnode *, regnode *); -static char* regwhite (char *, char *); -static char* nextchar (void); -static void re_croak2 (const char* pat1,const char* pat2,...) __attribute__((noreturn)); -static char* regpposixcc (I32 value); -static void clear_re (void *r); -#endif - -/* Length of a variant. */ - -#ifndef PERL_OBJECT -typedef struct { - I32 len_min; - I32 len_delta; - I32 pos_min; /* CC */ - I32 pos_delta; /* CC */ - SV *last_found; - I32 last_end; /* min value, <0 unless valid. */ - I32 last_start_min; /* CC */ - I32 last_start_max; /* CC */ - SV **longest; /* Either &l_fixed, or &l_float. */ - SV *longest_fixed; - I32 offset_fixed; /* CC */ - SV *longest_float; - I32 offset_float_min; /* CC */ - I32 offset_float_max; /* CC */ - I32 flags; -} scan_data_t; -#endif - static scan_data_t zero_scan_data = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; @@ -209,13 +166,13 @@ static scan_data_t zero_scan_data = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, #define CHR_DIST(a,b) (UTF ? utf8_distance(a,b) : a - b) STATIC void -clear_re(void *r) +clear_re(pTHX_ void *r) { ReREFCNT_dec((regexp *)r); } STATIC void -scan_commit(scan_data_t *data) +scan_commit(pTHX_ scan_data_t *data) { dTHR; STRLEN l = CHR_SVLEN(data->last_found); @@ -252,7 +209,7 @@ scan_commit(scan_data_t *data) to the position after last scanned or to NULL. */ STATIC I32 -study_chunk(regnode **scanp, I32 *deltap, regnode *last, scan_data_t *data, U32 flags) +study_chunk(pTHX_ regnode **scanp, I32 *deltap, regnode *last, scan_data_t *data, U32 flags) /* scanp: Start here (read-write). */ /* deltap: Write maxlen-minlen here. */ /* last: Stop before this one. */ @@ -749,7 +706,7 @@ study_chunk(regnode **scanp, I32 *deltap, regnode *last, scan_data_t *data, U32 } STATIC I32 -add_data(I32 n, char *s) +add_data(pTHX_ I32 n, char *s) { dTHR; if (PL_regcomp_rx->data) { @@ -770,7 +727,7 @@ add_data(I32 n, char *s) } void -reginitcolors(void) +Perl_reginitcolors(pTHX) { dTHR; int i = 0; @@ -810,7 +767,7 @@ reginitcolors(void) * of the structure of the compiled regexp. [I'll say.] */ regexp * -pregcomp(char *exp, char *xend, PMOP *pm) +Perl_pregcomp(pTHX_ char *exp, char *xend, PMOP *pm) { dTHR; register regexp *r; @@ -1087,7 +1044,7 @@ pregcomp(char *exp, char *xend, PMOP *pm) * follows makes it hard to avoid. */ STATIC regnode * -reg(I32 paren, I32 *flagp) +reg(pTHX_ I32 paren, I32 *flagp) /* paren: Parenthesized? 0=top, 1=(, inside: changed to letter. */ { dTHR; @@ -1416,7 +1373,7 @@ reg(I32 paren, I32 *flagp) * Implements the concatenation operator. */ STATIC regnode * -regbranch(I32 *flagp, I32 first) +regbranch(pTHX_ I32 *flagp, I32 first) { dTHR; register regnode *ret; @@ -1482,7 +1439,7 @@ regbranch(I32 *flagp, I32 first) * endmarker role is not redundant. */ STATIC regnode * -regpiece(I32 *flagp) +regpiece(pTHX_ I32 *flagp) { dTHR; register regnode *ret; @@ -1633,7 +1590,7 @@ regpiece(I32 *flagp) * [Yes, it is worth fixing, some scripts can run twice the speed.] */ STATIC regnode * -regatom(I32 *flagp) +regatom(pTHX_ I32 *flagp) { dTHR; register regnode *ret = 0; @@ -2101,7 +2058,7 @@ tryagain: } STATIC char * -regwhite(char *p, char *e) +regwhite(pTHX_ char *p, char *e) { while (p < e) { if (isSPACE(*p)) @@ -2119,7 +2076,7 @@ regwhite(char *p, char *e) /* parse POSIX character classes like [[:foo:]] */ STATIC char* -regpposixcc(I32 value) +regpposixcc(pTHX_ I32 value) { dTHR; char *posixcc = 0; @@ -2161,7 +2118,7 @@ regpposixcc(I32 value) } STATIC regnode * -regclass(void) +regclass(pTHX) { dTHR; register char *opnd, *s; @@ -2359,7 +2316,7 @@ regclass(void) } STATIC regnode * -regclassutf8(void) +regclassutf8(pTHX) { register char *opnd, *e; register U32 value; @@ -2558,7 +2515,7 @@ regclassutf8(void) } STATIC char* -nextchar(void) +nextchar(pTHX) { dTHR; char* retval = PL_regcomp_parse++; @@ -2591,7 +2548,7 @@ nextchar(void) - reg_node - emit a node */ STATIC regnode * /* Location. */ -reg_node(U8 op) +reg_node(pTHX_ U8 op) { dTHR; register regnode *ret; @@ -2616,7 +2573,7 @@ reg_node(U8 op) - reganode - emit a node with an argument */ STATIC regnode * /* Location. */ -reganode(U8 op, U32 arg) +reganode(pTHX_ U8 op, U32 arg) { dTHR; register regnode *ret; @@ -2641,7 +2598,7 @@ reganode(U8 op, U32 arg) - regc - emit (if appropriate) a Unicode character */ STATIC void -reguni(UV uv, char* s, I32* lenp) +reguni(pTHX_ UV uv, char* s, I32* lenp) { dTHR; if (SIZE_ONLY) { @@ -2657,7 +2614,7 @@ reguni(UV uv, char* s, I32* lenp) - regc - emit (if appropriate) a byte of code */ STATIC void -regc(U8 b, char* s) +regc(pTHX_ U8 b, char* s) { dTHR; if (!SIZE_ONLY) @@ -2670,7 +2627,7 @@ regc(U8 b, char* s) * Means relocating the operand. */ STATIC void -reginsert(U8 op, regnode *opnd) +reginsert(pTHX_ U8 op, regnode *opnd) { dTHR; register regnode *src; @@ -2701,7 +2658,7 @@ reginsert(U8 op, regnode *opnd) - regtail - set the next-pointer at the end of a node chain of p to val. */ STATIC void -regtail(regnode *p, regnode *val) +regtail(pTHX_ regnode *p, regnode *val) { dTHR; register regnode *scan; @@ -2732,7 +2689,7 @@ regtail(regnode *p, regnode *val) - regoptail - regtail on operand of first argument; nop if operandless */ STATIC void -regoptail(regnode *p, regnode *val) +regoptail(pTHX_ regnode *p, regnode *val) { dTHR; /* "Operandless" and "op != BRANCH" are synonymous in practice. */ @@ -2752,7 +2709,7 @@ regoptail(regnode *p, regnode *val) - regcurly - a little FSA that accepts {\d+,?\d*} */ STATIC I32 -regcurly(register char *s) +regcurly(pTHX_ register char *s) { if (*s++ != '{') return FALSE; @@ -2771,7 +2728,7 @@ regcurly(register char *s) STATIC regnode * -dumpuntil(regnode *start, regnode *node, regnode *last, SV* sv, I32 l) +dumpuntil(pTHX_ regnode *start, regnode *node, regnode *last, SV* sv, I32 l) { #ifdef DEBUGGING register char op = EXACT; /* Arbitrary non-END op. */ @@ -2845,7 +2802,7 @@ dumpuntil(regnode *start, regnode *node, regnode *last, SV* sv, I32 l) - regdump - dump a regexp onto Perl_debug_log in vaguely comprehensible form */ void -regdump(regexp *r) +Perl_regdump(pTHX_ regexp *r) { #ifdef DEBUGGING dTHR; @@ -2910,7 +2867,7 @@ regdump(regexp *r) - regprop - printable representation of opcode */ void -regprop(SV *sv, regnode *o) +Perl_regprop(pTHX_ SV *sv, regnode *o) { #ifdef DEBUGGING dTHR; @@ -2940,7 +2897,7 @@ regprop(SV *sv, regnode *o) } void -pregfree(struct regexp *r) +Perl_pregfree(pTHX_ struct regexp *r) { dTHR; if (!r || (--r->refcnt > 0)) @@ -3004,7 +2961,7 @@ pregfree(struct regexp *r) * that bypass this code for speed.] */ regnode * -regnext(register regnode *p) +Perl_regnext(pTHX_ register regnode *p) { dTHR; register I32 offset; @@ -3020,7 +2977,7 @@ regnext(register regnode *p) } STATIC void -re_croak2(const char* pat1,const char* pat2,...) +re_croak2(pTHX_ const char* pat1,const char* pat2,...) { va_list args; STRLEN l1 = strlen(pat1); @@ -3056,7 +3013,7 @@ re_croak2(const char* pat1,const char* pat2,...) /* XXX Here's a total kludge. But we need to re-enter for swash routines. */ void -save_re_context(void) +Perl_save_re_context(pTHX) { dTHR; SAVEPPTR(PL_bostr); @@ -73,6 +73,7 @@ * regular-expression syntax might require a total rethink. */ #include "EXTERN.h" +#define PERL_IN_REGEXEC_C #include "perl.h" #include "regcomp.h" @@ -91,37 +92,16 @@ #define STATIC static #endif -#ifndef PERL_OBJECT -typedef I32 CHECKPOINT; - /* * Forwards. */ -static I32 regmatch (regnode *prog); -static I32 regrepeat (regnode *p, I32 max); -static I32 regrepeat_hard (regnode *p, I32 max, I32 *lp); -static I32 regtry (regexp *prog, char *startpos); - -static bool reginclass (char *p, I32 c); -static bool reginclassutf8 (regnode *f, U8* p); -static CHECKPOINT regcppush (I32 parenfloor); -static char * regcppop (void); -static char * regcp_set_to (I32 ss); -static void cache_re (regexp *prog); -static void restore_pos (void *arg); -#endif - #define REGINCLASS(p,c) (*(p) ? reginclass(p,c) : ANYOF_TEST(p,c)) #define REGINCLASSUTF8(f,p) (ARG1(f) ? reginclassutf8(f,p) : swash_fetch((SV*)PL_regdata->data[ARG2(f)],p)) #define CHR_SVLEN(sv) (UTF ? sv_len_utf8(sv) : SvCUR(sv)) #define CHR_DIST(a,b) (UTF ? utf8_distance(a,b) : a - b) -#ifndef PERL_OBJECT -static U8 * reghop (U8 *pos, I32 off); -static U8 * reghopmaybe (U8 *pos, I32 off); -#endif #define reghop_c(pos,off) ((char*)reghop((U8*)pos, off)) #define reghopmaybe_c(pos,off) ((char*)reghopmaybe((U8*)pos, off)) #define HOP(pos,off) (UTF ? reghop((U8*)pos, off) : (U8*)(pos + off)) @@ -130,7 +110,7 @@ static U8 * reghopmaybe (U8 *pos, I32 off); #define HOPMAYBEc(pos,off) ((char*)HOPMAYBE(pos,off)) STATIC CHECKPOINT -regcppush(I32 parenfloor) +regcppush(pTHX_ I32 parenfloor) { dTHR; int retval = PL_savestack_ix; @@ -163,7 +143,7 @@ regcppush(I32 parenfloor) lastcp, PL_savestack_ix) : 0); regcpblow(lastcp) STATIC char * -regcppop(void) +regcppop(pTHX) { dTHR; I32 i = SSPOPINT; @@ -207,7 +187,7 @@ regcppop(void) } STATIC char * -regcp_set_to(I32 ss) +regcp_set_to(pTHX_ I32 ss) { dTHR; I32 tmp = PL_savestack_ix; @@ -237,7 +217,7 @@ typedef struct re_cc_state - pregexec - match a regexp against a string */ I32 -pregexec(register regexp *prog, char *stringarg, register char *strend, +Perl_pregexec(pTHX_ register regexp *prog, char *stringarg, register char *strend, char *strbeg, I32 minend, SV *screamer, U32 nosave) /* strend: pointer to null at end of string */ /* strbeg: real beginning of string */ @@ -250,7 +230,7 @@ pregexec(register regexp *prog, char *stringarg, register char *strend, } STATIC void -cache_re(regexp *prog) +cache_re(pTHX_ regexp *prog) { dTHR; PL_regprecomp = prog->precomp; /* Needed for FAIL. */ @@ -263,7 +243,7 @@ cache_re(regexp *prog) } STATIC void -restore_pos(void *arg) +restore_pos(pTHX_ void *arg) { dTHR; if (PL_reg_eval_set) { @@ -283,7 +263,7 @@ restore_pos(void *arg) - regexec_flags - match a regexp against a string */ I32 -regexec_flags(register regexp *prog, char *stringarg, register char *strend, +Perl_regexec_flags(pTHX_ register regexp *prog, char *stringarg, register char *strend, char *strbeg, I32 minend, SV *sv, void *data, U32 flags) /* strend: pointer to null at end of string */ /* strbeg: real beginning of string */ @@ -1050,7 +1030,7 @@ phooey: - regtry - try match at specific point */ STATIC I32 /* 0 failure, 1 success */ -regtry(regexp *prog, char *startpos) +regtry(pTHX_ regexp *prog, char *startpos) { dTHR; register I32 i; @@ -1162,7 +1142,7 @@ regtry(regexp *prog, char *startpos) * advantage of machines that use a register save mask on subroutine entry. */ STATIC I32 /* 0 failure, 1 success */ -regmatch(regnode *prog) +regmatch(pTHX_ regnode *prog) { dTHR; register regnode *scan; /* Current node. */ @@ -2509,7 +2489,7 @@ no: * rather than incrementing count on every character. [Er, except utf8.]] */ STATIC I32 -regrepeat(regnode *p, I32 max) +regrepeat(pTHX_ regnode *p, I32 max) { dTHR; register char *scan; @@ -2723,7 +2703,7 @@ regrepeat(regnode *p, I32 max) */ STATIC I32 -regrepeat_hard(regnode *p, I32 max, I32 *lp) +regrepeat_hard(pTHX_ regnode *p, I32 max, I32 *lp) { dTHR; register char *scan; @@ -2774,7 +2754,7 @@ regrepeat_hard(regnode *p, I32 max, I32 *lp) */ STATIC bool -reginclass(register char *p, register I32 c) +reginclass(pTHX_ register char *p, register I32 c) { dTHR; char flags = *p; @@ -2811,7 +2791,7 @@ reginclass(register char *p, register I32 c) } STATIC bool -reginclassutf8(regnode *f, U8 *p) +reginclassutf8(pTHX_ regnode *f, U8 *p) { dTHR; char flags = ARG1(f); @@ -2849,7 +2829,7 @@ reginclassutf8(regnode *f, U8 *p) } STATIC U8 * -reghop(U8 *s, I32 off) +reghop(pTHX_ U8 *s, I32 off) { dTHR; if (off >= 0) { @@ -2871,7 +2851,7 @@ reghop(U8 *s, I32 off) } STATIC U8 * -reghopmaybe(U8* s, I32 off) +reghopmaybe(pTHX_ U8* s, I32 off) { dTHR; if (off >= 0) { @@ -8,6 +8,7 @@ */ #include "EXTERN.h" +#define PERL_IN_RUN_C #include "perl.h" /* @@ -23,7 +24,7 @@ #endif int -runops_standard(void) +Perl_runops_standard(pTHX) { dTHR; @@ -33,15 +34,8 @@ runops_standard(void) return 0; } -#ifdef DEBUGGING -#ifndef PERL_OBJECT -static void debprof (OP*o); -#endif - -#endif /* DEBUGGING */ - int -runops_debug(void) +Perl_runops_debug(pTHX) { #ifdef DEBUGGING dTHR; @@ -69,7 +63,7 @@ runops_debug(void) } I32 -debop(OP *o) +Perl_debop(pTHX_ OP *o) { #ifdef DEBUGGING SV *sv; @@ -99,7 +93,7 @@ debop(OP *o) } void -watch(char **addr) +Perl_watch(pTHX_ char **addr) { #ifdef DEBUGGING dTHR; @@ -111,7 +105,7 @@ watch(char **addr) } STATIC void -debprof(OP *o) +debprof(pTHX_ OP *o) { #ifdef DEBUGGING if (!PL_profiledata) @@ -121,7 +115,7 @@ debprof(OP *o) } void -debprofdump(void) +Perl_debprofdump(pTHX) { #ifdef DEBUGGING unsigned i; @@ -13,10 +13,11 @@ */ #include "EXTERN.h" +#define PERL_IN_SCOPE_C #include "perl.h" void * -default_protect(int *excpt, protect_body_t body, ...) +Perl_default_protect(pTHX_ int *excpt, protect_body_t body, ...) { dTHR; dJMPENV; @@ -40,7 +41,7 @@ default_protect(int *excpt, protect_body_t body, ...) } SV** -stack_grow(SV **sp, SV **p, int n) +Perl_stack_grow(pTHX_ SV **sp, SV **p, int n) { dTHR; #if defined(DEBUGGING) && !defined(USE_THREADS) @@ -67,7 +68,7 @@ stack_grow(SV **sp, SV **p, int n) #endif PERL_SI * -new_stackinfo(I32 stitems, I32 cxitems) +Perl_new_stackinfo(pTHX_ I32 stitems, I32 cxitems) { PERL_SI *si; PERL_CONTEXT *cxt; @@ -87,7 +88,7 @@ new_stackinfo(I32 stitems, I32 cxitems) } I32 -cxinc(void) +Perl_cxinc(pTHX) { dTHR; cxstack_max = GROW(cxstack_max); @@ -96,7 +97,7 @@ cxinc(void) } void -push_return(OP *retop) +Perl_push_return(pTHX_ OP *retop) { dTHR; if (PL_retstack_ix == PL_retstack_max) { @@ -107,7 +108,7 @@ push_return(OP *retop) } OP * -pop_return(void) +Perl_pop_return(pTHX) { dTHR; if (PL_retstack_ix > 0) @@ -117,7 +118,7 @@ pop_return(void) } void -push_scope(void) +Perl_push_scope(pTHX) { dTHR; if (PL_scopestack_ix == PL_scopestack_max) { @@ -129,7 +130,7 @@ push_scope(void) } void -pop_scope(void) +Perl_pop_scope(pTHX) { dTHR; I32 oldsave = PL_scopestack[--PL_scopestack_ix]; @@ -137,7 +138,7 @@ pop_scope(void) } void -markstack_grow(void) +Perl_markstack_grow(pTHX) { dTHR; I32 oldmax = PL_markstack_max - PL_markstack; @@ -149,7 +150,7 @@ markstack_grow(void) } void -savestack_grow(void) +Perl_savestack_grow(pTHX) { dTHR; PL_savestack_max = GROW(PL_savestack_max) + 4; @@ -159,7 +160,7 @@ savestack_grow(void) #undef GROW void -tmps_grow(I32 n) +Perl_tmps_grow(pTHX_ I32 n) { dTHR; #ifndef STRESS_REALLOC @@ -172,7 +173,7 @@ tmps_grow(I32 n) void -free_tmps(void) +Perl_free_tmps(pTHX) { dTHR; /* XXX should tmps_floor live in cxstack? */ @@ -188,7 +189,7 @@ free_tmps(void) } STATIC SV * -save_scalar_at(SV **sptr) +save_scalar_at(pTHX_ SV **sptr) { dTHR; register SV *sv; @@ -219,7 +220,7 @@ save_scalar_at(SV **sptr) } SV * -save_scalar(GV *gv) +Perl_save_scalar(pTHX_ GV *gv) { dTHR; SV **sptr = &GvSV(gv); @@ -231,7 +232,7 @@ save_scalar(GV *gv) } SV* -save_svref(SV **sptr) +Perl_save_svref(pTHX_ SV **sptr) { dTHR; SSCHECK(3); @@ -244,7 +245,7 @@ save_svref(SV **sptr) /* Like save_svref(), but doesn't deal with magic. Can be used to * restore a global SV to its prior contents, freeing new value. */ void -save_generic_svref(SV **sptr) +Perl_save_generic_svref(pTHX_ SV **sptr) { dTHR; SSCHECK(3); @@ -254,7 +255,7 @@ save_generic_svref(SV **sptr) } void -save_gp(GV *gv, I32 empty) +Perl_save_gp(pTHX_ GV *gv, I32 empty) { dTHR; SSCHECK(6); @@ -285,7 +286,7 @@ save_gp(GV *gv, I32 empty) } AV * -save_ary(GV *gv) +Perl_save_ary(pTHX_ GV *gv) { dTHR; AV *oav = GvAVn(gv); @@ -313,7 +314,7 @@ save_ary(GV *gv) } HV * -save_hash(GV *gv) +Perl_save_hash(pTHX_ GV *gv) { dTHR; HV *ohv, *hv; @@ -338,7 +339,7 @@ save_hash(GV *gv) } void -save_item(register SV *item) +Perl_save_item(pTHX_ register SV *item) { dTHR; register SV *sv = NEWSV(0,0); @@ -351,7 +352,7 @@ save_item(register SV *item) } void -save_int(int *intp) +Perl_save_int(pTHX_ int *intp) { dTHR; SSCHECK(3); @@ -361,7 +362,7 @@ save_int(int *intp) } void -save_long(long int *longp) +Perl_save_long(pTHX_ long int *longp) { dTHR; SSCHECK(3); @@ -371,7 +372,7 @@ save_long(long int *longp) } void -save_I32(I32 *intp) +Perl_save_I32(pTHX_ I32 *intp) { dTHR; SSCHECK(3); @@ -381,7 +382,7 @@ save_I32(I32 *intp) } void -save_I16(I16 *intp) +Perl_save_I16(pTHX_ I16 *intp) { dTHR; SSCHECK(3); @@ -391,7 +392,7 @@ save_I16(I16 *intp) } void -save_iv(IV *ivp) +Perl_save_iv(pTHX_ IV *ivp) { dTHR; SSCHECK(3); @@ -404,7 +405,7 @@ save_iv(IV *ivp) * force word-alignment and we'll miss the pointer. */ void -save_pptr(char **pptr) +Perl_save_pptr(pTHX_ char **pptr) { dTHR; SSCHECK(3); @@ -414,7 +415,7 @@ save_pptr(char **pptr) } void -save_sptr(SV **sptr) +Perl_save_sptr(pTHX_ SV **sptr) { dTHR; SSCHECK(3); @@ -424,7 +425,7 @@ save_sptr(SV **sptr) } SV ** -save_threadsv(PADOFFSET i) +Perl_save_threadsv(pTHX_ PADOFFSET i) { #ifdef USE_THREADS dTHR; @@ -440,7 +441,7 @@ save_threadsv(PADOFFSET i) } void -save_nogv(GV *gv) +Perl_save_nogv(pTHX_ GV *gv) { dTHR; SSCHECK(2); @@ -449,7 +450,7 @@ save_nogv(GV *gv) } void -save_hptr(HV **hptr) +Perl_save_hptr(pTHX_ HV **hptr) { dTHR; SSCHECK(3); @@ -459,7 +460,7 @@ save_hptr(HV **hptr) } void -save_aptr(AV **aptr) +Perl_save_aptr(pTHX_ AV **aptr) { dTHR; SSCHECK(3); @@ -469,7 +470,7 @@ save_aptr(AV **aptr) } void -save_freesv(SV *sv) +Perl_save_freesv(pTHX_ SV *sv) { dTHR; SSCHECK(2); @@ -478,7 +479,7 @@ save_freesv(SV *sv) } void -save_freeop(OP *o) +Perl_save_freeop(pTHX_ OP *o) { dTHR; SSCHECK(2); @@ -487,7 +488,7 @@ save_freeop(OP *o) } void -save_freepv(char *pv) +Perl_save_freepv(pTHX_ char *pv) { dTHR; SSCHECK(2); @@ -496,7 +497,7 @@ save_freepv(char *pv) } void -save_clearsv(SV **svp) +Perl_save_clearsv(pTHX_ SV **svp) { dTHR; SSCHECK(2); @@ -505,7 +506,7 @@ save_clearsv(SV **svp) } void -save_delete(HV *hv, char *key, I32 klen) +Perl_save_delete(pTHX_ HV *hv, char *key, I32 klen) { dTHR; SSCHECK(4); @@ -516,7 +517,7 @@ save_delete(HV *hv, char *key, I32 klen) } void -save_list(register SV **sarg, I32 maxsarg) +Perl_save_list(pTHX_ register SV **sarg, I32 maxsarg) { dTHR; register SV *sv; @@ -534,9 +535,9 @@ save_list(register SV **sarg, I32 maxsarg) void #ifdef PERL_OBJECT -save_destructor(DESTRUCTORFUNC f, void* p) +Perl_save_destructor(pTHX_ DESTRUCTORFUNC f, void* p) #else -save_destructor(void (*f) (void *), void *p) +Perl_save_destructor(pTHX_ void (*f) (void *), void *p) #endif { dTHR; @@ -547,7 +548,7 @@ save_destructor(void (*f) (void *), void *p) } void -save_aelem(AV *av, I32 idx, SV **sptr) +Perl_save_aelem(pTHX_ AV *av, I32 idx, SV **sptr) { dTHR; SSCHECK(4); @@ -559,7 +560,7 @@ save_aelem(AV *av, I32 idx, SV **sptr) } void -save_helem(HV *hv, SV *key, SV **sptr) +Perl_save_helem(pTHX_ HV *hv, SV *key, SV **sptr) { dTHR; SSCHECK(4); @@ -571,7 +572,7 @@ save_helem(HV *hv, SV *key, SV **sptr) } void -save_op(void) +Perl_save_op(pTHX) { dTHR; SSCHECK(2); @@ -580,7 +581,7 @@ save_op(void) } I32 -save_alloc(I32 size, I32 pad) +Perl_save_alloc(pTHX_ I32 size, I32 pad) { dTHR; register I32 start = pad + ((char*)&PL_savestack[PL_savestack_ix] @@ -598,7 +599,7 @@ save_alloc(I32 size, I32 pad) } void -leave_scope(I32 base) +Perl_leave_scope(pTHX_ I32 base) { dTHR; register SV *sv; @@ -827,7 +828,7 @@ leave_scope(I32 base) break; case SAVEt_DESTRUCTOR: ptr = SSPOPPTR; - (CALLDESTRUCTOR)(ptr); + CALLDESTRUCTOR(ptr); break; case SAVEt_REGCONTEXT: case SAVEt_ALLOC: @@ -892,7 +893,7 @@ leave_scope(I32 base) } void -cx_dump(PERL_CONTEXT *cx) +Perl_cx_dump(pTHX_ PERL_CONTEXT *cx) { #ifdef DEBUGGING dTHR; @@ -82,16 +82,13 @@ #define SAVEDELETE(h,k,l) \ save_delete(SOFT_CAST(HV*)(h), SOFT_CAST(char*)(k), (I32)(l)) #ifdef PERL_OBJECT -#define CALLDESTRUCTOR this->*SSPOPDPTR -#define SAVEDESTRUCTOR(f,p) \ - save_destructor((DESTRUCTORFUNC)(FUNC_NAME_TO_PTR(f)), \ - SOFT_CAST(void*)(p)) +#define CALLDESTRUCTOR(p) this->*SSPOPDPTR(p) #else -#define CALLDESTRUCTOR *SSPOPDPTR +#define CALLDESTRUCTOR(p) (*SSPOPDPTR)(aTHX_ p) +#endif #define SAVEDESTRUCTOR(f,p) \ - save_destructor(SOFT_CAST(void(*)(void*))(FUNC_NAME_TO_PTR(f)), \ + save_destructor((DESTRUCTORFUNC_t)(FUNC_NAME_TO_PTR(f)), \ SOFT_CAST(void*)(p)) -#endif #define SAVESTACK_POS() \ STMT_START { \ @@ -12,6 +12,7 @@ */ #include "EXTERN.h" +#define PERL_IN_SV_C #include "perl.h" #ifdef OVR_DBL_DIG @@ -39,36 +40,9 @@ #ifdef PERL_OBJECT #define FCALL this->*f #define VTBL this->*vtbl - #else /* !PERL_OBJECT */ - -static IV asIV (SV* sv); -static UV asUV (SV* sv); -static SV *more_sv (void); -static void more_xiv (void); -static void more_xnv (void); -static void more_xpv (void); -static void more_xrv (void); -static XPVIV *new_xiv (void); -static XPVNV *new_xnv (void); -static XPV *new_xpv (void); -static XRV *new_xrv (void); -static void del_xiv (XPVIV* p); -static void del_xnv (XPVNV* p); -static void del_xpv (XPV* p); -static void del_xrv (XRV* p); -static void sv_unglob (SV* sv); -static void sv_add_backref (SV *tsv, SV *sv); -static void sv_del_backref (SV *sv); - -#ifndef PURIFY -static void *my_safemalloc(MEM_SIZE size); -#endif - -typedef void (*SVFUNC) (SV*); #define VTBL *vtbl #define FCALL *f - #endif /* PERL_OBJECT */ #define SV_CHECK_THINKFIRST(sv) if (SvTHINKFIRST(sv)) sv_force_normal(sv) @@ -117,7 +91,7 @@ static I32 registry_size; #define REG_REMOVE(sv) REG_REPLACE(sv,sv,Nullsv) STATIC void -reg_add(SV *sv) +reg_add(pTHX_ SV *sv) { if (PL_sv_count >= (registry_size >> 1)) { @@ -144,14 +118,14 @@ reg_add(SV *sv) } STATIC void -reg_remove(SV *sv) +reg_remove(pTHX_ SV *sv) { REG_REMOVE(sv); --PL_sv_count; } STATIC void -visit(SVFUNC f) +visit(pTHX_ SVFUNC_t f) { I32 i; @@ -163,7 +137,7 @@ visit(SVFUNC f) } void -sv_add_arena(char *ptr, U32 size, U32 flags) +Perl_sv_add_arena(pTHX_ char *ptr, U32 size, U32 flags) { if (!(flags & SVf_FAKE)) Safefree(ptr); @@ -217,7 +191,7 @@ sv_add_arena(char *ptr, U32 size, U32 flags) } STMT_END STATIC void -del_sv(SV *p) +del_sv(pTHX_ SV *p) { if (PL_debug & 32768) { SV* sva; @@ -245,7 +219,7 @@ del_sv(SV *p) #endif /* DEBUGGING */ void -sv_add_arena(char *ptr, U32 size, U32 flags) +Perl_sv_add_arena(pTHX_ char *ptr, U32 size, U32 flags) { SV* sva = (SV*)ptr; register SV* sv; @@ -273,7 +247,7 @@ sv_add_arena(char *ptr, U32 size, U32 flags) /* sv_mutex must be held while calling more_sv() */ STATIC SV* -more_sv(void) +more_sv(pTHX) { register SV* sv; @@ -291,7 +265,7 @@ more_sv(void) } STATIC void -visit(SVFUNC f) +visit(pTHX_ SVFUNC_t f) { SV* sva; SV* sv; @@ -309,7 +283,7 @@ visit(SVFUNC f) #endif /* PURIFY */ STATIC void -do_report_used(SV *sv) +do_report_used(pTHX_ SV *sv) { if (SvTYPE(sv) != SVTYPEMASK) { /* XXX Perhaps this ought to go to Perl_debug_log, if DEBUGGING. */ @@ -319,13 +293,13 @@ do_report_used(SV *sv) } void -sv_report_used(void) +Perl_sv_report_used(pTHX) { visit(FUNC_NAME_TO_PTR(do_report_used)); } STATIC void -do_clean_objs(SV *sv) +do_clean_objs(pTHX_ SV *sv) { SV* rv; @@ -341,7 +315,7 @@ do_clean_objs(SV *sv) #ifndef DISABLE_DESTRUCTOR_KLUDGE STATIC void -do_clean_named_objs(SV *sv) +do_clean_named_objs(pTHX_ SV *sv) { if (SvTYPE(sv) == SVt_PVGV) { if ( SvOBJECT(GvSV(sv)) || @@ -358,7 +332,7 @@ do_clean_named_objs(SV *sv) #endif void -sv_clean_objs(void) +Perl_sv_clean_objs(pTHX) { PL_in_clean_objs = TRUE; visit(FUNC_NAME_TO_PTR(do_clean_objs)); @@ -370,7 +344,7 @@ sv_clean_objs(void) } STATIC void -do_clean_all(SV *sv) +do_clean_all(pTHX_ SV *sv) { DEBUG_D((PerlIO_printf(Perl_debug_log, "Cleaning loops: SV at 0x%lx\n", sv) );) SvFLAGS(sv) |= SVf_BREAK; @@ -378,7 +352,7 @@ do_clean_all(SV *sv) } void -sv_clean_all(void) +Perl_sv_clean_all(pTHX) { PL_in_clean_all = TRUE; visit(FUNC_NAME_TO_PTR(do_clean_all)); @@ -386,7 +360,7 @@ sv_clean_all(void) } void -sv_free_arenas(void) +Perl_sv_free_arenas(pTHX) { SV* sva; SV* svanext; @@ -412,7 +386,7 @@ sv_free_arenas(void) } STATIC XPVIV* -new_xiv(void) +new_xiv(pTHX) { IV* xiv; LOCK_SV_MUTEX; @@ -428,7 +402,7 @@ new_xiv(void) } STATIC void -del_xiv(XPVIV *p) +del_xiv(pTHX_ XPVIV *p) { IV* xiv = (IV*)((char*)(p) + STRUCT_OFFSET(XPVIV, xiv_iv)); LOCK_SV_MUTEX; @@ -438,7 +412,7 @@ del_xiv(XPVIV *p) } STATIC void -more_xiv(void) +more_xiv(pTHX) { register IV* xiv; register IV* xivend; @@ -459,7 +433,7 @@ more_xiv(void) } STATIC XPVNV* -new_xnv(void) +new_xnv(pTHX) { double* xnv; LOCK_SV_MUTEX; @@ -472,7 +446,7 @@ new_xnv(void) } STATIC void -del_xnv(XPVNV *p) +del_xnv(pTHX_ XPVNV *p) { double* xnv = (double*)((char*)(p) + STRUCT_OFFSET(XPVNV, xnv_nv)); LOCK_SV_MUTEX; @@ -482,7 +456,7 @@ del_xnv(XPVNV *p) } STATIC void -more_xnv(void) +more_xnv(pTHX) { register double* xnv; register double* xnvend; @@ -498,7 +472,7 @@ more_xnv(void) } STATIC XRV* -new_xrv(void) +new_xrv(pTHX) { XRV* xrv; LOCK_SV_MUTEX; @@ -511,7 +485,7 @@ new_xrv(void) } STATIC void -del_xrv(XRV *p) +del_xrv(pTHX_ XRV *p) { LOCK_SV_MUTEX; p->xrv_rv = (SV*)PL_xrv_root; @@ -520,7 +494,7 @@ del_xrv(XRV *p) } STATIC void -more_xrv(void) +more_xrv(pTHX) { register XRV* xrv; register XRV* xrvend; @@ -535,7 +509,7 @@ more_xrv(void) } STATIC XPV* -new_xpv(void) +new_xpv(pTHX) { XPV* xpv; LOCK_SV_MUTEX; @@ -548,7 +522,7 @@ new_xpv(void) } STATIC void -del_xpv(XPV *p) +del_xpv(pTHX_ XPV *p) { LOCK_SV_MUTEX; p->xpv_pv = (char*)PL_xpv_root; @@ -557,7 +531,7 @@ del_xpv(XPV *p) } STATIC void -more_xpv(void) +more_xpv(pTHX) { register XPV* xpv; register XPV* xpvend; @@ -608,7 +582,7 @@ more_xpv(void) # define my_safefree(s) safefree(s) #else STATIC void* -my_safemalloc(MEM_SIZE size) +my_safemalloc(pTHX_ MEM_SIZE size) { char *p; New(717, p, size, char); @@ -651,7 +625,7 @@ my_safemalloc(MEM_SIZE size) #define del_XPVIO(p) my_safefree((char*)p) bool -sv_upgrade(register SV *sv, U32 mt) +Perl_sv_upgrade(pTHX_ register SV *sv, U32 mt) { char* pv; U32 cur; @@ -925,7 +899,7 @@ sv_upgrade(register SV *sv, U32 mt) } int -sv_backoff(register SV *sv) +Perl_sv_backoff(pTHX_ register SV *sv) { assert(SvOOK(sv)); if (SvIVX(sv)) { @@ -940,7 +914,7 @@ sv_backoff(register SV *sv) } char * -sv_grow(register SV *sv, register STRLEN newlen) +Perl_sv_grow(pTHX_ register SV *sv, register STRLEN newlen) { register char *s; @@ -988,7 +962,7 @@ sv_grow(register SV *sv, register STRLEN newlen) } void -sv_setiv(register SV *sv, IV i) +Perl_sv_setiv(pTHX_ register SV *sv, IV i) { SV_CHECK_THINKFIRST(sv); switch (SvTYPE(sv)) { @@ -1021,14 +995,14 @@ sv_setiv(register SV *sv, IV i) } void -sv_setiv_mg(register SV *sv, IV i) +Perl_sv_setiv_mg(pTHX_ register SV *sv, IV i) { sv_setiv(sv,i); SvSETMAGIC(sv); } void -sv_setuv(register SV *sv, UV u) +Perl_sv_setuv(pTHX_ register SV *sv, UV u) { sv_setiv(sv, 0); SvIsUV_on(sv); @@ -1036,14 +1010,14 @@ sv_setuv(register SV *sv, UV u) } void -sv_setuv_mg(register SV *sv, UV u) +Perl_sv_setuv_mg(pTHX_ register SV *sv, UV u) { sv_setuv(sv,u); SvSETMAGIC(sv); } void -sv_setnv(register SV *sv, double num) +Perl_sv_setnv(pTHX_ register SV *sv, double num) { SV_CHECK_THINKFIRST(sv); switch (SvTYPE(sv)) { @@ -1075,14 +1049,14 @@ sv_setnv(register SV *sv, double num) } void -sv_setnv_mg(register SV *sv, double num) +Perl_sv_setnv_mg(pTHX_ register SV *sv, double num) { sv_setnv(sv,num); SvSETMAGIC(sv); } STATIC void -not_a_number(SV *sv) +not_a_number(pTHX_ SV *sv) { dTHR; char tmpbuf[64]; @@ -1146,7 +1120,7 @@ not_a_number(SV *sv) until proven guilty, assume that things are not that bad... */ IV -sv_2iv(register SV *sv) +Perl_sv_2iv(pTHX_ register SV *sv) { if (!sv) return 0; @@ -1289,7 +1263,7 @@ sv_2iv(register SV *sv) } UV -sv_2uv(register SV *sv) +Perl_sv_2uv(pTHX_ register SV *sv) { if (!sv) return 0; @@ -1449,7 +1423,7 @@ sv_2uv(register SV *sv) } double -sv_2nv(register SV *sv) +Perl_sv_2nv(pTHX_ register SV *sv) { if (!sv) return 0.0; @@ -1545,7 +1519,7 @@ sv_2nv(register SV *sv) } STATIC IV -asIV(SV *sv) +asIV(pTHX_ SV *sv) { I32 numtype = looks_like_number(sv); double d; @@ -1563,7 +1537,7 @@ asIV(SV *sv) } STATIC UV -asUV(SV *sv) +asUV(pTHX_ SV *sv) { I32 numtype = looks_like_number(sv); @@ -1594,7 +1568,7 @@ asUV(SV *sv) */ I32 -looks_like_number(SV *sv) +Perl_looks_like_number(pTHX_ SV *sv) { /* XXXX 64-bit? It may be not IS_NUMBER_TO_INT_BY_ATOL, but * using atof() may lose precision. */ @@ -1689,14 +1663,14 @@ looks_like_number(SV *sv) } char * -sv_2pv_nolen(register SV *sv) +Perl_sv_2pv_nolen(pTHX_ register SV *sv) { STRLEN n_a; return sv_2pv(sv, &n_a); } /* We assume that buf is at least TYPE_CHARS(UV) long. */ -STATIC char * +static char * uiv_2buf(char *buf, IV iv, UV uv, int is_uv, char **peob) { STRLEN len; @@ -1724,7 +1698,7 @@ uiv_2buf(char *buf, IV iv, UV uv, int is_uv, char **peob) } char * -sv_2pv(register SV *sv, STRLEN *lp) +Perl_sv_2pv(pTHX_ register SV *sv, STRLEN *lp) { register char *s; int olderrno; @@ -1987,7 +1961,7 @@ sv_2pv(register SV *sv, STRLEN *lp) /* This function is only called on magical items */ bool -sv_2bool(register SV *sv) +Perl_sv_2bool(pTHX_ register SV *sv) { if (SvGMAGICAL(sv)) mg_get(sv); @@ -2029,7 +2003,7 @@ sv_2bool(register SV *sv) */ void -sv_setsv(SV *dstr, register SV *sstr) +Perl_sv_setsv(pTHX_ SV *dstr, register SV *sstr) { dTHR; register U32 sflags; @@ -2405,14 +2379,14 @@ sv_setsv(SV *dstr, register SV *sstr) } void -sv_setsv_mg(SV *dstr, register SV *sstr) +Perl_sv_setsv_mg(pTHX_ SV *dstr, register SV *sstr) { sv_setsv(dstr,sstr); SvSETMAGIC(dstr); } void -sv_setpvn(register SV *sv, register const char *ptr, register STRLEN len) +Perl_sv_setpvn(pTHX_ register SV *sv, register const char *ptr, register STRLEN len) { register char *dptr; assert(len >= 0); /* STRLEN is probably unsigned, so this may @@ -2434,14 +2408,14 @@ sv_setpvn(register SV *sv, register const char *ptr, register STRLEN len) } void -sv_setpvn_mg(register SV *sv, register const char *ptr, register STRLEN len) +Perl_sv_setpvn_mg(pTHX_ register SV *sv, register const char *ptr, register STRLEN len) { sv_setpvn(sv,ptr,len); SvSETMAGIC(sv); } void -sv_setpv(register SV *sv, register const char *ptr) +Perl_sv_setpv(pTHX_ register SV *sv, register const char *ptr) { register STRLEN len; @@ -2461,14 +2435,14 @@ sv_setpv(register SV *sv, register const char *ptr) } void -sv_setpv_mg(register SV *sv, register const char *ptr) +Perl_sv_setpv_mg(pTHX_ register SV *sv, register const char *ptr) { sv_setpv(sv,ptr); SvSETMAGIC(sv); } void -sv_usepvn(register SV *sv, register char *ptr, register STRLEN len) +Perl_sv_usepvn(pTHX_ register SV *sv, register char *ptr, register STRLEN len) { SV_CHECK_THINKFIRST(sv); (void)SvUPGRADE(sv, SVt_PV); @@ -2489,14 +2463,14 @@ sv_usepvn(register SV *sv, register char *ptr, register STRLEN len) } void -sv_usepvn_mg(register SV *sv, register char *ptr, register STRLEN len) +Perl_sv_usepvn_mg(pTHX_ register SV *sv, register char *ptr, register STRLEN len) { sv_usepvn(sv,ptr,len); SvSETMAGIC(sv); } void -sv_force_normal(register SV *sv) +Perl_sv_force_normal(pTHX_ register SV *sv) { if (SvREADONLY(sv)) { dTHR; @@ -2510,7 +2484,7 @@ sv_force_normal(register SV *sv) } void -sv_chop(register SV *sv, register char *ptr) /* like set but assuming ptr is in sv */ +Perl_sv_chop(pTHX_ register SV *sv, register char *ptr) /* like set but assuming ptr is in sv */ { @@ -2542,7 +2516,7 @@ sv_chop(register SV *sv, register char *ptr) /* like set but assuming ptr is in } void -sv_catpvn(register SV *sv, register const char *ptr, register STRLEN len) +Perl_sv_catpvn(pTHX_ register SV *sv, register const char *ptr, register STRLEN len) { STRLEN tlen; char *junk; @@ -2559,14 +2533,14 @@ sv_catpvn(register SV *sv, register const char *ptr, register STRLEN len) } void -sv_catpvn_mg(register SV *sv, register const char *ptr, register STRLEN len) +Perl_sv_catpvn_mg(pTHX_ register SV *sv, register const char *ptr, register STRLEN len) { sv_catpvn(sv,ptr,len); SvSETMAGIC(sv); } void -sv_catsv(SV *dstr, register SV *sstr) +Perl_sv_catsv(pTHX_ SV *dstr, register SV *sstr) { char *s; STRLEN len; @@ -2577,14 +2551,14 @@ sv_catsv(SV *dstr, register SV *sstr) } void -sv_catsv_mg(SV *dstr, register SV *sstr) +Perl_sv_catsv_mg(pTHX_ SV *dstr, register SV *sstr) { sv_catsv(dstr,sstr); SvSETMAGIC(dstr); } void -sv_catpv(register SV *sv, register const char *ptr) +Perl_sv_catpv(pTHX_ register SV *sv, register const char *ptr) { register STRLEN len; STRLEN tlen; @@ -2604,14 +2578,14 @@ sv_catpv(register SV *sv, register const char *ptr) } void -sv_catpv_mg(register SV *sv, register const char *ptr) +Perl_sv_catpv_mg(pTHX_ register SV *sv, register const char *ptr) { sv_catpv(sv,ptr); SvSETMAGIC(sv); } SV * -newSV(STRLEN len) +Perl_newSV(pTHX_ STRLEN len) { register SV *sv; @@ -2626,7 +2600,7 @@ newSV(STRLEN len) /* name is assumed to contain an SV* if (name && namelen == HEf_SVKEY) */ void -sv_magic(register SV *sv, SV *obj, int how, const char *name, I32 namlen) +Perl_sv_magic(pTHX_ register SV *sv, SV *obj, int how, const char *name, I32 namlen) { MAGIC* mg; @@ -2783,7 +2757,7 @@ sv_magic(register SV *sv, SV *obj, int how, const char *name, I32 namlen) } int -sv_unmagic(SV *sv, int type) +Perl_sv_unmagic(pTHX_ SV *sv, int type) { MAGIC* mg; MAGIC** mgp; @@ -2817,7 +2791,7 @@ sv_unmagic(SV *sv, int type) } SV * -sv_rvweaken(SV *sv) +Perl_sv_rvweaken(pTHX_ SV *sv) { SV *tsv; if (!SvOK(sv)) /* let undefs pass */ @@ -2838,7 +2812,7 @@ sv_rvweaken(SV *sv) } STATIC void -sv_add_backref(SV *tsv, SV *sv) +sv_add_backref(pTHX_ SV *tsv, SV *sv) { AV *av; MAGIC *mg; @@ -2853,7 +2827,7 @@ sv_add_backref(SV *tsv, SV *sv) } STATIC void -sv_del_backref(SV *sv) +sv_del_backref(pTHX_ SV *sv) { AV *av; SV **svp; @@ -2874,7 +2848,7 @@ sv_del_backref(SV *sv) } void -sv_insert(SV *bigstr, STRLEN offset, STRLEN len, char *little, STRLEN littlelen) +Perl_sv_insert(pTHX_ SV *bigstr, STRLEN offset, STRLEN len, char *little, STRLEN littlelen) { register char *big; register char *mid; @@ -2959,7 +2933,7 @@ sv_insert(SV *bigstr, STRLEN offset, STRLEN len, char *little, STRLEN littlelen) /* make sv point to what nstr did */ void -sv_replace(register SV *sv, register SV *nsv) +Perl_sv_replace(pTHX_ register SV *sv, register SV *nsv) { U32 refcnt = SvREFCNT(sv); SV_CHECK_THINKFIRST(sv); @@ -2985,7 +2959,7 @@ sv_replace(register SV *sv, register SV *nsv) } void -sv_clear(register SV *sv) +Perl_sv_clear(pTHX_ register SV *sv) { HV* stash; assert(sv); @@ -3015,8 +2989,8 @@ sv_clear(register SV *sv) PUSHMARK(SP); PUSHs(&tmpref); PUTBACK; - perl_call_sv((SV*)GvCV(destructor), - G_DISCARD|G_EVAL|G_KEEPERR); + call_sv((SV*)GvCV(destructor), + G_DISCARD|G_EVAL|G_KEEPERR); SvREFCNT(sv)--; POPSTACK; SPAGAIN; @@ -3171,7 +3145,7 @@ sv_clear(register SV *sv) } SV * -sv_newref(SV *sv) +Perl_sv_newref(pTHX_ SV *sv) { if (sv) ATOMIC_INC(SvREFCNT(sv)); @@ -3179,7 +3153,7 @@ sv_newref(SV *sv) } void -sv_free(SV *sv) +Perl_sv_free(pTHX_ SV *sv) { int refcount_is_zero; @@ -3218,7 +3192,7 @@ sv_free(SV *sv) } STRLEN -sv_len(register SV *sv) +Perl_sv_len(pTHX_ register SV *sv) { char *junk; STRLEN len; @@ -3234,7 +3208,7 @@ sv_len(register SV *sv) } STRLEN -sv_len_utf8(register SV *sv) +Perl_sv_len_utf8(pTHX_ register SV *sv) { U8 *s; U8 *send; @@ -3259,7 +3233,7 @@ sv_len_utf8(register SV *sv) } void -sv_pos_u2b(register SV *sv, I32* offsetp, I32* lenp) +Perl_sv_pos_u2b(pTHX_ register SV *sv, I32* offsetp, I32* lenp) { U8 *start; U8 *s; @@ -3290,7 +3264,7 @@ sv_pos_u2b(register SV *sv, I32* offsetp, I32* lenp) } void -sv_pos_b2u(register SV *sv, I32* offsetp) +Perl_sv_pos_b2u(pTHX_ register SV *sv, I32* offsetp) { U8 *s; U8 *send; @@ -3317,7 +3291,7 @@ sv_pos_b2u(register SV *sv, I32* offsetp) } I32 -sv_eq(register SV *str1, register SV *str2) +Perl_sv_eq(pTHX_ register SV *str1, register SV *str2) { char *pv1; STRLEN cur1; @@ -3343,7 +3317,7 @@ sv_eq(register SV *str1, register SV *str2) } I32 -sv_cmp(register SV *str1, register SV *str2) +Perl_sv_cmp(pTHX_ register SV *str1, register SV *str2) { STRLEN cur1 = 0; char *pv1 = str1 ? SvPV(str1, cur1) : (char *) NULL; @@ -3369,7 +3343,7 @@ sv_cmp(register SV *str1, register SV *str2) } I32 -sv_cmp_locale(register SV *sv1, register SV *sv2) +Perl_sv_cmp_locale(pTHX_ register SV *sv1, register SV *sv2) { #ifdef USE_LOCALE_COLLATE @@ -3424,7 +3398,7 @@ sv_cmp_locale(register SV *sv1, register SV *sv2) * according to the locale settings. */ char * -sv_collxfrm(SV *sv, STRLEN *nxp) +Perl_sv_collxfrm(pTHX_ SV *sv, STRLEN *nxp) { MAGIC *mg; @@ -3470,7 +3444,7 @@ sv_collxfrm(SV *sv, STRLEN *nxp) #endif /* USE_LOCALE_COLLATE */ char * -sv_gets(register SV *sv, register PerlIO *fp, I32 append) +Perl_sv_gets(pTHX_ register SV *sv, register PerlIO *fp, I32 append) { dTHR; char *rsptr; @@ -3734,7 +3708,7 @@ screamer2: void -sv_inc(register SV *sv) +Perl_sv_inc(pTHX_ register SV *sv) { register char *d; int flags; @@ -3836,7 +3810,7 @@ sv_inc(register SV *sv) } void -sv_dec(register SV *sv) +Perl_sv_dec(pTHX_ register SV *sv) { int flags; @@ -3902,7 +3876,7 @@ sv_dec(register SV *sv) * permanent location. */ SV * -sv_mortalcopy(SV *oldstr) +Perl_sv_mortalcopy(pTHX_ SV *oldstr) { dTHR; register SV *sv; @@ -3916,7 +3890,7 @@ sv_mortalcopy(SV *oldstr) } SV * -sv_newmortal(void) +Perl_sv_newmortal(pTHX) { dTHR; register SV *sv; @@ -3931,7 +3905,7 @@ sv_newmortal(void) /* same thing without the copying */ SV * -sv_2mortal(register SV *sv) +Perl_sv_2mortal(pTHX_ register SV *sv) { dTHR; if (!sv) @@ -3945,7 +3919,7 @@ sv_2mortal(register SV *sv) } SV * -newSVpv(const char *s, STRLEN len) +Perl_newSVpv(pTHX_ const char *s, STRLEN len) { register SV *sv; @@ -3957,7 +3931,7 @@ newSVpv(const char *s, STRLEN len) } SV * -newSVpvn(const char *s, STRLEN len) +Perl_newSVpvn(pTHX_ const char *s, STRLEN len) { register SV *sv; @@ -3967,7 +3941,7 @@ newSVpvn(const char *s, STRLEN len) } SV * -newSVpvf(const char* pat, ...) +Perl_newSVpvf(pTHX_ const char* pat, ...) { register SV *sv; va_list args; @@ -3981,7 +3955,7 @@ newSVpvf(const char* pat, ...) SV * -newSVnv(double n) +Perl_newSVnv(pTHX_ double n) { register SV *sv; @@ -3991,7 +3965,7 @@ newSVnv(double n) } SV * -newSViv(IV i) +Perl_newSViv(pTHX_ IV i) { register SV *sv; @@ -4001,7 +3975,7 @@ newSViv(IV i) } SV * -newRV_noinc(SV *tmpRef) +Perl_newRV_noinc(pTHX_ SV *tmpRef) { dTHR; register SV *sv; @@ -4015,7 +3989,7 @@ newRV_noinc(SV *tmpRef) } SV * -newRV(SV *tmpRef) +Perl_newRV(pTHX_ SV *tmpRef) { return newRV_noinc(SvREFCNT_inc(tmpRef)); } @@ -4023,7 +3997,7 @@ newRV(SV *tmpRef) /* make an exact duplicate of old */ SV * -newSVsv(register SV *old) +Perl_newSVsv(pTHX_ register SV *old) { register SV *sv; @@ -4045,7 +4019,7 @@ newSVsv(register SV *old) } void -sv_reset(register char *s, HV *stash) +Perl_sv_reset(pTHX_ register char *s, HV *stash) { register HE *entry; register GV *gv; @@ -4117,7 +4091,7 @@ sv_reset(register char *s, HV *stash) } IO* -sv_2io(SV *sv) +Perl_sv_2io(pTHX_ SV *sv) { IO* io; GV* gv; @@ -4151,7 +4125,7 @@ sv_2io(SV *sv) } CV * -sv_2cv(SV *sv, HV **st, GV **gvp, I32 lref) +Perl_sv_2cv(pTHX_ SV *sv, HV **st, GV **gvp, I32 lref) { GV *gv; CV *cv; @@ -4224,7 +4198,7 @@ sv_2cv(SV *sv, HV **st, GV **gvp, I32 lref) } I32 -sv_true(register SV *sv) +Perl_sv_true(pTHX_ register SV *sv) { dTHR; if (!sv) @@ -4252,7 +4226,7 @@ sv_true(register SV *sv) } IV -sv_iv(register SV *sv) +Perl_sv_iv(pTHX_ register SV *sv) { if (SvIOK(sv)) { if (SvIsUV(sv)) @@ -4263,7 +4237,7 @@ sv_iv(register SV *sv) } UV -sv_uv(register SV *sv) +Perl_sv_uv(pTHX_ register SV *sv) { if (SvIOK(sv)) { if (SvIsUV(sv)) @@ -4274,7 +4248,7 @@ sv_uv(register SV *sv) } double -sv_nv(register SV *sv) +Perl_sv_nv(pTHX_ register SV *sv) { if (SvNOK(sv)) return SvNVX(sv); @@ -4282,7 +4256,7 @@ sv_nv(register SV *sv) } char * -sv_pv(SV *sv) +Perl_sv_pv(pTHX_ SV *sv) { STRLEN n_a; @@ -4293,7 +4267,7 @@ sv_pv(SV *sv) } char * -sv_pvn(SV *sv, STRLEN *lp) +Perl_sv_pvn(pTHX_ SV *sv, STRLEN *lp) { if (SvPOK(sv)) { *lp = SvCUR(sv); @@ -4303,7 +4277,7 @@ sv_pvn(SV *sv, STRLEN *lp) } char * -sv_pvn_force(SV *sv, STRLEN *lp) +Perl_sv_pvn_force(pTHX_ SV *sv, STRLEN *lp) { char *s; @@ -4343,7 +4317,7 @@ sv_pvn_force(SV *sv, STRLEN *lp) } char * -sv_reftype(SV *sv, int ob) +Perl_sv_reftype(pTHX_ SV *sv, int ob) { if (ob && SvOBJECT(sv)) return HvNAME(SvSTASH(sv)); @@ -4374,7 +4348,7 @@ sv_reftype(SV *sv, int ob) } int -sv_isobject(SV *sv) +Perl_sv_isobject(pTHX_ SV *sv) { if (!sv) return 0; @@ -4389,7 +4363,7 @@ sv_isobject(SV *sv) } int -sv_isa(SV *sv, const char *name) +Perl_sv_isa(pTHX_ SV *sv, const char *name) { if (!sv) return 0; @@ -4405,7 +4379,7 @@ sv_isa(SV *sv, const char *name) } SV* -newSVrv(SV *rv, const char *classname) +Perl_newSVrv(pTHX_ SV *rv, const char *classname) { dTHR; SV *sv; @@ -4430,7 +4404,7 @@ newSVrv(SV *rv, const char *classname) } SV* -sv_setref_pv(SV *rv, const char *classname, void *pv) +Perl_sv_setref_pv(pTHX_ SV *rv, const char *classname, void *pv) { if (!pv) { sv_setsv(rv, &PL_sv_undef); @@ -4442,28 +4416,28 @@ sv_setref_pv(SV *rv, const char *classname, void *pv) } SV* -sv_setref_iv(SV *rv, const char *classname, IV iv) +Perl_sv_setref_iv(pTHX_ SV *rv, const char *classname, IV iv) { sv_setiv(newSVrv(rv,classname), iv); return rv; } SV* -sv_setref_nv(SV *rv, const char *classname, double nv) +Perl_sv_setref_nv(pTHX_ SV *rv, const char *classname, double nv) { sv_setnv(newSVrv(rv,classname), nv); return rv; } SV* -sv_setref_pvn(SV *rv, const char *classname, char *pv, STRLEN n) +Perl_sv_setref_pvn(pTHX_ SV *rv, const char *classname, char *pv, STRLEN n) { sv_setpvn(newSVrv(rv,classname), pv, n); return rv; } SV* -sv_bless(SV *sv, HV *stash) +Perl_sv_bless(pTHX_ SV *sv, HV *stash) { dTHR; SV *tmpRef; @@ -4494,7 +4468,7 @@ sv_bless(SV *sv, HV *stash) } STATIC void -sv_unglob(SV *sv) +sv_unglob(pTHX_ SV *sv) { assert(SvTYPE(sv) == SVt_PVGV); SvFAKE_off(sv); @@ -4512,7 +4486,7 @@ sv_unglob(SV *sv) } void -sv_unref(SV *sv) +Perl_sv_unref(pTHX_ SV *sv) { SV* rv = SvRV(sv); @@ -4531,13 +4505,13 @@ sv_unref(SV *sv) } void -sv_taint(SV *sv) +Perl_sv_taint(pTHX_ SV *sv) { sv_magic((sv), Nullsv, 't', Nullch, 0); } void -sv_untaint(SV *sv) +Perl_sv_untaint(pTHX_ SV *sv) { if (SvTYPE(sv) >= SVt_PVMG && SvMAGIC(sv)) { MAGIC *mg = mg_find(sv, 't'); @@ -4547,7 +4521,7 @@ sv_untaint(SV *sv) } bool -sv_tainted(SV *sv) +Perl_sv_tainted(pTHX_ SV *sv) { if (SvTYPE(sv) >= SVt_PVMG && SvMAGIC(sv)) { MAGIC *mg = mg_find(sv, 't'); @@ -4558,7 +4532,7 @@ sv_tainted(SV *sv) } void -sv_setpviv(SV *sv, IV iv) +Perl_sv_setpviv(pTHX_ SV *sv, IV iv) { char buf[TYPE_CHARS(UV)]; char *ebuf; @@ -4569,7 +4543,7 @@ sv_setpviv(SV *sv, IV iv) void -sv_setpviv_mg(SV *sv, IV iv) +Perl_sv_setpviv_mg(pTHX_ SV *sv, IV iv) { char buf[TYPE_CHARS(UV)]; char *ebuf; @@ -4580,7 +4554,7 @@ sv_setpviv_mg(SV *sv, IV iv) } void -sv_setpvf(SV *sv, const char* pat, ...) +Perl_sv_setpvf(pTHX_ SV *sv, const char* pat, ...) { va_list args; va_start(args, pat); @@ -4590,7 +4564,7 @@ sv_setpvf(SV *sv, const char* pat, ...) void -sv_setpvf_mg(SV *sv, const char* pat, ...) +Perl_sv_setpvf_mg(pTHX_ SV *sv, const char* pat, ...) { va_list args; va_start(args, pat); @@ -4600,7 +4574,7 @@ sv_setpvf_mg(SV *sv, const char* pat, ...) } void -sv_catpvf(SV *sv, const char* pat, ...) +Perl_sv_catpvf(pTHX_ SV *sv, const char* pat, ...) { va_list args; va_start(args, pat); @@ -4609,7 +4583,7 @@ sv_catpvf(SV *sv, const char* pat, ...) } void -sv_catpvf_mg(SV *sv, const char* pat, ...) +Perl_sv_catpvf_mg(pTHX_ SV *sv, const char* pat, ...) { va_list args; va_start(args, pat); @@ -4619,14 +4593,14 @@ sv_catpvf_mg(SV *sv, const char* pat, ...) } void -sv_vsetpvfn(SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *used_locale) +Perl_sv_vsetpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *used_locale) { sv_setpvn(sv, "", 0); sv_vcatpvfn(sv, pat, patlen, args, svargs, svmax, used_locale); } void -sv_vcatpvfn(SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *used_locale) +Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV **svargs, I32 svmax, bool *used_locale) { dTHR; char *p; @@ -5,10 +5,11 @@ */ #include "EXTERN.h" +#define PERL_IN_TAINT_C #include "perl.h" void -taint_proper(const char *f, char *s) +Perl_taint_proper(pTHX_ const char *f, char *s) { dTHR; /* just for taint */ char *ug; @@ -33,7 +34,7 @@ taint_proper(const char *f, char *s) } void -taint_env(void) +Perl_taint_env(pTHX) { SV** svp; MAGIC* mg; @@ -12,52 +12,12 @@ */ #include "EXTERN.h" +#define PERL_IN_TOKE_C #include "perl.h" #define yychar PL_yychar #define yylval PL_yylval -#ifndef PERL_OBJECT -static void check_uni (void); -static void force_next (I32 type); -static char *force_version (char *start); -static char *force_word (char *start, int token, int check_keyword, int allow_pack, int allow_tick); -static SV *tokeq (SV *sv); -static char *scan_const (char *start); -static char *scan_formline (char *s); -static char *scan_heredoc (char *s); -static char *scan_ident (char *s, char *send, char *dest, STRLEN destlen, - I32 ck_uni); -static char *scan_inputsymbol (char *start); -static char *scan_pat (char *start, I32 type); -static char *scan_str (char *start); -static char *scan_subst (char *start); -static char *scan_trans (char *start); -static char *scan_word (char *s, char *dest, STRLEN destlen, - int allow_package, STRLEN *slp); -static char *skipspace (char *s); -static void checkcomma (char *s, char *name, char *what); -static void force_ident (char *s, int kind); -static void incline (char *s); -static int intuit_method (char *s, GV *gv); -static int intuit_more (char *s); -static I32 lop (I32 f, expectation x, char *s); -static void missingterm (char *s); -static void no_op (char *what, char *s); -static void set_csh (void); -static I32 sublex_done (void); -static I32 sublex_push (void); -static I32 sublex_start (void); -#ifdef CRIPPLED_CC -static int uni (I32 f, char *s); -#endif -static char * filter_gets (SV *sv, PerlIO *fp, STRLEN append); -static void restore_rsfp (void *f); -static SV *new_constant (char *s, STRLEN len, char *key, SV *sv, SV *pv, char *type); -static void restore_expect (void *e); -static void restore_lex_expect (void *e); -#endif /* PERL_OBJECT */ - static char ident_too_long[] = "Identifier too long"; #define UTF (PL_hints & HINT_UTF8) @@ -121,6 +81,7 @@ int* yychar_pointer = NULL; # define yylval (*yylval_pointer) # define yychar (*yychar_pointer) # define PERL_YYLEX_PARAM yylval_pointer,yychar_pointer +# define yylex(a,b) Perl_yylex(aTHX_ a, b) #else # define PERL_YYLEX_PARAM #endif @@ -172,7 +133,7 @@ int* yychar_pointer = NULL; #define OLDLOP(f) return(yylval.ival=f,PL_expect = XTERM,PL_bufptr = s,(int)LSTOP) STATIC int -ao(int toketype) +ao(pTHX_ int toketype) { if (*PL_bufptr == '=') { PL_bufptr++; @@ -186,7 +147,7 @@ ao(int toketype) } STATIC void -no_op(char *what, char *s) +no_op(pTHX_ char *what, char *s) { char *oldbp = PL_bufptr; bool is_first = (PL_oldbufptr == PL_linestart); @@ -211,7 +172,7 @@ no_op(char *what, char *s) } STATIC void -missingterm(char *s) +missingterm(pTHX_ char *s) { char tmpbuf[3]; char q; @@ -243,7 +204,7 @@ missingterm(char *s) } void -deprecate(char *s) +Perl_deprecate(pTHX_ char *s) { dTHR; if (ckWARN(WARN_DEPRECATED)) @@ -251,7 +212,7 @@ deprecate(char *s) } STATIC void -depcom(void) +depcom(pTHX) { deprecate("comma-less variable list"); } @@ -259,7 +220,7 @@ depcom(void) #ifdef WIN32 STATIC I32 -win32_textfilter(int idx, SV *sv, int maxlen) +win32_textfilter(pTHX_ int idx, SV *sv, int maxlen) { I32 count = FILTER_READ(idx+1, sv, maxlen); if (count > 0 && !maxlen) @@ -268,10 +229,8 @@ win32_textfilter(int idx, SV *sv, int maxlen) } #endif -#ifndef PERL_OBJECT - STATIC I32 -utf16_textfilter(int idx, SV *sv, int maxlen) +utf16_textfilter(pTHX_ int idx, SV *sv, int maxlen) { I32 count = FILTER_READ(idx+1, sv, maxlen); if (count) { @@ -286,7 +245,7 @@ utf16_textfilter(int idx, SV *sv, int maxlen) } STATIC I32 -utf16rev_textfilter(int idx, SV *sv, int maxlen) +utf16rev_textfilter(pTHX_ int idx, SV *sv, int maxlen) { I32 count = FILTER_READ(idx+1, sv, maxlen); if (count) { @@ -300,10 +259,8 @@ utf16rev_textfilter(int idx, SV *sv, int maxlen) return count; } -#endif - void -lex_start(SV *line) +Perl_lex_start(pTHX_ SV *line) { dTHR; char *s; @@ -368,13 +325,13 @@ lex_start(SV *line) } void -lex_end(void) +Perl_lex_end(pTHX) { PL_doextract = FALSE; } STATIC void -restore_rsfp(void *f) +restore_rsfp(pTHX_ void *f) { PerlIO *fp = (PerlIO*)f; @@ -386,21 +343,21 @@ restore_rsfp(void *f) } STATIC void -restore_expect(void *e) +restore_expect(pTHX_ void *e) { /* a safe way to store a small integer in a pointer */ PL_expect = (expectation)((char *)e - PL_tokenbuf); } STATIC void -restore_lex_expect(void *e) +restore_lex_expect(pTHX_ void *e) { /* a safe way to store a small integer in a pointer */ PL_lex_expect = (expectation)((char *)e - PL_tokenbuf); } STATIC void -incline(char *s) +incline(pTHX_ char *s) { dTHR; char *t; @@ -441,7 +398,7 @@ incline(char *s) } STATIC char * -skipspace(register char *s) +skipspace(pTHX_ register char *s) { dTHR; if (PL_lex_formbrack && PL_lex_brackets <= PL_lex_formbrack) { @@ -504,7 +461,7 @@ skipspace(register char *s) } STATIC void -check_uni(void) +check_uni(pTHX) { char *s; char ch; @@ -529,7 +486,7 @@ check_uni(void) #define UNI(f) return uni(f,s) STATIC int -uni(I32 f, char *s) +uni(pTHX_ I32 f, char *s) { yylval.ival = f; PL_expect = XTERM; @@ -550,7 +507,7 @@ uni(I32 f, char *s) #define LOP(f,x) return lop(f,x,s) STATIC I32 -lop(I32 f, expectation x, char *s) +lop(pTHX_ I32 f, expectation x, char *s) { dTHR; yylval.ival = f; @@ -571,7 +528,7 @@ lop(I32 f, expectation x, char *s) } STATIC void -force_next(I32 type) +force_next(pTHX_ I32 type) { PL_nexttype[PL_nexttoke] = type; PL_nexttoke++; @@ -583,7 +540,7 @@ force_next(I32 type) } STATIC char * -force_word(register char *start, int token, int check_keyword, int allow_pack, int allow_initial_tick) +force_word(pTHX_ register char *start, int token, int check_keyword, int allow_pack, int allow_initial_tick) { register char *s; STRLEN len; @@ -613,7 +570,7 @@ force_word(register char *start, int token, int check_keyword, int allow_pack, i } STATIC void -force_ident(register char *s, int kind) +force_ident(pTHX_ register char *s, int kind) { if (s && *s) { OP* o = (OP*)newSVOP(OP_CONST, 0, newSVpv(s,0)); @@ -636,7 +593,7 @@ force_ident(register char *s, int kind) } STATIC char * -force_version(char *s) +force_version(pTHX_ char *s) { OP *version = Nullop; @@ -663,7 +620,7 @@ force_version(char *s) } STATIC SV * -tokeq(SV *sv) +tokeq(pTHX_ SV *sv) { register char *s; register char *send; @@ -701,7 +658,7 @@ tokeq(SV *sv) } STATIC I32 -sublex_start(void) +sublex_start(pTHX) { register I32 op_type = yylval.ival; @@ -745,7 +702,7 @@ sublex_start(void) } STATIC I32 -sublex_push(void) +sublex_push(pTHX) { dTHR; ENTER; @@ -798,7 +755,7 @@ sublex_push(void) } STATIC I32 -sublex_done(void) +sublex_done(pTHX) { if (!PL_lex_starts++) { PL_expect = XOPERATOR; @@ -921,7 +878,7 @@ sublex_done(void) */ STATIC char * -scan_const(char *start) +scan_const(pTHX_ char *start) { register char *send = PL_bufend; /* end of the constant */ SV *sv = NEWSV(93, send - start); /* sv for the constant */ @@ -1235,7 +1192,7 @@ scan_const(char *start) /* This is the one truly awful dwimmer necessary to conflate C and sed. */ STATIC int -intuit_more(register char *s) +intuit_more(pTHX_ register char *s) { if (PL_lex_brackets) return TRUE; @@ -1365,7 +1322,7 @@ intuit_more(register char *s) } STATIC int -intuit_method(char *start, GV *gv) +intuit_method(pTHX_ char *start, GV *gv) { char *s = start + (*start == '$'); char tmpbuf[sizeof PL_tokenbuf]; @@ -1424,7 +1381,7 @@ intuit_method(char *start, GV *gv) } STATIC char* -incl_perldb(void) +incl_perldb(pTHX) { if (PL_perldb) { char *pdb = PerlEnv_getenv("PERL5DB"); @@ -1455,7 +1412,7 @@ incl_perldb(void) */ SV * -filter_add(filter_t funcp, SV *datasv) +Perl_filter_add(pTHX_ filter_t funcp, SV *datasv) { if (!funcp){ /* temporary handy debugging hack to be deleted */ PL_filter_debug = atoi((char*)datasv); @@ -1480,7 +1437,7 @@ filter_add(filter_t funcp, SV *datasv) /* Delete most recently added instance of this filter function. */ void -filter_del(filter_t funcp) +Perl_filter_del(pTHX_ filter_t funcp) { if (PL_filter_debug) warn("filter_del func %p", funcp); @@ -1500,7 +1457,7 @@ filter_del(filter_t funcp) /* Invoke the n'th filter function for the current rsfp. */ I32 -filter_read(int idx, SV *buf_sv, int maxlen) +Perl_filter_read(pTHX_ int idx, SV *buf_sv, int maxlen) /* 0 = read one text line */ @@ -1560,7 +1517,7 @@ filter_read(int idx, SV *buf_sv, int maxlen) } STATIC char * -filter_gets(register SV *sv, register PerlIO *fp, STRLEN append) +filter_gets(pTHX_ register SV *sv, register PerlIO *fp, STRLEN append) { #ifdef WIN32FILTER if (!PL_rsfp_filters) { @@ -1611,7 +1568,12 @@ filter_gets(register SV *sv, register PerlIO *fp, STRLEN append) if we already built the token before, use it. */ -int yylex(PERL_YYLEX_PARAM_DECL) +int +#ifdef USE_PURE_BISON +yylex(pTHX_ YYSTYPE *lvalp, int *lcharp) +#else +yylex(pTHX) +#endif { dTHR; register char *s; @@ -2758,7 +2720,7 @@ int yylex(PERL_YYLEX_PARAM_DECL) if (isIDFIRST_lazy(t)) { t = scan_word(t, tmpbuf, sizeof tmpbuf, TRUE, &len); for (; isSPACE(*t); t++) ; - if (*t == ';' && perl_get_cv(tmpbuf, FALSE)) + if (*t == ';' && get_cv(tmpbuf, FALSE)) warner(WARN_SYNTAX, "You need to quote \"%s\"", tmpbuf); } @@ -4308,7 +4270,7 @@ int yylex(PERL_YYLEX_PARAM_DECL) } I32 -keyword(register char *d, I32 len) +Perl_keyword(pTHX_ register char *d, I32 len) { switch (*d) { case '_': @@ -4927,7 +4889,7 @@ keyword(register char *d, I32 len) } STATIC void -checkcomma(register char *s, char *name, char *what) +checkcomma(pTHX_ register char *s, char *name, char *what) { char *w; @@ -4962,7 +4924,7 @@ checkcomma(register char *s, char *name, char *what) if (*s == ',') { int kw; *s = '\0'; - kw = keyword(w, s - w) || perl_get_cv(w, FALSE) != 0; + kw = keyword(w, s - w) || get_cv(w, FALSE) != 0; *s = ','; if (kw) return; @@ -4972,7 +4934,7 @@ checkcomma(register char *s, char *name, char *what) } STATIC SV * -new_constant(char *s, STRLEN len, char *key, SV *sv, SV *pv, char *type) +new_constant(pTHX_ char *s, STRLEN len, char *key, SV *sv, SV *pv, char *type) { dSP; HV *table = GvHV(PL_hintgv); /* ^H */ @@ -5042,7 +5004,7 @@ new_constant(char *s, STRLEN len, char *key, SV *sv, SV *pv, char *type) } STATIC char * -scan_word(register char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp) +scan_word(pTHX_ register char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp) { register char *d = dest; register char *e = d + destlen - 3; /* two-character token, ending NUL */ @@ -5079,7 +5041,7 @@ scan_word(register char *s, char *dest, STRLEN destlen, int allow_package, STRLE } STATIC char * -scan_ident(register char *s, register char *send, char *dest, STRLEN destlen, I32 ck_uni) +scan_ident(pTHX_ register char *s, register char *send, char *dest, STRLEN destlen, I32 ck_uni) { register char *d; register char *e; @@ -5220,7 +5182,7 @@ scan_ident(register char *s, register char *send, char *dest, STRLEN destlen, I3 if (PL_lex_state == LEX_NORMAL) { dTHR; /* only for ckWARN */ if (ckWARN(WARN_AMBIGUOUS) && - (keyword(dest, d - dest) || perl_get_cv(dest, FALSE))) + (keyword(dest, d - dest) || get_cv(dest, FALSE))) { warner(WARN_AMBIGUOUS, "Ambiguous use of %c{%s} resolved to %c%s", @@ -5257,7 +5219,7 @@ void pmflag(U16 *pmfl, int ch) } STATIC char * -scan_pat(char *start, I32 type) +scan_pat(pTHX_ char *start, I32 type) { PMOP *pm; char *s; @@ -5289,7 +5251,7 @@ scan_pat(char *start, I32 type) } STATIC char * -scan_subst(char *start) +scan_subst(pTHX_ char *start) { register char *s; register PMOP *pm; @@ -5359,7 +5321,7 @@ scan_subst(char *start) } STATIC char * -scan_trans(char *start) +scan_trans(pTHX_ char *start) { register char* s; OP *o; @@ -5439,7 +5401,7 @@ scan_trans(char *start) } STATIC char * -scan_heredoc(register char *s) +scan_heredoc(pTHX_ register char *s) { dTHR; SV *herewas; @@ -5649,7 +5611,7 @@ retval: */ STATIC char * -scan_inputsymbol(char *start) +scan_inputsymbol(pTHX_ char *start) { register char *s = start; /* current position in buffer */ register char *d; @@ -5789,7 +5751,7 @@ scan_inputsymbol(char *start) */ STATIC char * -scan_str(char *start) +scan_str(pTHX_ char *start) { dTHR; SV *sv; /* scalar value: string */ @@ -5976,7 +5938,7 @@ scan_str(char *start) */ char * -scan_num(char *start) +Perl_scan_num(pTHX_ char *start) { register char *s = start; /* current position in buffer */ register char *d; /* destination in temp buffer */ @@ -6217,7 +6179,7 @@ scan_num(char *start) } STATIC char * -scan_formline(register char *s) +scan_formline(pTHX_ register char *s) { dTHR; register char *eol; @@ -6291,7 +6253,7 @@ scan_formline(register char *s) } STATIC void -set_csh(void) +set_csh(pTHX) { #ifdef CSH if (!PL_cshlen) @@ -6300,7 +6262,7 @@ set_csh(void) } I32 -start_subparse(I32 is_format, U32 flags) +Perl_start_subparse(pTHX_ I32 is_format, U32 flags) { dTHR; I32 oldsavestack_ix = PL_savestack_ix; @@ -6357,7 +6319,7 @@ start_subparse(I32 is_format, U32 flags) } int -yywarn(char *s) +Perl_yywarn(pTHX_ char *s) { dTHR; --PL_error_count; @@ -6368,7 +6330,7 @@ yywarn(char *s) } int -yyerror(char *s) +Perl_yyerror(pTHX_ char *s) { dTHR; char *where = NULL; diff --git a/universal.c b/universal.c index 7d8ced3b0f..6ee0d7697c 100644 --- a/universal.c +++ b/universal.c @@ -1,4 +1,5 @@ #include "EXTERN.h" +#define PERL_IN_UNIVERSAL_C #include "perl.h" /* @@ -7,7 +8,7 @@ */ STATIC SV * -isa_lookup(HV *stash, const char *name, int len, int level) +isa_lookup(pTHX_ HV *stash, const char *name, int len, int level) { AV* av; GV* gv; @@ -73,7 +74,7 @@ isa_lookup(HV *stash, const char *name, int len, int level) } bool -sv_derived_from(SV *sv, const char *name) +Perl_sv_derived_from(pTHX_ SV *sv, const char *name) { SV *rv; char *type; @@ -211,7 +212,7 @@ XS(XS_UNIVERSAL_VERSION) #endif void -boot_core_UNIVERSAL(void) +Perl_boot_core_UNIVERSAL(pTHX) { char *file = __FILE__; @@ -21,12 +21,13 @@ */ #include "EXTERN.h" +#define PERL_IN_UTF8_C #include "perl.h" /* Unicode support */ U8 * -uv_to_utf8(U8 *d, UV uv) +Perl_uv_to_utf8(pTHX_ U8 *d, UV uv) { if (uv < 0x80) { *d++ = uv; @@ -96,7 +97,7 @@ uv_to_utf8(U8 *d, UV uv) } UV -utf8_to_uv(U8* s, I32* retlen) +Perl_utf8_to_uv(pTHX_ U8* s, I32* retlen) { UV uv = *s; int len; @@ -140,7 +141,7 @@ utf8_to_uv(U8* s, I32* retlen) /* utf8_distance(a,b) is intended to be a - b in pointer arithmetic */ I32 -utf8_distance(U8 *a, U8 *b) +Perl_utf8_distance(pTHX_ U8 *a, U8 *b) { I32 off = 0; if (a < b) { @@ -161,7 +162,7 @@ utf8_distance(U8 *a, U8 *b) /* WARNING: do not use the following unless you *know* off is within bounds */ U8 * -utf8_hop(U8 *s, I32 off) +Perl_utf8_hop(pTHX_ U8 *s, I32 off) { if (off >= 0) { while (off--) @@ -187,7 +188,7 @@ utf8_hop(U8 *s, I32 off) * We optimize for native, for obvious reasons. */ U8* -utf16_to_utf8(U16* p, U8* d, I32 bytelen) +Perl_utf16_to_utf8(pTHX_ U16* p, U8* d, I32 bytelen) { U16* pend = p + bytelen / 2; while (p < pend) { @@ -230,7 +231,7 @@ utf16_to_utf8(U16* p, U8* d, I32 bytelen) /* Note: this one is slightly destructive of the source. */ U8* -utf16_to_utf8_reversed(U16* p, U8* d, I32 bytelen) +Perl_utf16_to_utf8_reversed(pTHX_ U16* p, U8* d, I32 bytelen) { U8* s = (U8*)p; U8* send = s + bytelen; @@ -246,7 +247,7 @@ utf16_to_utf8_reversed(U16* p, U8* d, I32 bytelen) /* for now these are all defined (inefficiently) in terms of the utf8 versions */ bool -is_uni_alnum(U32 c) +Perl_is_uni_alnum(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -254,7 +255,7 @@ is_uni_alnum(U32 c) } bool -is_uni_idfirst(U32 c) +Perl_is_uni_idfirst(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -262,7 +263,7 @@ is_uni_idfirst(U32 c) } bool -is_uni_alpha(U32 c) +Perl_is_uni_alpha(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -270,7 +271,7 @@ is_uni_alpha(U32 c) } bool -is_uni_space(U32 c) +Perl_is_uni_space(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -278,7 +279,7 @@ is_uni_space(U32 c) } bool -is_uni_digit(U32 c) +Perl_is_uni_digit(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -286,7 +287,7 @@ is_uni_digit(U32 c) } bool -is_uni_upper(U32 c) +Perl_is_uni_upper(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -294,7 +295,7 @@ is_uni_upper(U32 c) } bool -is_uni_lower(U32 c) +Perl_is_uni_lower(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -302,7 +303,7 @@ is_uni_lower(U32 c) } bool -is_uni_print(U32 c) +Perl_is_uni_print(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -310,7 +311,7 @@ is_uni_print(U32 c) } U32 -to_uni_upper(U32 c) +Perl_to_uni_upper(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -318,7 +319,7 @@ to_uni_upper(U32 c) } U32 -to_uni_title(U32 c) +Perl_to_uni_title(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -326,7 +327,7 @@ to_uni_title(U32 c) } U32 -to_uni_lower(U32 c) +Perl_to_uni_lower(pTHX_ U32 c) { U8 tmpbuf[10]; uv_to_utf8(tmpbuf, (UV)c); @@ -336,74 +337,74 @@ to_uni_lower(U32 c) /* for now these all assume no locale info available for Unicode > 255 */ bool -is_uni_alnum_lc(U32 c) +Perl_is_uni_alnum_lc(pTHX_ U32 c) { return is_uni_alnum(c); /* XXX no locale support yet */ } bool -is_uni_idfirst_lc(U32 c) +Perl_is_uni_idfirst_lc(pTHX_ U32 c) { return is_uni_idfirst(c); /* XXX no locale support yet */ } bool -is_uni_alpha_lc(U32 c) +Perl_is_uni_alpha_lc(pTHX_ U32 c) { return is_uni_alpha(c); /* XXX no locale support yet */ } bool -is_uni_space_lc(U32 c) +Perl_is_uni_space_lc(pTHX_ U32 c) { return is_uni_space(c); /* XXX no locale support yet */ } bool -is_uni_digit_lc(U32 c) +Perl_is_uni_digit_lc(pTHX_ U32 c) { return is_uni_digit(c); /* XXX no locale support yet */ } bool -is_uni_upper_lc(U32 c) +Perl_is_uni_upper_lc(pTHX_ U32 c) { return is_uni_upper(c); /* XXX no locale support yet */ } bool -is_uni_lower_lc(U32 c) +Perl_is_uni_lower_lc(pTHX_ U32 c) { return is_uni_lower(c); /* XXX no locale support yet */ } bool -is_uni_print_lc(U32 c) +Perl_is_uni_print_lc(pTHX_ U32 c) { return is_uni_print(c); /* XXX no locale support yet */ } U32 -to_uni_upper_lc(U32 c) +Perl_to_uni_upper_lc(pTHX_ U32 c) { return to_uni_upper(c); /* XXX no locale support yet */ } U32 -to_uni_title_lc(U32 c) +Perl_to_uni_title_lc(pTHX_ U32 c) { return to_uni_title(c); /* XXX no locale support yet */ } U32 -to_uni_lower_lc(U32 c) +Perl_to_uni_lower_lc(pTHX_ U32 c) { return to_uni_lower(c); /* XXX no locale support yet */ } bool -is_utf8_alnum(U8 *p) +Perl_is_utf8_alnum(pTHX_ U8 *p) { if (!PL_utf8_alnum) PL_utf8_alnum = swash_init("utf8", "IsAlnum", &PL_sv_undef, 0, 0); @@ -418,13 +419,13 @@ is_utf8_alnum(U8 *p) } bool -is_utf8_idfirst(U8 *p) +Perl_is_utf8_idfirst(pTHX_ U8 *p) { return *p == '_' || is_utf8_alpha(p); } bool -is_utf8_alpha(U8 *p) +Perl_is_utf8_alpha(pTHX_ U8 *p) { if (!PL_utf8_alpha) PL_utf8_alpha = swash_init("utf8", "IsAlpha", &PL_sv_undef, 0, 0); @@ -432,7 +433,7 @@ is_utf8_alpha(U8 *p) } bool -is_utf8_space(U8 *p) +Perl_is_utf8_space(pTHX_ U8 *p) { if (!PL_utf8_space) PL_utf8_space = swash_init("utf8", "IsSpace", &PL_sv_undef, 0, 0); @@ -440,7 +441,7 @@ is_utf8_space(U8 *p) } bool -is_utf8_digit(U8 *p) +Perl_is_utf8_digit(pTHX_ U8 *p) { if (!PL_utf8_digit) PL_utf8_digit = swash_init("utf8", "IsDigit", &PL_sv_undef, 0, 0); @@ -448,7 +449,7 @@ is_utf8_digit(U8 *p) } bool -is_utf8_upper(U8 *p) +Perl_is_utf8_upper(pTHX_ U8 *p) { if (!PL_utf8_upper) PL_utf8_upper = swash_init("utf8", "IsUpper", &PL_sv_undef, 0, 0); @@ -456,7 +457,7 @@ is_utf8_upper(U8 *p) } bool -is_utf8_lower(U8 *p) +Perl_is_utf8_lower(pTHX_ U8 *p) { if (!PL_utf8_lower) PL_utf8_lower = swash_init("utf8", "IsLower", &PL_sv_undef, 0, 0); @@ -464,7 +465,7 @@ is_utf8_lower(U8 *p) } bool -is_utf8_print(U8 *p) +Perl_is_utf8_print(pTHX_ U8 *p) { if (!PL_utf8_print) PL_utf8_print = swash_init("utf8", "IsPrint", &PL_sv_undef, 0, 0); @@ -472,7 +473,7 @@ is_utf8_print(U8 *p) } bool -is_utf8_mark(U8 *p) +Perl_is_utf8_mark(pTHX_ U8 *p) { if (!PL_utf8_mark) PL_utf8_mark = swash_init("utf8", "IsM", &PL_sv_undef, 0, 0); @@ -480,7 +481,7 @@ is_utf8_mark(U8 *p) } UV -to_utf8_upper(U8 *p) +Perl_to_utf8_upper(pTHX_ U8 *p) { UV uv; @@ -491,7 +492,7 @@ to_utf8_upper(U8 *p) } UV -to_utf8_title(U8 *p) +Perl_to_utf8_title(pTHX_ U8 *p) { UV uv; @@ -502,7 +503,7 @@ to_utf8_title(U8 *p) } UV -to_utf8_lower(U8 *p) +Perl_to_utf8_lower(pTHX_ U8 *p) { UV uv; @@ -515,7 +516,7 @@ to_utf8_lower(U8 *p) /* a "swash" is a swatch hash */ SV* -swash_init(char* pkg, char* name, SV *listsv, I32 minbits, I32 none) +Perl_swash_init(pTHX_ char* pkg, char* name, SV *listsv, I32 minbits, I32 none) { SV* retval; char tmpbuf[256]; @@ -535,7 +536,7 @@ swash_init(char* pkg, char* name, SV *listsv, I32 minbits, I32 none) save_re_context(); if (PL_curcop == &PL_compiling) /* XXX ought to be handled by lex_start */ strncpy(tmpbuf, PL_tokenbuf, sizeof tmpbuf); - if (perl_call_method("SWASHNEW", G_SCALAR)) + if (call_method("SWASHNEW", G_SCALAR)) retval = newSVsv(*PL_stack_sp--); else retval = &PL_sv_undef; @@ -551,7 +552,7 @@ swash_init(char* pkg, char* name, SV *listsv, I32 minbits, I32 none) } UV -swash_fetch(SV *sv, U8 *ptr) +Perl_swash_fetch(pTHX_ SV *sv, U8 *ptr) { HV* hv = (HV*)SvRV(sv); U32 klen = UTF8SKIP(ptr) - 1; @@ -595,7 +596,7 @@ swash_fetch(SV *sv, U8 *ptr) PUSHs(sv_2mortal(newSViv(utf8_to_uv(ptr, 0) & ~(needents - 1)))); PUSHs(sv_2mortal(newSViv(needents))); PUTBACK; - if (perl_call_method("SWASHGET", G_SCALAR)) + if (call_method("SWASHGET", G_SCALAR)) retval = newSVsv(*PL_stack_sp--); else retval = &PL_sv_undef; @@ -13,6 +13,7 @@ */ #include "EXTERN.h" +#define PERL_IN_UTIL_C #include "perl.h" #if !defined(NSIG) || defined(M_UNIX) || defined(M_XENIX) @@ -54,7 +55,6 @@ #ifdef LEAKTEST -static void xstat (int); long xcount[MAXXCOUNT]; long lastxcount[MAXXCOUNT]; long xycount[MAXXCOUNT][MAXYCOUNT]; @@ -71,7 +71,7 @@ long lastxycount[MAXXCOUNT][MAXYCOUNT]; */ Malloc_t -safesysmalloc(MEM_SIZE size) +Perl_safesysmalloc(pTHX_ MEM_SIZE size) { Malloc_t ptr; #ifdef HAS_64K_LIMIT @@ -105,7 +105,7 @@ safesysmalloc(MEM_SIZE size) /* paranoid version of system's realloc() */ Malloc_t -safesysrealloc(Malloc_t where,MEM_SIZE size) +Perl_safesysrealloc(pTHX_ Malloc_t where,MEM_SIZE size) { Malloc_t ptr; #if !defined(STANDARD_C) && !defined(HAS_REALLOC_PROTOTYPE) @@ -159,7 +159,7 @@ safesysrealloc(Malloc_t where,MEM_SIZE size) /* safe version of system's free() */ Free_t -safesysfree(Malloc_t where) +Perl_safesysfree(pTHX_ Malloc_t where) { #if !(defined(I286) || defined(atarist)) DEBUG_m( PerlIO_printf(Perl_debug_log, "0x%x: (%05d) free\n",(char *) where,PL_an++)); @@ -175,7 +175,7 @@ safesysfree(Malloc_t where) /* safe version of system's calloc() */ Malloc_t -safesyscalloc(MEM_SIZE count, MEM_SIZE size) +Perl_safesyscalloc(pTHX_ MEM_SIZE count, MEM_SIZE size) { Malloc_t ptr; @@ -235,7 +235,7 @@ struct mem_test_strut { : ((size) - 1)/4)) Malloc_t -safexmalloc(I32 x, MEM_SIZE size) +Perl_safexmalloc(pTHX_ I32 x, MEM_SIZE size) { register char* where = (char*)safemalloc(size + ALIGN); @@ -247,7 +247,7 @@ safexmalloc(I32 x, MEM_SIZE size) } Malloc_t -safexrealloc(Malloc_t wh, MEM_SIZE size) +Perl_safexrealloc(pTHX_ Malloc_t wh, MEM_SIZE size) { char *where = (char*)wh; @@ -268,7 +268,7 @@ safexrealloc(Malloc_t wh, MEM_SIZE size) } void -safexfree(Malloc_t wh) +Perl_safexfree(pTHX_ Malloc_t wh) { I32 x; char *where = (char*)wh; @@ -285,7 +285,7 @@ safexfree(Malloc_t wh) } Malloc_t -safexcalloc(I32 x,MEM_SIZE count, MEM_SIZE size) +Perl_safexcalloc(pTHX_ I32 x,MEM_SIZE count, MEM_SIZE size) { register char * where = (char*)safexmalloc(x, size * count + ALIGN); xcount[x] += size; @@ -296,8 +296,8 @@ safexcalloc(I32 x,MEM_SIZE count, MEM_SIZE size) return (Malloc_t)(where + ALIGN); } -static void -xstat(int flag) +STATIC void +xstat(pTHX_ int flag) { register I32 i, j, total = 0; I32 subtot[MAXYCOUNT]; @@ -356,7 +356,7 @@ xstat(int flag) /* copy a string up to some (non-backslashed) delimiter, if any */ char * -delimcpy(register char *to, register char *toend, register char *from, register char *fromend, register int delim, I32 *retlen) +Perl_delimcpy(pTHX_ register char *to, register char *toend, register char *from, register char *fromend, register int delim, I32 *retlen) { register I32 tolen; for (tolen = 0; from < fromend; from++, tolen++) { @@ -385,7 +385,7 @@ delimcpy(register char *to, register char *toend, register char *from, register /* This routine was donated by Corey Satten. */ char * -instr(register const char *big, register const char *little) +Perl_instr(pTHX_ register const char *big, register const char *little) { register const char *s, *x; register I32 first; @@ -415,7 +415,7 @@ instr(register const char *big, register const char *little) /* same as instr but allow embedded nulls */ char * -ninstr(register const char *big, register const char *bigend, const char *little, const char *lend) +Perl_ninstr(pTHX_ register const char *big, register const char *bigend, const char *little, const char *lend) { register const char *s, *x; register I32 first = *little; @@ -444,7 +444,7 @@ ninstr(register const char *big, register const char *bigend, const char *little /* reverse of the above--find last substring */ char * -rninstr(register const char *big, const char *bigend, const char *little, const char *lend) +Perl_rninstr(pTHX_ register const char *big, const char *bigend, const char *little, const char *lend) { register const char *bigbeg; register const char *s, *x; @@ -474,7 +474,7 @@ rninstr(register const char *big, const char *bigend, const char *little, const * Set up for a new ctype locale. */ void -perl_new_ctype(const char *newctype) +Perl_new_ctype(pTHX_ const char *newctype) { #ifdef USE_LOCALE_CTYPE @@ -496,7 +496,7 @@ perl_new_ctype(const char *newctype) * Set up for a new collation locale. */ void -perl_new_collate(const char *newcoll) +Perl_new_collate(pTHX_ const char *newcoll) { #ifdef USE_LOCALE_COLLATE @@ -540,7 +540,7 @@ perl_new_collate(const char *newcoll) * Set up for a new numeric locale. */ void -perl_new_numeric(const char *newnum) +Perl_new_numeric(pTHX_ const char *newnum) { #ifdef USE_LOCALE_NUMERIC @@ -565,7 +565,7 @@ perl_new_numeric(const char *newnum) } void -perl_set_numeric_standard(void) +Perl_set_numeric_standard(pTHX) { #ifdef USE_LOCALE_NUMERIC @@ -579,7 +579,7 @@ perl_set_numeric_standard(void) } void -perl_set_numeric_local(void) +Perl_set_numeric_local(pTHX) { #ifdef USE_LOCALE_NUMERIC @@ -597,7 +597,7 @@ perl_set_numeric_local(void) * Initialize locale awareness. */ int -perl_init_i18nl10n(int printwarn) +Perl_init_i18nl10n(pTHX_ int printwarn) { int ok = 1; /* returns @@ -807,15 +807,15 @@ perl_init_i18nl10n(int printwarn) } #ifdef USE_LOCALE_CTYPE - perl_new_ctype(curctype); + new_ctype(curctype); #endif /* USE_LOCALE_CTYPE */ #ifdef USE_LOCALE_COLLATE - perl_new_collate(curcoll); + new_collate(curcoll); #endif /* USE_LOCALE_COLLATE */ #ifdef USE_LOCALE_NUMERIC - perl_new_numeric(curnum); + new_numeric(curnum); #endif /* USE_LOCALE_NUMERIC */ #endif /* USE_LOCALE */ @@ -825,9 +825,9 @@ perl_init_i18nl10n(int printwarn) /* Backwards compatibility. */ int -perl_init_i18nl14n(int printwarn) +Perl_init_i18nl14n(pTHX_ int printwarn) { - return perl_init_i18nl10n(printwarn); + return init_i18nl10n(printwarn); } #ifdef USE_LOCALE_COLLATE @@ -840,7 +840,7 @@ perl_init_i18nl14n(int printwarn) * Please see sv_collxfrm() to see how this is used. */ char * -mem_collxfrm(const char *s, STRLEN len, STRLEN *xlen) +Perl_mem_collxfrm(pTHX_ const char *s, STRLEN len, STRLEN *xlen) { char *xbuf; STRLEN xAlloc, xin, xout; /* xalloc is a reserved word in VC */ @@ -898,7 +898,7 @@ mem_collxfrm(const char *s, STRLEN len, STRLEN *xlen) If FBMcf_TAIL, the table is created as if the string has a trailing \n. */ void -fbm_compile(SV *sv, U32 flags /* not used yet */) +Perl_fbm_compile(pTHX_ SV *sv, U32 flags /* not used yet */) { register U8 *s; register U8 *table; @@ -957,7 +957,7 @@ fbm_compile(SV *sv, U32 flags /* not used yet */) if multiline */ char * -fbm_instr(unsigned char *big, register unsigned char *bigend, SV *littlestr, U32 flags) +Perl_fbm_instr(pTHX_ unsigned char *big, register unsigned char *bigend, SV *littlestr, U32 flags) { register unsigned char *s; STRLEN l; @@ -1158,7 +1158,7 @@ fbm_instr(unsigned char *big, register unsigned char *bigend, SV *littlestr, U32 is not supported yet. */ char * -screaminstr(SV *bigstr, SV *littlestr, I32 start_shift, I32 end_shift, I32 *old_posp, I32 last) +Perl_screaminstr(pTHX_ SV *bigstr, SV *littlestr, I32 start_shift, I32 end_shift, I32 *old_posp, I32 last) { dTHR; register unsigned char *s, *x; @@ -1257,7 +1257,7 @@ screaminstr(SV *bigstr, SV *littlestr, I32 start_shift, I32 end_shift, I32 *old_ } I32 -ibcmp(const char *s1, const char *s2, register I32 len) +Perl_ibcmp(pTHX_ const char *s1, const char *s2, register I32 len) { register U8 *a = (U8 *)s1; register U8 *b = (U8 *)s2; @@ -1270,7 +1270,7 @@ ibcmp(const char *s1, const char *s2, register I32 len) } I32 -ibcmp_locale(const char *s1, const char *s2, register I32 len) +Perl_ibcmp_locale(pTHX_ const char *s1, const char *s2, register I32 len) { register U8 *a = (U8 *)s1; register U8 *b = (U8 *)s2; @@ -1285,7 +1285,7 @@ ibcmp_locale(const char *s1, const char *s2, register I32 len) /* copy a string to a safe spot */ char * -savepv(const char *sv) +Perl_savepv(pTHX_ const char *sv) { register char *newaddr; @@ -1297,7 +1297,7 @@ savepv(const char *sv) /* same thing but with a known length */ char * -savepvn(const char *sv, register I32 len) +Perl_savepvn(pTHX_ const char *sv, register I32 len) { register char *newaddr; @@ -1310,7 +1310,7 @@ savepvn(const char *sv, register I32 len) /* the SV for form() and mess() is not kept in an arena */ STATIC SV * -mess_alloc(void) +mess_alloc(pTHX) { dTHR; SV *sv; @@ -1333,7 +1333,7 @@ mess_alloc(void) } char * -form(const char* pat, ...) +Perl_form(pTHX_ const char* pat, ...) { SV *sv = mess_alloc(); va_list args; @@ -1344,7 +1344,7 @@ form(const char* pat, ...) } SV * -mess(const char *pat, va_list *args) +Perl_mess(pTHX_ const char *pat, va_list *args) { SV *sv = mess_alloc(); static char dgd[] = " during global destruction.\n"; @@ -1369,7 +1369,7 @@ mess(const char *pat, va_list *args) } OP * -die(const char* pat, ...) +Perl_die(pTHX_ const char* pat, ...) { dTHR; va_list args; @@ -1424,7 +1424,7 @@ die(const char* pat, ...) PUSHMARK(SP); XPUSHs(msg); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); POPSTACK; LEAVE; } @@ -1440,7 +1440,7 @@ die(const char* pat, ...) } void -croak(const char* pat, ...) +Perl_croak(pTHX_ const char* pat, ...) { dTHR; va_list args; @@ -1477,7 +1477,7 @@ croak(const char* pat, ...) PUSHMARK(SP); XPUSHs(msg); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); POPSTACK; LEAVE; } @@ -1501,7 +1501,7 @@ croak(const char* pat, ...) } void -warn(const char* pat,...) +Perl_warn(pTHX_ const char* pat,...) { va_list args; char *message; @@ -1538,7 +1538,7 @@ warn(const char* pat,...) PUSHMARK(SP); XPUSHs(msg); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); POPSTACK; LEAVE; return; @@ -1557,7 +1557,7 @@ warn(const char* pat,...) } void -warner(U32 err, const char* pat,...) +Perl_warner(pTHX_ U32 err, const char* pat,...) { dTHR; va_list args; @@ -1597,7 +1597,7 @@ warner(U32 err, const char* pat,...) PUSHMARK(sp); XPUSHs(msg); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); LEAVE; } @@ -1633,7 +1633,7 @@ warner(U32 err, const char* pat,...) PUSHMARK(sp); XPUSHs(msg); PUTBACK; - perl_call_sv((SV*)cv, G_DISCARD); + call_sv((SV*)cv, G_DISCARD); LEAVE; return; @@ -1650,7 +1650,7 @@ warner(U32 err, const char* pat,...) #ifndef VMS /* VMS' my_setenv() is in VMS.c */ #if !defined(WIN32) && !defined(CYGWIN32) void -my_setenv(char *nam, char *val) +Perl_my_setenv(pTHX_ char *nam, char *val) { #ifndef PERL_USE_SAFE_PUTENV /* most putenv()s leak, so we manipulate environ directly */ @@ -1716,7 +1716,7 @@ my_setenv(char *nam, char *val) #else /* if WIN32 */ void -my_setenv(char *nam,char *val) +Perl_my_setenv(pTHX_ char *nam,char *val) { #ifdef USE_WIN32_RTL_ENV @@ -1776,7 +1776,7 @@ my_setenv(char *nam,char *val) #endif /* WIN32 */ I32 -setenv_getix(char *nam) +Perl_setenv_getix(pTHX_ char *nam) { register I32 i, len = strlen(nam); @@ -1797,7 +1797,7 @@ setenv_getix(char *nam) #ifdef UNLINK_ALL_VERSIONS I32 -unlnk(char *f) /* unlink all versions of a file */ +Perl_unlnk(pTHX_ char *f) /* unlink all versions of a file */ { I32 i; @@ -1808,7 +1808,7 @@ unlnk(char *f) /* unlink all versions of a file */ #if !defined(HAS_BCOPY) || !defined(HAS_SAFE_BCOPY) char * -my_bcopy(register const char *from,register char *to,register I32 len) +Perl_my_bcopy(pTHX_ register const char *from,register char *to,register I32 len) { char *retval = to; @@ -1828,7 +1828,7 @@ my_bcopy(register const char *from,register char *to,register I32 len) #ifndef HAS_MEMSET void * -my_memset(register char *loc, register I32 ch, register I32 len) +Perl_my_memset(pTHX_ register char *loc, register I32 ch, register I32 len) { char *retval = loc; @@ -1840,7 +1840,7 @@ my_memset(register char *loc, register I32 ch, register I32 len) #if !defined(HAS_BZERO) && !defined(HAS_MEMSET) char * -my_bzero(register char *loc, register I32 len) +Perl_my_bzero(pTHX_ register char *loc, register I32 len) { char *retval = loc; @@ -1852,7 +1852,7 @@ my_bzero(register char *loc, register I32 len) #if !defined(HAS_MEMCMP) || !defined(HAS_SANE_MEMCMP) I32 -my_memcmp(const char *s1, const char *s2, register I32 len) +Perl_my_memcmp(pTHX_ const char *s1, const char *s2, register I32 len) { register U8 *a = (U8 *)s1; register U8 *b = (U8 *)s2; @@ -1897,7 +1897,7 @@ vsprintf(char *dest, const char *pat, char *args) #ifdef MYSWAP #if BYTEORDER != 0x4321 short -my_swap(short s) +Perl_my_swap(pTHX_ short s) { #if (BYTEORDER & 1) == 0 short result; @@ -1910,7 +1910,7 @@ my_swap(short s) } long -my_htonl(long l) +Perl_my_htonl(pTHX_ long l) { union { long result; @@ -1939,7 +1939,7 @@ my_htonl(long l) } long -my_ntohl(long l) +Perl_my_ntohl(pTHX_ long l) { union { long l; @@ -2030,7 +2030,7 @@ VTOH(vtohl,long) /* VMS' my_popen() is in VMS.c, same with OS/2. */ #if (!defined(DOSISH) || defined(HAS_FORK) || defined(AMIGAOS)) && !defined(VMS) && !defined(__OPEN_VM) PerlIO * -my_popen(char *cmd, char *mode) +Perl_my_popen(pTHX_ char *cmd, char *mode) { int p[2]; register I32 This, that; @@ -2153,7 +2153,7 @@ my_popen(char *cmd, char *mode) #if defined(atarist) || defined(DJGPP) FILE *popen(); PerlIO * -my_popen(char *cmd, char *mode) +Perl_my_popen(pTHX_ char *cmd, char *mode) { /* Needs work for PerlIO ! */ /* used 0 for 2nd parameter to PerlIO-exportFILE; apparently not used */ @@ -2166,7 +2166,7 @@ my_popen(char *cmd, char *mode) #ifdef DUMP_FDS void -dump_fds(char *s) +Perl_dump_fds(pTHX_ char *s) { int fd; struct stat tmpstatbuf; @@ -2218,7 +2218,7 @@ dup2(int oldfd, int newfd) #ifdef HAS_SIGACTION Sighandler_t -rsignal(int signo, Sighandler_t handler) +Perl_rsignal(pTHX_ int signo, Sighandler_t handler) { struct sigaction act, oact; @@ -2239,7 +2239,7 @@ rsignal(int signo, Sighandler_t handler) } Sighandler_t -rsignal_state(int signo) +Perl_rsignal_state(pTHX_ int signo) { struct sigaction oact; @@ -2250,7 +2250,7 @@ rsignal_state(int signo) } int -rsignal_save(int signo, Sighandler_t handler, Sigsave_t *save) +Perl_rsignal_save(pTHX_ int signo, Sighandler_t handler, Sigsave_t *save) { struct sigaction act; @@ -2268,7 +2268,7 @@ rsignal_save(int signo, Sighandler_t handler, Sigsave_t *save) } int -rsignal_restore(int signo, Sigsave_t *save) +Perl_rsignal_restore(pTHX_ int signo, Sigsave_t *save) { return sigaction(signo, save, (struct sigaction *)NULL); } @@ -2276,7 +2276,7 @@ rsignal_restore(int signo, Sigsave_t *save) #else /* !HAS_SIGACTION */ Sighandler_t -rsignal(int signo, Sighandler_t handler) +Perl_rsignal(pTHX_ int signo, Sighandler_t handler) { return PerlProc_signal(signo, handler); } @@ -2291,7 +2291,7 @@ sig_trap(int signo) } Sighandler_t -rsignal_state(int signo) +Perl_rsignal_state(pTHX_ int signo) { Sighandler_t oldsig; @@ -2304,14 +2304,14 @@ rsignal_state(int signo) } int -rsignal_save(int signo, Sighandler_t handler, Sigsave_t *save) +Perl_rsignal_save(pTHX_ int signo, Sighandler_t handler, Sigsave_t *save) { *save = PerlProc_signal(signo, handler); return (*save == SIG_ERR) ? -1 : 0; } int -rsignal_restore(int signo, Sigsave_t *save) +Perl_rsignal_restore(pTHX_ int signo, Sigsave_t *save) { return (PerlProc_signal(signo, *save) == SIG_ERR) ? -1 : 0; } @@ -2321,7 +2321,7 @@ rsignal_restore(int signo, Sigsave_t *save) /* VMS' my_pclose() is in VMS.c; same with OS/2 */ #if (!defined(DOSISH) || defined(HAS_FORK) || defined(AMIGAOS)) && !defined(VMS) && !defined(__OPEN_VM) I32 -my_pclose(PerlIO *ptr) +Perl_my_pclose(pTHX_ PerlIO *ptr) { Sigsave_t hstat, istat, qstat; int status; @@ -2377,7 +2377,7 @@ my_pclose(PerlIO *ptr) #if !defined(DOSISH) || defined(OS2) || defined(WIN32) || defined(CYGWIN32) I32 -wait4pid(int pid, int *statusp, int flags) +Perl_wait4pid(pTHX_ int pid, int *statusp, int flags) { SV *sv; SV** svp; @@ -2437,7 +2437,7 @@ wait4pid(int pid, int *statusp, int flags) void /*SUPPRESS 590*/ -pidgone(int pid, int status) +Perl_pidgone(pTHX_ int pid, int status) { register SV *sv; char spid[TYPE_CHARS(int)]; @@ -2457,7 +2457,7 @@ int /* Cannot prototype with I32 my_syspclose(PerlIO *ptr) #else I32 -my_pclose(PerlIO *ptr) +Perl_my_pclose(pTHX_ PerlIO *ptr) #endif { /* Needs work for PerlIO ! */ @@ -2469,7 +2469,7 @@ my_pclose(PerlIO *ptr) #endif void -repeatcpy(register char *to, register const char *from, I32 len, register I32 count) +Perl_repeatcpy(pTHX_ register char *to, register const char *from, I32 len, register I32 count) { register I32 todo; register const char *frombase = from; @@ -2489,7 +2489,7 @@ repeatcpy(register char *to, register const char *from, I32 len, register I32 co } U32 -cast_ulong(double f) +Perl_cast_ulong(pTHX_ double f) { long along; @@ -2526,7 +2526,7 @@ cast_ulong(double f) #endif I32 -cast_i32(double f) +Perl_cast_i32(pTHX_ double f) { if (f >= I32_MAX) return (I32) I32_MAX; @@ -2536,7 +2536,7 @@ cast_i32(double f) } IV -cast_iv(double f) +Perl_cast_iv(pTHX_ double f) { if (f >= IV_MAX) { UV uv; @@ -2552,7 +2552,7 @@ cast_iv(double f) } UV -cast_uv(double f) +Perl_cast_uv(pTHX_ double f) { if (f >= MY_UV_MAX) return (UV) MY_UV_MAX; @@ -2569,7 +2569,7 @@ cast_uv(double f) #ifndef HAS_RENAME I32 -same_dirent(char *a, char *b) +Perl_same_dirent(pTHX_ char *a, char *b) { char *fa = strrchr(a,'/'); char *fb = strrchr(b,'/'); @@ -2605,7 +2605,7 @@ same_dirent(char *a, char *b) #endif /* !HAS_RENAME */ UV -scan_bin(char *start, I32 len, I32 *retlen) +Perl_scan_bin(pTHX_ char *start, I32 len, I32 *retlen) { register char *s = start; register UV retval = 0; @@ -2628,7 +2628,7 @@ scan_bin(char *start, I32 len, I32 *retlen) return retval; } UV -scan_oct(char *start, I32 len, I32 *retlen) +Perl_scan_oct(pTHX_ char *start, I32 len, I32 *retlen) { register char *s = start; register UV retval = 0; @@ -2653,7 +2653,7 @@ scan_oct(char *start, I32 len, I32 *retlen) } UV -scan_hex(char *start, I32 len, I32 *retlen) +Perl_scan_hex(pTHX_ char *start, I32 len, I32 *retlen) { register char *s = start; register UV retval = 0; @@ -2686,7 +2686,7 @@ scan_hex(char *start, I32 len, I32 *retlen) } char* -find_script(char *scriptname, bool dosearch, char **search_ext, I32 flags) +Perl_find_script(pTHX_ char *scriptname, bool dosearch, char **search_ext, I32 flags) { dTHR; char *xfound = Nullch; @@ -2911,13 +2911,13 @@ schedule(void) } void -perl_cond_init(perl_cond *cp) +Perl_cond_init(pTHX_ perl_cond *cp) { *cp = 0; } void -perl_cond_signal(perl_cond *cp) +Perl_cond_signal(pTHX_ perl_cond *cp) { perl_os_thread t; perl_cond cond = *cp; @@ -2937,7 +2937,7 @@ perl_cond_signal(perl_cond *cp) } void -perl_cond_broadcast(perl_cond *cp) +Perl_cond_broadcast(pTHX_ perl_cond *cp) { perl_os_thread t; perl_cond cond, cond_next; @@ -2958,7 +2958,7 @@ perl_cond_broadcast(perl_cond *cp) } void -perl_cond_wait(perl_cond *cp) +Perl_cond_wait(pTHX_ perl_cond *cp) { perl_cond cond; @@ -2978,7 +2978,7 @@ perl_cond_wait(perl_cond *cp) #ifdef PTHREAD_GETSPECIFIC_INT struct perl_thread * -getTHR(void) +Perl_getTHR(pTHX) { pthread_addr_t t; @@ -2989,7 +2989,7 @@ getTHR(void) #endif MAGIC * -condpair_magic(SV *sv) +Perl_condpair_magic(pTHX_ SV *sv) { MAGIC *mg; @@ -3034,7 +3034,7 @@ condpair_magic(SV *sv) * thread calling new_struct_thread) clearly satisfies this constraint. */ struct perl_thread * -new_struct_thread(struct perl_thread *t) +Perl_new_struct_thread(pTHX_ struct perl_thread *t) { struct perl_thread *thr; SV *sv; @@ -3169,39 +3169,39 @@ Perl_huge(void) #ifdef PERL_GLOBAL_STRUCT struct perl_vars * -Perl_GetVars(void) +Perl_GetVars(pTHX) { return &PL_Vars; } #endif char ** -get_op_names(void) +Perl_get_op_names(pTHX) { return PL_op_name; } char ** -get_op_descs(void) +Perl_get_op_descs(pTHX) { return PL_op_desc; } char * -get_no_modify(void) +Perl_get_no_modify(pTHX) { return (char*)PL_no_modify; } U32 * -get_opargs(void) +Perl_get_opargs(pTHX) { return PL_opargs; } #ifndef HAS_GETENV_LEN char * -getenv_len(char *env_elem, unsigned long *len) +Perl_getenv_len(pTHX_ char *env_elem, unsigned long *len) { char *env_trans = PerlEnv_getenv(env_elem); if (env_trans) @@ -3212,7 +3212,7 @@ getenv_len(char *env_elem, unsigned long *len) MGVTBL* -get_vtbl(int vtbl_id) +Perl_get_vtbl(pTHX_ int vtbl_id) { MGVTBL* result = Null(MGVTBL*); @@ -3316,7 +3316,7 @@ get_vtbl(int vtbl_id) } I32 -my_fflush_all(void) +Perl_my_fflush_all(pTHX) { #ifdef FFLUSH_NULL return PerlIO_flush(NULL); |