From: Vincent Pit Date: Thu, 3 Jun 2010 09:55:20 +0000 (+0200) Subject: The UNDERBAR macro should use find_rundefsv() as well X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=483ce06a4f6c720f66285117b98747911f62226a;p=p5sagit%2Fp5-mst-13.2.git The UNDERBAR macro should use find_rundefsv() as well --- diff --git a/XSUB.h b/XSUB.h index 06cb1c3..ca2c297 100644 --- a/XSUB.h +++ b/XSUB.h @@ -72,8 +72,9 @@ Sets up the C variable for an XSUB which has aliases. This is usually handled automatically by C. =for apidoc Ams||dUNDERBAR -Sets up the C variable for an XSUB that wishes to use -C. +Sets up any variable needed by the C macro. It used to define +C, but it is currently a noop. However, it is strongly adviced +to still use it for ensuring past and future compatibility. =for apidoc AmU||UNDERBAR The SV* corresponding to the $_ variable. Works even if there @@ -166,10 +167,8 @@ is a lexical $_ in scope. #define XSINTERFACE_FUNC_SET(cv,f) \ CvXSUBANY(cv).any_dxptr = (void (*) (pTHX_ void*))(f) -#define dUNDERBAR PADOFFSET padoff_du = find_rundefsvoffset() -#define UNDERBAR ((padoff_du == NOT_IN_PAD \ - || PAD_COMPNAME_FLAGS_isOUR(padoff_du)) \ - ? DEFSV : PAD_SVl(padoff_du)) +#define dUNDERBAR dNOOP +#define UNDERBAR find_rundefsv() /* Simple macros to put new mortal values onto the stack. */ /* Typically used to return values from XS functions. */ diff --git a/pod/perl5132delta.pod b/pod/perl5132delta.pod index 613f814..92d3b0d 100644 --- a/pod/perl5132delta.pod +++ b/pod/perl5132delta.pod @@ -184,6 +184,11 @@ XXX Changes which affect the interface available to C code go here. The following new functions or macros have been added to the public API: C, C, C. +=item * + +The C macro now calls C. C is now a +noop but should still be used to ensure past and future compatibility. + =back =head1 New Tests