X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=XSUB.h;h=ce76a7b132b60264e7d77c7302086cae745c558b;hb=a104b4331c3ff1891c34087e511cd28d9ba39c56;hp=609f5b9db27691be2b7a07f1c0e2ee9a7eaef1dc;hpb=f9415d2377705b4cde579db69c15a29f1b9bb9f6;p=p5sagit%2Fp5-mst-13.2.git diff --git a/XSUB.h b/XSUB.h index 609f5b9..ce76a7b 100644 --- a/XSUB.h +++ b/XSUB.h @@ -1,6 +1,7 @@ /* XSUB.h * - * Copyright (c) 1997-2002, Larry Wall + * Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, + * 2000, 2001, 2002, 2003, 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. @@ -103,7 +104,7 @@ handled automatically by C. #define dXSFUNCTION(ret) XSINTERFACE_CVT(ret,XSFUNCTION) #define XSINTERFACE_FUNC(ret,cv,f) ((XSINTERFACE_CVT(ret,))(f)) #define XSINTERFACE_FUNC_SET(cv,f) \ - CvXSUBANY(cv).any_dptr = (void (*) (pTHX_ void*))(f) + CvXSUBANY(cv).any_dxptr = (void (*) (pTHX_ void*))(f) /* Simple macros to put new mortal values onto the stack. */ /* Typically used to return values from XS functions. */ @@ -142,6 +143,9 @@ handled by C. =for apidoc Am|void|XSRETURN_IV|IV iv Return an integer from an XSUB immediately. Uses C. +=for apidoc Am|void|XSRETURN_UV|IV uv +Return an integer from an XSUB immediately. Uses C. + =for apidoc Am|void|XSRETURN_NV|NV nv Return a double from an XSUB immediately. Uses C. @@ -179,6 +183,7 @@ C. See L. */ #define XST_mIV(i,v) (ST(i) = sv_2mortal(newSViv(v)) ) +#define XST_mUV(i,v) (ST(i) = sv_2mortal(newSVuv(v)) ) #define XST_mNV(i,v) (ST(i) = sv_2mortal(newSVnv(v)) ) #define XST_mPV(i,v) (ST(i) = sv_2mortal(newSVpv(v,0))) #define XST_mPVN(i,v,n) (ST(i) = sv_2mortal(newSVpvn(v,n))) @@ -193,6 +198,7 @@ C. See L. } STMT_END #define XSRETURN_IV(v) STMT_START { XST_mIV(0,v); XSRETURN(1); } STMT_END +#define XSRETURN_UV(v) STMT_START { XST_mUV(0,v); XSRETURN(1); } STMT_END #define XSRETURN_NV(v) STMT_START { XST_mNV(0,v); XSRETURN(1); } STMT_END #define XSRETURN_PV(v) STMT_START { XST_mPV(0,v); XSRETURN(1); } STMT_END #define XSRETURN_PVN(v,n) STMT_START { XST_mPVN(0,v,n); XSRETURN(1); } STMT_END @@ -389,7 +395,7 @@ C. See L. # define fclose PerlSIO_fclose # define feof PerlSIO_feof # define ferror PerlSIO_ferror -# define fclearerr PerlSIO_clearerr +# define clearerr PerlSIO_clearerr # define getc PerlSIO_getc # define fputc PerlSIO_fputc # define fputs PerlSIO_fputs