summaryrefslogtreecommitdiff
path: root/XSUB.h
diff options
context:
space:
mode:
authorVincent Pit <perl@profvince.com>2010-06-03 11:55:20 +0200
committerVincent Pit <perl@profvince.com>2010-06-03 14:00:49 +0200
commit483ce06a4f6c720f66285117b98747911f62226a (patch)
tree54d8d4366c900b8f77ccf74f85d153d7ec1363f0 /XSUB.h
parent789bd863840ef4ff6c46f7c2ee0f3f64e0b5daa6 (diff)
downloadperl-483ce06a4f6c720f66285117b98747911f62226a.tar.gz
The UNDERBAR macro should use find_rundefsv() as well
Diffstat (limited to 'XSUB.h')
-rw-r--r--XSUB.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/XSUB.h b/XSUB.h
index 06cb1c35e1..ca2c297dae 100644
--- a/XSUB.h
+++ b/XSUB.h
@@ -72,8 +72,9 @@ Sets up the C<ix> variable for an XSUB which has aliases. This is usually
handled automatically by C<xsubpp>.
=for apidoc Ams||dUNDERBAR
-Sets up the C<padoff_du> variable for an XSUB that wishes to use
-C<UNDERBAR>.
+Sets up any variable needed by the C<UNDERBAR> macro. It used to define
+C<padoff_du>, 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. */