X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F55-yield-target.t;h=ced05c8bbcdca6c6d7fb5ed9b80b887420210d07;hb=eefb9e3f4b67e0aa0e8c3e705d7f7010a49f0540;hp=46ea7f5d51e44287355cb7d3aea7dd0c290e5a60;hpb=9f4e270a50090f065bbeebbcac06fd6b4297e45c;p=perl%2Fmodules%2FScope-Upper.git diff --git a/t/55-yield-target.t b/t/55-yield-target.t index 46ea7f5..ced05c8 100644 --- a/t/55-yield-target.t +++ b/t/55-yield-target.t @@ -63,7 +63,9 @@ is_deeply \@res, [ 15, 19 ], 'yield() in for () { ... }'; is $loop, 21, 'yield() exited while'; is_deeply \@res, [ 20, 23 ], 'yield() in while () { ... }'; -{ +SKIP: { + skip '"eval { $str =~ s/./die q[foo]/e }" breaks havoc on perl 5.8 and below' + => 1 if "$]" < 5.010; my $s = 'a'; local $@; eval { @@ -81,6 +83,12 @@ SKIP: { if "$]" < 5.010; @res = eval <<'TESTCASE'; + BEGIN { + if ("$]" >= 5.017_011) { + require warnings; + warnings->unimport('experimental::smartmatch'); + } + } use feature 'switch'; (24, do { given (25) { @@ -96,6 +104,12 @@ TESTCASE # end of the enclosing given block. @res = (); eval <<'TESTCASE'; + BEGIN { + if ("$]" >= 5.017_011) { + require warnings; + warnings->unimport('experimental::smartmatch'); + } + } use feature 'switch'; @res = (28, do { given (29) { @@ -113,6 +127,12 @@ TESTCASE # But calling yield() in when() in for() sends us at the next iteration. @res = (); eval <<'TESTCASE'; + BEGIN { + if ("$]" >= 5.017_011) { + require warnings; + warnings->unimport('experimental::smartmatch'); + } + } use feature 'switch'; @res = (31, do { for (32, 33) {