summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2001-06-07 12:08:56 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-06-07 12:08:56 +0000
commit9e9796d60fe5caa415e63b60595d4ea57c358a48 (patch)
tree5f616c982affe000d132edb9fc31c8a237fbc2dc
parentc832e8deb24ea7c17e0a24ad3a32faf8781cb993 (diff)
downloadperl-9e9796d60fe5caa415e63b60595d4ea57c358a48.tar.gz
IOK vs pIOK docs
Date: Thu, 7 Jun 2001 10:09:59 +0100 (BST) Reply-To: Dave Mitchell <davem@fdgroup.co.uk> Message-Id: <200106070909.KAA25610@gizmo.fdgroup.co.uk> p4raw-id: //depot/perl@10468
-rw-r--r--pod/perlguts.pod8
1 files changed, 8 insertions, 0 deletions
diff --git a/pod/perlguts.pod b/pod/perlguts.pod
index 3fea294545..aa5de9f74f 100644
--- a/pod/perlguts.pod
+++ b/pod/perlguts.pod
@@ -274,6 +274,14 @@ pointer in an SV, you can use the following three macros instead:
These will tell you if you truly have an integer, double, or string pointer
stored in your SV. The "p" stands for private.
+The are various ways in which the private and public flags may differ.
+For example, a tied SV may have a valid underlying value in the IV slot
+(so SvIOKp is true), but the data should be accessed via the FETCH
+routine rather than directly, so SvIOK is false. Another is when
+numeric conversion has occured and precision has been lost: only the
+private flag is set on 'lossy' values. So when an NV is converted to an
+IV with loss, SvIOKp, SvNOKp and SvNOK will be set, while SvIOK wont be.
+
In general, though, it's best to use the C<Sv*V> macros.
=head2 Working with AVs