The snippet :
    my $s = "foo";
    eval { $s =~ s/./die "wut"/e };
    qr/bar/;
segfaults on a threaded, debugging and poisonous perl 5.8.9. Just to be
safe, the relevant test won't be run before perl 5.10.
 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 {
 
  is "@res", '1 2 3 4', 'leave with arguments';
 }
 
-{
+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 {