This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Make list assignment respect foreach aliasing
authorFather Chrysostomos <sprout@cpan.org>
Thu, 2 Oct 2014 19:44:19 +0000 (12:44 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Thu, 2 Oct 2014 21:40:21 +0000 (14:40 -0700)
commitc997e36218768fb357b1f3d160131f259311e3a3
tree75b702930bf19281553b8ddac1eaea9268cdc054
parentfda8e777fa2df245de209839b8b21252b2f12c47
Make list assignment respect foreach aliasing

See ff2a62e0c8 for the explanation.  The bug fix in that commit did
not apply to foreach’s aliasing.

In short, ($a,$b)=($c,$d) needs to account for whether two of those
variable names could be referring to the same variable.

This commit causes the test suite to exercise a code path in scope.c
added by ff2a62e0c8, which turned out to be buggy.  (I forgot to test
it at the time.)
embed.fnc
embed.h
pp_ctl.c
proto.h
scope.c
sv.c
t/op/for.t