From 0ecf77202426ce862c50dd98b2b8728a4e9bdba9 Mon Sep 17 00:00:00 2001 From: Ricardo Signes Date: Mon, 23 Apr 2012 18:36:37 -0400 Subject: [PATCH] perldelta: add a missing "if" to clarify bugfix --- Porting/perl5160delta.pod | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Porting/perl5160delta.pod b/Porting/perl5160delta.pod index ca3893c..0458685 100644 --- a/Porting/perl5160delta.pod +++ b/Porting/perl5160delta.pod @@ -3261,11 +3261,11 @@ working for the rest of the block.t For list assignments like C<(\$a,\$b) = (\$b,\$a)>, Perl has to make a copy of the items on the right-hand side before assignment them to the left. For efficiency's sake, it assigns the values on the right straight to the items -on the left no variable is mentioned on both sides, as in -C<(\$a,\$b) = (\$c,\$d)>. The logic for determining when it can cheat was -faulty, in that C<&&> and C<||> on the right-hand side could fool it. So -C<(\$a,\$b) = \$some_true_value && (\$b,\$a)> would end up assigning the value -of C<\$b> to both scalars. +on the left if no one variable is mentioned on both sides, as in C<(\$a,\$b) = +(\$c,\$d)>. The logic for determining when it can cheat was faulty, in that +C<&&> and C<||> on the right-hand side could fool it. So C<(\$a,\$b) = +\$some_true_value && (\$b,\$a)> would end up assigning the value of C<\$b> to +both scalars. =item * -- 1.8.3.1