|
Server : Apache/2.2.22 (Unix) mod_ssl/2.2.22 OpenSSL/1.0.0-fips mod_auth_passthrough/2.1 mod_bwlimited/1.4 System : Linux server.jackjohnson.com 2.6.32-279.5.2.el6.x86_64 #1 SMP Fri Aug 24 01:07:11 UTC 2012 x86_64 User : jackjohn ( 502) PHP Version : 5.3.17 Disable Function : NONE Directory : /installd/perl588installer/perl-5.8.8/t/comp/ |
Upload File : |
#!./perl
BEGIN {
chdir 't';
@INC = '../lib';
require './test.pl';
}
print "1..7\n";
{
package TieAll;
# tie, track, and report what calls are made
my @calls;
sub AUTOLOAD {
for ($AUTOLOAD =~ /TieAll::(.*)/) {
if (/TIE/) { return bless {} }
elsif (/calls/) { return join ',', splice @calls }
else {
push @calls, $_;
# FETCHSIZE doesn't like undef
# if FIRSTKEY, see if NEXTKEY is also called
return 1 if /FETCHSIZE|FIRSTKEY/;
return;
}
}
}
}
tie $x, 'TieAll';
tie @x, 'TieAll';
tie %x, 'TieAll';
{our $x;}
is(TieAll->calls, '', 'our $x has no runtime effect');
{our ($x);}
is(TieAll->calls, '', 'our ($x) has no runtime effect');
{our %x;}
is(TieAll->calls, '', 'our %x has no runtime effect');
{our (%x);}
is(TieAll->calls, '', 'our (%x) has no runtime effect');
{our @x;}
is(TieAll->calls, '', 'our @x has no runtime effect');
{our (@x);}
is(TieAll->calls, '', 'our (@x) has no runtime effect');
$y = 1;
{
my $y = 2;
{
our $y = $y;
is($y, 2, 'our shouldnt be visible until introduced')
}
}