undef &skip;
}
+skip_all "Unhappy on MacOS" if $^O eq 'MacOS';
+
#
# ./test.pl does real evilness by jumping to a label.
# This function copies the skip from ./test, omitting the goto.
{
my $datafile = "datatmp000";
1 while -f ++ $datafile;
- END {unlink_all $datafile}
+ END {unlink_all $datafile if $datafile}
open MY_DATA, "> $datafile" or die "Failed to open $datafile: $!";
print MY_DATA << " --";
{
my $progfile = "progtmp000";
1 while -f ++ $progfile;
- END {unlink_all $progfile}
+ END {unlink_all $progfile if $progfile}
my @programs = (<< ' --', << ' --');
#!./perl
--
chomp @programs;
- if ($^O eq 'VMS') {
+ if ($^O eq 'VMS' or $^O eq 'MSWin32') {
# VMS needs extensions for files to be executable,
# but the Japhs above rely on $0 being exactly the
# filename of the program.
- skip "VMS", 2 * @programs;
+ skip $^O, 2 * @programs;
last
}
SWITCHES
-Mstrict='}); print "Just another Perl Hacker"; ({'
-l
-SKIP_OS: VMS
+SKIP: No longer works in 5.8.2 and beyond.
MSWin32
NetWare
####### Prototype fun 2
print prototype sub "Just another Perl Hacker" {};
+SKIP: Abuses a fixed bug.
####### Prototype fun 3
sub _ "Just another Perl Hacker"; print prototype \&_
+SKIP: Abuses a fixed bug.
####### Split 1
split // => '"';
${"@_"} = "/"; split // => eval join "+" => 1 .. 7;
*{"@_"} = sub {foreach (sort keys %_) {print "$_ $_{$_} "}};
%{"@_"} = %_ = (Just => another => Perl => Hacker); &{%{%_}};
+SKIP: Hashes are now randomized.
EXPECT: $JaPH_s
####### Split 2
$" = "/"; split // => eval join "+" => 1 .. 7;
*{"@_"} = sub {foreach (sort keys %_) {print "$_ $_{$_} "}};
%_ = (Just => another => Perl => Hacker); &{%_};
+SKIP: Hashes are now randomized.
EXPECT: $JaPH_s
####### Split 3
$" = "/"; split $, => eval join "+" => 1 .. 7;
*{"@_"} = sub {foreach (sort keys %_) {print "$_ $_{$_} "}};
%{"@_"} = %_ = (Just => another => Perl => Hacker); &{%{%_}};
+SKIP: Hashes are now randomized.
EXPECT: $JaPH_s
####### Here documents 1