perl5 icon indicating copy to clipboard operation
perl5 copied to clipboard

B::Deparse.pm - add padsv_store to list in sub retscalar

Open richardleach opened this issue 3 years ago • 1 comments

Issue #20327 revealed that code that is expected to deparse to: &$uncompress(my $Tmp = shift()); has, since the addition of padsv_store, been deparsing to this: &$uncompress(scalar(my $Tmp = shift()));

This seems to be because padsv_store was not added to a particular list of scalar OPs in B::Deparse.pm.

Closes #20327.

richardleach avatar Sep 21 '22 16:09 richardleach

I built and installed a threaded perl on FreeBSD from this branch. I then consulted this URL for B::Deparse's reverse dependencies. I attempt to install a small number of those revdeps against that perl.

$ ./bin/cpanm Cache::FastMmap App::Rad B::Tap Class::Container Data::Debug Data::Dmp Data::Dump::Streamer HTML::Template::Compiled Sub::Call::Tail Sub::Name YAML::PP

I got failures in both B::Tap and Sub::Call::Tail -- but both of them have been failing their tests on multiple platforms for several years.

So, test-wise, this seems plausible -- but the p.r. should be reviewed by people more familiar with B::Deparse.

jkeenan avatar Sep 21 '22 21:09 jkeenan