Branch: refs/heads/blead
Home: https://github.com/Perl/perl5
Commit: 53119a6d7b7c6f74ccc25456c793f7dfcad0b893
https://github.com/Perl/perl5/commit/53119a6d7b7c6f74ccc25456c793f7dfcad0b893
Author: David Mitchell <[email protected]>
Date: 2025-01-22 (Wed, 22 Jan 2025)
Changed paths:
M pp.c
M t/op/lvref.t
Log Message:
-----------
fix refassign in non-void context
GH #22710
The experimental refassign feature, \@a = $aref, which allows an
array/hash etc to be aliased rather than copied, got broken in rvalue
non-void context by v5.39.5-56-g604c0355d2. So in something like
my $x = (\@a = $aref);
the stack was underflowing. This is because previously pp_refassign()
would leave its RH argument on the stack when returning, while my commit
above made it always pop the argument off the stack.
This commit makes it only pop the arg in void context.
To unsubscribe from these emails, change your notification settings at
https://github.com/Perl/perl5/settings/notifications