Not sure what you are talking about. Perl does have
checks in place to detect simple cases like ($a,$b)=($b,$a)
and preserve the old values long enough to do the assignment
as intended, but there is no @a=@b;push@a,@c optimization
such as you describe.
That said, there is clearly a bug here that should be
reported.