This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fix bare blocks in lvalue subs
authorFather Chrysostomos <sprout@cpan.org>
Thu, 24 Oct 2013 12:41:17 +0000 (05:41 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Thu, 24 Oct 2013 12:41:17 +0000 (05:41 -0700)
commita373464fd655c7246cf689f421efc503307b705c
tree5ef4595eced510b2ea8b5cc6548e9f87c82beb09
parenta9b7658f66b4773c3d3b573410a0bc5963f7e279
Fix bare blocks in lvalue subs

If a bare block is the last thing in an lvalue sub, OP_LEAVELOOP needs
to propagate lvalue context and handle returned arrays properly, just
as OP_LEAVE has done since yesterday.

This is a follow-up to 2ec7f6f24289.  This came up in ticket #119797.
ext/B/B/Concise.pm
op.c
op.h
pp_ctl.c
t/op/sub_lval.t