Branch: refs/heads/davem/gh22710
Home: https://github.com/Perl/perl5
Commit: 38b8018b12e868fb6294fcf2af4d12614741e9fe
https://github.com/Perl/perl5/commit/38b8018b12e868fb6294fcf2af4d12614741e9fe
Author: David Mitchell <[email protected]>
Date: 2025-01-20 (Mon, 20 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