6 @INC = qw(: ::lib ::macos:lib);
11 if (($Config::Config{'extensions'} !~ /\bB\b/) ){
12 print "1..0 # Skip -- Perl configured without B module\n";
26 sub ok { print "ok $test\n"; $test++ }
30 my $Is_VMS = $^O eq 'VMS';
31 my $Is_MacOS = $^O eq 'MacOS';
33 my $path = join " ", map { qq["-I$_"] } @INC;
34 $path = '"-I../lib" "-Iperl_root:[lib]"' if $Is_VMS; # gets too long otherwise
35 my $redir = $Is_MacOS ? "" : "2>&1";
37 chomp($got = `$^X $path "-MB::Stash" "-Mwarnings" -e1`);
41 print "# got = $got\n";
43 my @got = map { s/^\S+ //; $_ }
45 map { lc($_) . " " . $_ }
48 print "# (after sorting)\n";
49 print "# got = @got\n";
51 @got = grep { ! /^(PerlIO|open)(?:::\w+)?$/ } @got;
53 print "# (after perlio censorings)\n";
54 print "# got = @got\n";
56 @got = grep { ! /^Win32$/ } @got if $^O eq 'MSWin32';
57 @got = grep { ! /^NetWare$/ } @got if $^O eq 'NetWare';
58 @got = grep { ! /^(Cwd|File|File::Copy|OS2)$/ } @got if $^O eq 'os2';
59 @got = grep { ! /^Cwd$/ } @got if $^O eq 'cygwin';
62 @got = grep { ! /^File(?:::Copy)?$/ } @got;
63 @got = grep { ! /^VMS(?:::Filespec)?$/ } @got;
64 @got = grep { ! /^vmsish$/ } @got;
65 # Socket is optional/compiler version dependent
66 @got = grep { ! /^Socket$/ } @got;
69 print "# (after platform censorings)\n";
70 print "# got = @got\n";
74 my $expected = "attributes Carp Carp::Heavy DB Exporter Exporter::Heavy Internals main Regexp utf8 version warnings";
76 $expected =~ s/version // if $] < 5.009;
80 use vars '$OS2::is_aout';
83 if ((($Config{static_ext} eq ' ') || ($Config{static_ext} eq ''))
84 && !($^O eq 'os2' and $OS2::is_aout)
86 print "# [$got]\n# vs.\n# [$expected]\nnot " if $got ne $expected;
89 print "ok $test # skipped: one or more static extensions\n"; $test++;