summaryrefslogtreecommitdiff
path: root/sv.h
diff options
context:
space:
mode:
authorDavid Mitchell <davem@iabyn.com>2010-05-08 17:23:56 +0100
committerDavid Mitchell <davem@iabyn.com>2010-05-08 21:28:27 +0100
commitaee036bb6c99459a0e305ff4008b983591ce8a4b (patch)
treebd00acf890badc9061cb0819a4a704e200c67162 /sv.h
parent39d5de13bc6d138baf12ad5224e3af8834356929 (diff)
downloadperl-aee036bb6c99459a0e305ff4008b983591ce8a4b.tar.gz
add SV_SKIP_OVERLOAD flag to sv_2*v_flags fns
While trying to coerce an SV into a string or whatever, stop if you suddenly discover it's overloaded (this may not happen until after you've called it's get magic)
Diffstat (limited to 'sv.h')
-rw-r--r--sv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sv.h b/sv.h
index 807b48273f..7d3f1a6804 100644
--- a/sv.h
+++ b/sv.h
@@ -1694,6 +1694,9 @@ Like sv_utf8_upgrade, but doesn't do magic on C<sv>
* This is used when the caller has already determined it is, and avoids
* redundant work */
#define SV_FORCE_UTF8_UPGRADE 4096
+/* if (after resolving magic etc), the SV is found to be overloaded,
+ * don't call the overload magic, just return as-is */
+#define SV_SKIP_OVERLOAD 8192
/* The core is safe for this COW optimisation. XS code on CPAN may not be.
So only default to doing the COW setup if we're in the core.