summaryrefslogtreecommitdiff
path: root/pod
diff options
context:
space:
mode:
authorFather Chrysostomos <sprout@cpan.org>2011-02-11 13:46:47 -0800
committerFather Chrysostomos <sprout@cpan.org>2011-02-11 14:07:24 -0800
commitb208c909347c1ee277714eaa1bda5a4e0d85a64e (patch)
tree372c89e27af71af53cf722b22873d6500863363f /pod
parent82bcec1beafdddf442ea155a666fc0b0dce8fe5f (diff)
downloadperl-b208c909347c1ee277714eaa1bda5a4e0d85a64e.tar.gz
perlfunc/eval: $@ is now set after unwinding
Diffstat (limited to 'pod')
-rw-r--r--pod/perlfunc.pod6
1 files changed, 3 insertions, 3 deletions
diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod
index 654ea85dfd..ece100551f 100644
--- a/pod/perlfunc.pod
+++ b/pod/perlfunc.pod
@@ -1676,8 +1676,8 @@ normally you I<would> like to use double quotes, except that in this
particular situation, you can just use symbolic references instead, as
in case 6.
-The assignment to C<$@> occurs before restoration of localised variables,
-which means a temporary is required if you want to mask some but not all
+Before Perl 5.14, the assignment to C<$@> occured before restoration of localised variables, which means that, if your code is to run on older
+versions, a temporary is required if you want to mask some but not all
errors:
# alter $@ on nefarious repugnancy only
@@ -1686,7 +1686,7 @@ errors:
{
local $@; # protect existing $@
eval { test_repugnancy() };
- # $@ =~ /nefarious/ and die $@; # DOES NOT WORK
+ # $@ =~ /nefarious/ and die $@; # Perl 5.14 and higher only
$@ =~ /nefarious/ and $e = $@;
}
die $e if defined $e