@@ -14,7 +14,7 @@ BEGIN {
14
14
}
15
15
use OptreeCheck;
16
16
use Config;
17
- plan tests => 37 ;
17
+ plan tests => 43 ;
18
18
19
19
pass(" GENERAL OPTREE EXAMPLES" );
20
20
@@ -653,6 +653,60 @@ EOT_EOT
653
653
# 3 <1> leavesub[1 ref] K/REFC,1
654
654
EONT_EONT
655
655
656
+ pass(" rpeep - if ($a || $b )" );
657
+
658
+ checkOptree ( name => ' if ($a || $b) { } return 1' ,
659
+ code => ' if ($a || $b) { } return 1' ,
660
+ bcopts => ' -exec' ,
661
+ expect => <<'EOT_EOT' , expect_nt => <<'EONT_EONT' );
662
+ # 1 <;> nextstate(main 997 (eval 15):1) v
663
+ # 2 <#> gvsv[*a] s
664
+ # 3 <|> or(other->4) sK/1
665
+ # 4 <#> gvsv[*b] s
666
+ # 5 <|> and(other->6) vK/1
667
+ # 6 <0> stub v
668
+ # 7 <;> nextstate(main 997 (eval 15):1) v
669
+ # 8 <$> const[IV 1] s
670
+ # 9 <1> leavesub[1 ref] K/REFC,1
671
+ EOT_EOT
672
+ # 1 <;> nextstate(main 997 (eval 15):1) v
673
+ # 2 <$> gvsv(*a) s
674
+ # 3 <|> or(other->4) sK/1
675
+ # 4 <$> gvsv(*b) s
676
+ # 5 <|> and(other->6) vK/1
677
+ # 6 <0> stub v
678
+ # 7 <;> nextstate(main 3 (eval 3):1) v
679
+ # 8 <$> const(IV 1) s
680
+ # 9 <1> leavesub[1 ref] K/REFC,1
681
+ EONT_EONT
682
+
683
+ pass(" rpeep - unless ($a && $b )" );
684
+
685
+ checkOptree ( name => ' unless ($a && $b) { } return 1' ,
686
+ code => ' unless ($a && $b) { } return 1' ,
687
+ bcopts => ' -exec' ,
688
+ expect => <<'EOT_EOT' , expect_nt => <<'EONT_EONT' );
689
+ # 1 <;> nextstate(main 997 (eval 15):1) v
690
+ # 2 <#> gvsv[*a] s
691
+ # 3 <|> and(other->4) sK/1
692
+ # 4 <#> gvsv[*b] s
693
+ # 5 <|> or(other->6) vK/1
694
+ # 6 <0> stub v
695
+ # 7 <;> nextstate(main 997 (eval 15):1) v
696
+ # 8 <$> const[IV 1] s
697
+ # 9 <1> leavesub[1 ref] K/REFC,1
698
+ EOT_EOT
699
+ # 1 <;> nextstate(main 997 (eval 15):1) v
700
+ # 2 <$> gvsv(*a) s
701
+ # 3 <|> and(other->4) sK/1
702
+ # 4 <$> gvsv(*b) s
703
+ # 5 <|> or(other->6) vK/1
704
+ # 6 <0> stub v
705
+ # 7 <;> nextstate(main 3 (eval 3):1) v
706
+ # 8 <$> const(IV 1) s
707
+ # 9 <1> leavesub[1 ref] K/REFC,1
708
+ EONT_EONT
709
+
656
710
__END__
657
711
658
712
#######################################################################
0 commit comments