X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pp.h;h=b05e6d068efe1bb5dc9b1a61040e3fe6010a271e;hb=77003bb1f5b79e478d4e39dbf22a7d33aacd2fd5;hp=2226c20a6a0059869166abdf240302a7ae40e5df;hpb=411caa507cab4ba311ec4000c486ad2592d51146;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pp.h b/pp.h index 2226c20..b05e6d0 100644 --- a/pp.h +++ b/pp.h @@ -1,6 +1,6 @@ /* pp.h * - * Copyright (c) 1991-2000, Larry Wall + * Copyright (c) 1991-2001, Larry Wall * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. @@ -33,6 +33,13 @@ L. Declares a local copy of perl's stack pointer for the XSUB, available via the C macro. See C. +=for apidoc ms||djSP + +Declare Just C. This is actually identical to C, and declares +a local copy of perl's stack pointer, available via the C macro. +See C. (Available for backward source code compatibility with the +old (Perl 5.005) thread model.) + =for apidoc Ams||dMARK Declare a stack marker variable, C, for the XSUB. See C and C. @@ -46,8 +53,7 @@ The original stack mark for the XSUB. See C. =for apidoc Ams||SPAGAIN Refetch the stack pointer. Used after a callback. See L. -=cut -*/ +=cut */ #define SP sp #define MARK mark @@ -126,6 +132,7 @@ Pops a long off the stack. #endif #define TOPs (*sp) +#define TOPm1s (*(sp-1)) #define TOPp (SvPV(TOPs, PL_na)) /* deprecated */ #define TOPpx (SvPV(TOPs, n_a)) #define TOPn (SvNV(TOPs)) @@ -373,3 +380,10 @@ See C. SvREFCNT_dec(tmpRef); \ SvRV(rv)=AMG_CALLun(rv,copy); \ } } STMT_END + +/* +=for apidoc mU||LVRET +True if this op will be the return value of an lvalue subroutine + +=cut */ +#define LVRET ((PL_op->op_private & OPpMAYBE_LVSUB) && is_lvalue_sub())