home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
perl560.zip
/
t
/
comp
/
package.t
< prev
next >
Wrap
Text File
|
1999-07-20
|
967b
|
54 lines
#!./perl
print "1..8\n";
$blurfl = 123;
$foo = 3;
package xyz;
$bar = 4;
{
package ABC;
$blurfl = 5;
$main'a = $'b;
}
$ABC'dyick = 6;
$xyz = 2;
$main = join(':', sort(keys %main::));
$xyz = join(':', sort(keys %xyz::));
$ABC = join(':', sort(keys %ABC::));
if ('a' lt 'A') {
print $xyz eq 'bar:main:xyz:ABC' ? "ok 1\n" : "not ok 1 '$xyz'\n";
} else {
print $xyz eq 'ABC:bar:main:xyz' ? "ok 1\n" : "not ok 1 '$xyz'\n";
}
print $ABC eq 'blurfl:dyick' ? "ok 2\n" : "not ok 2 '$ABC'\n";
print $main'blurfl == 123 ? "ok 3\n" : "not ok 3\n";
package ABC;
print $blurfl == 5 ? "ok 4\n" : "not ok 4\n";
eval 'print $blurfl == 5 ? "ok 5\n" : "not ok 5\n";';
eval 'package main; print $blurfl == 123 ? "ok 6\n" : "not ok 6\n";';
print $blurfl == 5 ? "ok 7\n" : "not ok 7\n";
package main;
sub c { caller(0) }
sub foo {
my $s = shift;
if ($s) {
package PQR;
main::c();
}
}
print((foo(1))[0] eq 'PQR' ? "ok 8\n" : "not ok 8\n");