diff options
author | Dave Mitchell <davem@fdisolutions.com> | 2006-05-23 22:16:28 +0000 |
---|---|---|
committer | Dave Mitchell <davem@fdisolutions.com> | 2006-05-23 22:16:28 +0000 |
commit | ed233832c7fe4d71f1f536650d0566b2e87ea46c (patch) | |
tree | b0966fb565ae0ed2a5fa7323b9283176a6d28ea8 /pod | |
parent | 206f4df72938095bd90fa94ec6df5dde9dad5df1 (diff) | |
download | perl-ed233832c7fe4d71f1f536650d0566b2e87ea46c.tar.gz |
correct POPSTACK/POPMARK confusion in perlhack.pod
p4raw-id: //depot/perl@28292
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perlhack.pod | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/pod/perlhack.pod b/pod/perlhack.pod index a976c77c84..df76d0f810 100644 --- a/pod/perlhack.pod +++ b/pod/perlhack.pod @@ -1344,8 +1344,8 @@ stack usable by each function. For instance, when dealing with a tied variable, (internally, something with "P" magic) Perl has to call methods for accesses to the tied variables. However, we need to separate the arguments exposed to the method to the argument exposed to the -original function - the store or fetch or whatever it may be. Here's how -the tied C<push> is implemented; see C<av_push> in F<av.c>: +original function - the store or fetch or whatever it may be. Here's +roughly how the tied C<push> is implemented; see C<av_push> in F<av.c>: 1 PUSHMARK(SP); 2 EXTEND(SP,2); @@ -1355,7 +1355,7 @@ the tied C<push> is implemented; see C<av_push> in F<av.c>: 6 ENTER; 7 call_method("PUSH", G_SCALAR|G_DISCARD); 8 LEAVE; - 9 POPSTACK; + 9 (void)POPMARK; The lines which concern the mark stack are the first, fifth and last lines: they save away, restore and remove the current position of the @@ -1397,7 +1397,7 @@ Perl space: C<call_method> takes care of that, and it's described in L<perlcall>. We call the C<PUSH> method in scalar context, and we're going to discard its return value. - 9 POPSTACK; + 9 (void)POPMARK; Finally, we remove the value we placed on the mark stack, since we don't need it any more. |