In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/724fb20655e1cbd6e734c7bc2f8ad1c8e1d40c39?hp=268da237d4c8792097559baa7a7581be61dc179e>

- Log -----------------------------------------------------------------
commit 724fb20655e1cbd6e734c7bc2f8ad1c8e1d40c39
Author: Matthew Horsfall <wolfs...@gmail.com>
Date:   Tue Jun 9 16:27:40 2015 -0400

    [perl #125369] - Set correct flags for smartmatch in certain cases
    
    Previously the aslice flags would end up as 255 in this case:
    
      $ perl -MO=Concise,-debug -e '@nums[0..1] ~~ []' | grep OP_ASLICE -A 2
      Smartmatch is experimental at -e line 1.
      -e syntax OK
        op_ppaddr       PL_ppaddr[OP_ASLICE]
        op_type         131
        op_flags        255
    
    Now:
    
      $ perl -MO=Concise,-debug -e '@nums[0..1] ~~ []' | grep OP_ASLICE -A 2
      Smartmatch is experimental at -e line 1.
      -e syntax OK
        op_ppaddr       PL_ppaddr[OP_ASLICE]
        op_type         139
        op_flags        55
-----------------------------------------------------------------------

Summary of changes:
 op.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/op.c b/op.c
index cab214a..76eee2b 100644
--- a/op.c
+++ b/op.c
@@ -7604,7 +7604,7 @@ S_ref_array_or_hash(pTHX_ OP *cond)
 
        /* anonlist now needs a list from this op, was previously used in
         * scalar context */
-       cond->op_flags |= ~(OPf_WANT_SCALAR | OPf_REF);
+       cond->op_flags &= ~(OPf_WANT_SCALAR | OPf_REF);
        cond->op_flags |= OPf_WANT_LIST;
 
        return newANONLIST(op_lvalue(cond, OP_ANONLIST));

--
Perl5 Master Repository

Reply via email to