X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=cc_runtime.h;h=3815d3a5e3a31b1d061ae59793df632721858869;hb=27cec4bd74b4c0ab87d3b49d275b8814f59e9bfc;hp=bb9b7dc5d990ca904fe4c87714072940e9e14e1e;hpb=1d651c14520f7db44adb51b335f0fd87f91e8421;p=p5sagit%2Fp5-mst-13.2.git diff --git a/cc_runtime.h b/cc_runtime.h index bb9b7dc..3815d3a 100644 --- a/cc_runtime.h +++ b/cc_runtime.h @@ -1,4 +1,14 @@ -#define DOOP(ppname) PUTBACK; PL_op = ppname(ARGS); SPAGAIN +/* cc_runtime.h + * + * Copyright (C) 1999, 2000, 2001, by Larry Wall and others + * + * You may distribute under the terms of either the GNU General Public + * License or the Artistic License, as specified in the README file. + * + */ + +#define DOOP(ppname) PUTBACK; PL_op = ppname(aTHX); SPAGAIN +#define CCPP(s) OP * s(pTHX) #define PP_LIST(g) do { \ dMARK; \ @@ -13,7 +23,7 @@ #define MAYBE_TAINT_SASSIGN_SRC(sv) \ if (PL_tainting && PL_tainted && (!SvGMAGICAL(left) || !SvSMAGICAL(left) || \ - !((mg=mg_find(left, 't')) && mg->mg_len & 1)))\ + !((mg=mg_find(left, PERL_MAGIC_taint)) && mg->mg_len & 1)))\ TAINT_NOT #define PP_PREINC(sv) do { \ @@ -43,8 +53,8 @@ JMPENV_PUSH(ret); \ switch (ret) { \ case 0: \ - PL_op = ppaddr(ARGS); \ - PL_retstack[PL_retstack_ix - 1] = Nullop; \ + PL_op = ppaddr(aTHX); \ + /* XXX PL_retstack[PL_retstack_ix - 1] = Nullop; */ \ if (PL_op != nxt) CALLRUNOPS(); \ JMPENV_POP; \ break; \ @@ -52,7 +62,7 @@ case 2: JMPENV_POP; JMPENV_JUMP(2); \ case 3: \ JMPENV_POP; \ - if (PL_restartop != nxt) \ + if (PL_restartop && PL_restartop != nxt) \ JMPENV_JUMP(3); \ } \ PL_op = nxt; \