Linux cpanel2.daytoncreative.net 2.6.32-754.29.2.el6.x86_64 #1 SMP Tue May 12 17:39:04 UTC 2020 x86_64
Apache/2.4.43 (cPanel) OpenSSL/1.1.1g mod_bwlimited/1.4
Server IP : 70.62.220.67 & Your IP : 216.73.216.193
Domains :
Cant Read [ /etc/named.conf ]
User : michaelgreg
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
var /
log /
perl-5.20.2 /
t /
op /
Delete
Unzip
Name
Size
Permission
Date
Action
64bitint.t
8.14
KB
-r--r--r--
2014-12-27 11:49
alarm.t
1.5
KB
-r--r--r--
2014-12-27 11:49
anonsub.t
1.7
KB
-r--r--r--
2014-12-27 11:49
append.t
1.58
KB
-r--r--r--
2014-12-27 11:49
args.t
2.12
KB
-r--r--r--
2014-12-27 11:49
array.t
12.32
KB
-r--r--r--
2014-12-27 11:49
array_base.t
720
B
-r--r--r--
2014-12-27 11:49
assignwarn.t
1.52
KB
-r--r--r--
2014-12-27 11:49
attrhand.t
1.01
KB
-r--r--r--
2014-12-27 11:49
attrproto.t
6.55
KB
-r--r--r--
2014-12-27 11:49
attrs.t
10.73
KB
-r--r--r--
2014-12-27 11:49
auto.t
2.36
KB
-r--r--r--
2014-12-27 11:49
avhv.t
4.04
KB
-r--r--r--
2014-12-27 11:49
bless.t
4.12
KB
-r--r--r--
2014-12-27 11:49
blocks.t
2.95
KB
-r--r--r--
2014-12-27 11:49
bop.t
12.82
KB
-r--r--r--
2014-12-27 11:49
caller.pl
3.75
KB
-r--r--r--
2014-12-27 11:49
caller.t
8.14
KB
-r--r--r--
2014-12-27 11:49
chars.t
1.73
KB
-r--r--r--
2014-12-27 11:49
chdir.t
6.68
KB
-r--r--r--
2014-12-27 11:49
chop.t
7.67
KB
-r--r--r--
2014-12-27 11:49
chr.t
2.48
KB
-r--r--r--
2014-12-27 11:49
closure.t
19.6
KB
-r--r--r--
2014-12-27 11:49
closure_test.pl
327
B
-r--r--r--
2014-12-27 11:49
concat2.t
1.41
KB
-r--r--r--
2014-12-27 11:49
cond.t
282
B
-r--r--r--
2014-12-27 11:49
context.t
404
B
-r--r--r--
2014-12-27 11:49
coreamp.t
29.17
KB
-r--r--r--
2014-12-27 11:49
coresubs.t
4.87
KB
-r--r--r--
2014-12-27 11:49
cproto.t
3.6
KB
-r--r--r--
2014-12-27 11:49
crypt.t
1.17
KB
-r--r--r--
2014-12-27 11:49
current_sub.t
1.71
KB
-r--r--r--
2014-12-27 11:49
dbm.t
1.54
KB
-r--r--r--
2014-12-27 11:49
defined.t
551
B
-r--r--r--
2014-12-27 11:49
defins.t
4.84
KB
-r--r--r--
2014-12-27 11:49
delete.t
2.93
KB
-r--r--r--
2014-12-27 11:49
die.t
1.99
KB
-r--r--r--
2014-12-27 11:49
die_except.t
1.57
KB
-r--r--r--
2014-12-27 11:49
die_exit.t
1.9
KB
-r--r--r--
2014-12-27 11:49
die_keeperr.t
1.57
KB
-r--r--r--
2014-12-27 11:49
die_unwind.t
1.69
KB
-r--r--r--
2014-12-27 11:49
do.t
8.35
KB
-r--r--r--
2014-12-27 11:49
dor.t
2.64
KB
-r--r--r--
2014-12-27 11:49
each.t
7.09
KB
-r--r--r--
2014-12-27 11:49
each_array.t
5.48
KB
-r--r--r--
2014-12-27 11:49
eval.t
13.92
KB
-r--r--r--
2014-12-27 11:49
evalbytes.t
989
B
-r--r--r--
2014-12-27 11:49
exec.t
4.36
KB
-r--r--r--
2014-12-27 11:49
exists_sub.t
2.09
KB
-r--r--r--
2014-12-27 11:49
exp.t
1.47
KB
-r--r--r--
2014-12-27 11:49
fh.t
790
B
-r--r--r--
2014-12-27 11:49
filehandle.t
564
B
-r--r--r--
2014-12-27 11:49
filetest.t
11.97
KB
-r--r--r--
2014-12-27 11:49
filetest_stack_ok.t
1.12
KB
-r--r--r--
2014-12-27 11:49
filetest_t.t
1.18
KB
-r--r--r--
2014-12-27 11:49
flip.t
868
B
-r--r--r--
2014-12-27 11:49
for.t
12.77
KB
-r--r--r--
2014-12-27 11:49
fork.t
8.8
KB
-r--r--r--
2014-12-27 11:49
fresh_perl_utf8.t
411
B
-r--r--r--
2014-12-27 11:49
getpid.t
1.61
KB
-r--r--r--
2014-12-27 11:49
getppid.t
3.13
KB
-r--r--r--
2014-12-27 11:49
glob.t
4.22
KB
-r--r--r--
2014-12-27 11:49
gmagic.t
5.97
KB
-r--r--r--
2014-12-27 11:49
goto.t
14.85
KB
-r--r--r--
2014-12-27 11:49
goto_xs.t
2.98
KB
-r--r--r--
2014-12-27 11:49
grent.t
4.46
KB
-r--r--r--
2014-12-27 11:49
grep.t
6.66
KB
-r--r--r--
2014-12-27 11:49
groups.t
11.15
KB
-r--r--r--
2014-12-27 11:49
gv.t
30.15
KB
-r--r--r--
2014-12-27 11:49
hash-rt85026.t
1.57
KB
-r--r--r--
2014-12-27 11:49
hash.t
6.02
KB
-r--r--r--
2014-12-27 11:49
hashassign.t
18.85
KB
-r--r--r--
2014-12-27 11:49
hashwarn.t
2.05
KB
-r--r--r--
2014-12-27 11:49
heredoc.t
2.29
KB
-r--r--r--
2014-12-27 11:49
inc.t
6.72
KB
-r--r--r--
2014-12-27 11:49
inccode-tie.t
338
B
-r--r--r--
2014-12-27 11:49
inccode.t
11.19
KB
-r--r--r--
2014-12-27 11:49
incfilter.t
7.33
KB
-r--r--r--
2014-12-27 11:49
index.t
6.81
KB
-r--r--r--
2014-12-27 11:49
index_thr.t
56
B
-r--r--r--
2014-12-27 11:49
int.t
1.72
KB
-r--r--r--
2014-12-27 11:49
join.t
3.2
KB
-r--r--r--
2014-12-27 11:49
kill0.t
3.18
KB
-r--r--r--
2014-12-27 11:49
kill0_child
596
B
-r--r--r--
2014-12-27 11:49
kvaslice.t
4.66
KB
-r--r--r--
2014-12-27 11:49
kvhslice.t
5.44
KB
-r--r--r--
2014-12-27 11:49
lc.t
11.8
KB
-r--r--r--
2014-12-27 11:49
leaky-magic.t
3.43
KB
-r--r--r--
2014-12-27 11:49
length.t
5.03
KB
-r--r--r--
2014-12-27 11:49
lex.t
2.33
KB
-r--r--r--
2014-12-27 11:49
lex_assign.t
7.17
KB
-r--r--r--
2014-12-27 11:49
lexsub.t
19.62
KB
-r--r--r--
2014-12-27 12:24
lfs.t
6.2
KB
-r--r--r--
2014-12-27 11:49
list.t
5.31
KB
-r--r--r--
2014-12-27 11:52
local.t
17.11
KB
-r--r--r--
2014-12-27 11:49
localref.t
2.73
KB
-r--r--r--
2014-12-27 11:49
lock.t
465
B
-r--r--r--
2014-12-27 11:49
loopctl.t
17.88
KB
-r--r--r--
2014-12-27 11:49
lop.t
1.2
KB
-r--r--r--
2014-12-27 11:49
magic-27839.t
622
B
-r--r--r--
2014-12-27 11:49
magic.t
21.81
KB
-r--r--r--
2014-12-27 11:49
method.t
18.91
KB
-r--r--r--
2014-12-27 11:49
mkdir.t
1.25
KB
-r--r--r--
2014-12-27 11:49
my.t
4.29
KB
-r--r--r--
2014-12-27 11:49
my_stash.t
769
B
-r--r--r--
2014-12-27 11:49
mydef.t
5.51
KB
-r--r--r--
2014-12-27 11:49
negate.t
4.3
KB
-r--r--r--
2014-12-27 11:49
not.t
3.15
KB
-r--r--r--
2014-12-27 11:49
numconvert.t
8.33
KB
-r--r--r--
2014-12-27 11:49
oct.t
3.58
KB
-r--r--r--
2014-12-27 11:49
or.t
1.79
KB
-r--r--r--
2014-12-27 11:49
ord.t
2.48
KB
-r--r--r--
2014-12-27 11:49
overload_integer.t
506
B
-r--r--r--
2014-12-27 11:49
override.t
4.33
KB
-r--r--r--
2014-12-27 11:49
pack.t
65.34
KB
-r--r--r--
2014-12-27 11:49
packagev.t
5.97
KB
-r--r--r--
2014-12-27 11:49
pos.t
3.59
KB
-r--r--r--
2014-12-27 11:49
postfixderef.t
11.97
KB
-r--r--r--
2014-12-27 11:49
pow.t
2.34
KB
-r--r--r--
2014-12-27 11:49
print.t
692
B
-r--r--r--
2014-12-27 11:49
protowarn.t
1.35
KB
-r--r--r--
2014-12-27 11:49
push.t
3.03
KB
-r--r--r--
2014-12-27 11:49
pwent.t
6.63
KB
-r--r--r--
2014-12-27 11:49
qr.t
2.32
KB
-r--r--r--
2014-12-27 11:49
quotemeta.t
5.61
KB
-r--r--r--
2014-12-27 11:49
rand.t
8.31
KB
-r--r--r--
2014-12-27 11:49
range.t
9.25
KB
-r--r--r--
2014-12-27 11:49
read.t
2.28
KB
-r--r--r--
2014-12-27 11:49
readdir.t
2.09
KB
-r--r--r--
2014-12-27 11:49
readline.t
7.19
KB
-r--r--r--
2014-12-27 11:49
recurse.t
2.73
KB
-r--r--r--
2014-12-27 11:49
ref.t
22.74
KB
-r--r--r--
2014-12-27 11:49
repeat.t
4.8
KB
-r--r--r--
2014-12-27 11:49
require_37033.t
1.18
KB
-r--r--r--
2014-12-27 11:49
require_errors.t
3.68
KB
-r--r--r--
2014-12-27 11:49
reset.t
5.41
KB
-r--r--r--
2014-12-27 11:49
reverse.t
3.01
KB
-r--r--r--
2014-12-27 11:49
rt119311.t
5.58
KB
-r--r--r--
2014-12-27 11:49
runlevel.t
5.28
KB
-r--r--r--
2014-12-27 11:49
select.t
1.03
KB
-r--r--r--
2014-12-27 11:49
setpgrpstack.t
378
B
-r--r--r--
2014-12-27 11:49
sigdispatch.t
4.33
KB
-r--r--r--
2014-12-27 11:49
signatures.t
41.02
KB
-r--r--r--
2014-12-27 11:49
sigsystem.t
1.36
KB
-r--r--r--
2014-12-27 11:49
sleep.t
468
B
-r--r--r--
2014-12-27 11:49
smartkve.t
18.26
KB
-r--r--r--
2014-12-27 11:49
smartmatch.t
10.34
KB
-r--r--r--
2014-12-27 11:49
sort.t
28.4
KB
-r--r--r--
2015-01-10 13:17
splice.t
3.38
KB
-r--r--r--
2014-12-27 11:49
split.t
13.1
KB
-r--r--r--
2014-12-27 11:49
split_unicode.t
2.4
KB
-r--r--r--
2014-12-27 11:49
sprintf.t
28.5
KB
-r--r--r--
2014-12-27 11:49
sprintf2.t
5.49
KB
-r--r--r--
2014-12-27 11:49
srand.t
1.87
KB
-r--r--r--
2014-12-27 11:49
sselect.t
2.67
KB
-r--r--r--
2014-12-27 11:49
stash.t
9.01
KB
-r--r--r--
2014-12-27 11:49
stat.t
17.51
KB
-r--r--r--
2014-12-27 11:49
state.t
9.72
KB
-r--r--r--
2014-12-27 12:15
study.t
2.99
KB
-r--r--r--
2014-12-27 11:49
studytied.t
1.29
KB
-r--r--r--
2014-12-27 11:49
sub.t
6.54
KB
-r--r--r--
2014-12-27 11:49
sub_lval.t
24.2
KB
-r--r--r--
2014-12-27 11:49
substr.t
20.53
KB
-r--r--r--
2014-12-27 11:49
substr_thr.t
56
B
-r--r--r--
2014-12-27 11:49
svleak.pl
6
B
-r--r--r--
2014-12-27 11:49
svleak.t
15.93
KB
-r--r--r--
2015-01-10 12:06
switch.t
28.06
KB
-r--r--r--
2014-12-27 11:49
symbolcache.t
1.06
KB
-r--r--r--
2014-12-27 11:49
sysio.t
5
KB
-r--r--r--
2014-12-27 11:49
taint.t
66.84
KB
-r--r--r--
2014-12-27 12:32
threads-dirh.t
3.47
KB
-r--r--r--
2014-12-27 11:49
threads.t
9.3
KB
-r--r--r--
2014-12-27 11:49
threads_create.pl
42
B
-r--r--r--
2014-12-27 11:49
tie.t
28.34
KB
-r--r--r--
2014-12-27 11:49
tie_fetch_count.t
11.49
KB
-r--r--r--
2014-12-27 11:49
tiearray.t
4.53
KB
-r--r--r--
2014-12-27 11:49
tiehandle.t
5.27
KB
-r--r--r--
2014-12-27 11:49
time.t
7.86
KB
-r--r--r--
2015-01-17 11:51
time_loop.t
378
B
-r--r--r--
2014-12-27 11:49
tr.t
12.99
KB
-r--r--r--
2014-12-27 11:49
undef.t
3.15
KB
-r--r--r--
2014-12-27 11:49
universal.t
8.32
KB
-r--r--r--
2014-12-27 11:49
unlink.t
1.02
KB
-r--r--r--
2014-12-27 11:49
unshift.t
3.17
KB
-r--r--r--
2014-12-27 11:49
upgrade.t
1.15
KB
-r--r--r--
2014-12-27 11:49
utf8cache.t
3.83
KB
-r--r--r--
2014-12-27 11:49
utf8decode.t
7.59
KB
-r--r--r--
2014-12-27 11:49
utf8magic.t
808
B
-r--r--r--
2014-12-27 11:49
utfhash.t
5.33
KB
-r--r--r--
2014-12-27 11:49
utftaint.t
4.46
KB
-r--r--r--
2014-12-27 11:49
vec.t
2.87
KB
-r--r--r--
2014-12-27 11:49
ver.t
8.39
KB
-r--r--r--
2014-12-27 11:49
waitpid.t
973
B
-r--r--r--
2014-12-27 11:49
wantarray.t
874
B
-r--r--r--
2014-12-27 11:49
warn.t
4.15
KB
-r--r--r--
2014-12-27 11:49
while.t
3.81
KB
-r--r--r--
2014-12-27 11:49
write.t
39.99
KB
-r--r--r--
2015-01-24 15:03
yadayada.t
1.67
KB
-r--r--r--
2015-01-15 22:12
Save
Rename
#!./perl BEGIN { chdir 't' if -d 't'; @INC = qw(../lib); } BEGIN { require "./test.pl"; } plan( tests => 58 ); # Used to segfault (bug #15479) fresh_perl_like( 'delete $::{STDERR}; my %a = ""', qr/Odd number of elements in hash assignment at - line 1\./, { switches => [ '-w' ] }, 'delete $::{STDERR} and print a warning', ); # Used to segfault fresh_perl_is( 'BEGIN { $::{"X::"} = 2 }', '', { switches => [ '-w' ] }, q(Insert a non-GV in a stash, under warnings 'once'), ); # Used to segfault, too SKIP: { skip_if_miniperl('requires XS'); fresh_perl_like( 'sub foo::bar{}; $mro::{get_mro}=*foo::bar; undef %foo::; require mro', qr/^Subroutine mro::get_mro redefined at /, { switches => [ '-w' ] }, q(Defining an XSUB over an existing sub with no stash under warnings), ); } { no warnings 'deprecated'; ok( defined %oedipa::maas::, q(stashes happen to be defined if not used) ); ok( defined %{"oedipa::maas::"}, q(- work with hard refs too) ); ok( defined %tyrone::slothrop::, q(stashes are defined if seen at compile time) ); ok( defined %{"tyrone::slothrop::"}, q(- work with hard refs too) ); ok( defined %bongo::shaftsbury::, q(stashes are defined if a var is seen at compile time) ); ok( defined %{"bongo::shaftsbury::"}, q(- work with hard refs too) ); } package tyrone::slothrop; $bongo::shaftsbury::scalar = 1; package main; # Used to warn # Unbalanced string table refcount: (1) for "A::" during global destruction. # for ithreads. { local $ENV{PERL_DESTRUCT_LEVEL} = 2; fresh_perl_is( 'package A::B; sub a { // }; %A::=""', '', {}, ); # Variant of the above which creates an object that persists until global # destruction, and triggers an assertion failure prior to change # a420522db95b7762 fresh_perl_is( 'use Exporter; package A; sub a { // }; delete $::{$_} for keys %::', '', {}, ); } # now tests in eval ok( eval { no warnings 'deprecated'; defined %achtfaden:: }, 'works in eval{}' ); ok( eval q{ no warnings 'deprecated'; defined %schoenmaker:: }, 'works in eval("")' ); # now tests with strictures { use strict; no warnings 'deprecated'; ok( defined %pig::, q(referencing a non-existent stash doesn't produce stricture errors) ); ok( !exists $pig::{bodine}, q(referencing a non-existent stash element doesn't produce stricture errors) ); } SKIP: { eval { require B; 1 } or skip "no B", 29; *b = \&B::svref_2object; my $CVf_ANON = B::CVf_ANON(); my $sub = do { package one; \&{"one"}; }; delete $one::{one}; my $gv = b($sub)->GV; object_ok( $gv, "B::GV", "deleted stash entry leaves CV with valid GV"); is( b($sub)->CvFLAGS & $CVf_ANON, $CVf_ANON, "...and CVf_ANON set"); is( eval { $gv->NAME }, "__ANON__", "...and an __ANON__ name"); is( eval { $gv->STASH->NAME }, "one", "...but leaves stash intact"); $sub = do { package two; \&{"two"}; }; %two:: = (); $gv = b($sub)->GV; object_ok( $gv, "B::GV", "cleared stash leaves CV with valid GV"); is( b($sub)->CvFLAGS & $CVf_ANON, $CVf_ANON, "...and CVf_ANON set"); is( eval { $gv->NAME }, "__ANON__", "...and an __ANON__ name"); is( eval { $gv->STASH->NAME }, "two", "...but leaves stash intact"); $sub = do { package three; \&{"three"}; }; undef %three::; $gv = b($sub)->GV; object_ok( $gv, "B::GV", "undefed stash leaves CV with valid GV"); is( b($sub)->CvFLAGS & $CVf_ANON, $CVf_ANON, "...and CVf_ANON set"); is( eval { $gv->NAME }, "__ANON__", "...and an __ANON__ name"); is( eval { $gv->STASH->NAME }, "__ANON__", "...and an __ANON__ stash"); my $sub = do { package four; sub { 1 }; }; %four:: = (); my $gv = B::svref_2object($sub)->GV; ok($gv->isa(q/B::GV/), "cleared stash leaves anon CV with valid GV"); my $st = eval { $gv->STASH->NAME }; is($st, q/four/, "...but leaves the stash intact"); my $sub = do { package five; sub { 1 }; }; undef %five::; $gv = B::svref_2object($sub)->GV; ok($gv->isa(q/B::GV/), "undefed stash leaves anon CV with valid GV"); $st = eval { $gv->STASH->NAME }; { local $TODO = 'STASHES not anonymized'; is($st, q/__ANON__/, "...and an __ANON__ stash"); } my $sub = do { package six; \&{"six"} }; my $stash_glob = delete $::{"six::"}; # Now free the GV while the stash still exists (though detached) delete $$stash_glob{"six"}; $gv = B::svref_2object($sub)->GV; ok($gv->isa(q/B::GV/), 'anonymised CV whose stash is detached still has a GV'); is $gv->STASH->NAME, '__ANON__', 'CV anonymised when its stash is detached becomes __ANON__::__ANON__'; # CvSTASH should be null on a named sub if the stash has been deleted { package FOO; sub foo {} my $rfoo = \&foo; package main; delete $::{'FOO::'}; my $cv = B::svref_2object($rfoo); # (is there a better way of testing for NULL ?) my $stash = $cv->STASH; like($stash, qr/B::SPECIAL/, "NULL CvSTASH on named sub"); } # on glob reassignment, orphaned CV should have anon CvGV { my $r; eval q[ package FOO2; sub f{}; $r = \&f; *f = sub {}; ]; delete $FOO2::{f}; my $cv = B::svref_2object($r); my $gv = $cv->GV; ok($gv->isa(q/B::GV/), "orphaned CV has valid GV"); is($gv->NAME, '__ANON__', "orphaned CV has anon GV"); } # deleting __ANON__ glob shouldn't break things { package FOO3; sub named {}; my $anon = sub {}; my $named = eval q[\&named]; package main; delete $FOO3::{named}; # make named anonymous delete $FOO3::{__ANON__}; # whoops! my ($cv,$gv); $cv = B::svref_2object($named); $gv = $cv->GV; ok($gv->isa(q/B::GV/), "ex-named CV has valid GV"); is($gv->NAME, '__ANON__', "ex-named CV has anon GV"); $cv = B::svref_2object($anon); $gv = $cv->GV; ok($gv->isa(q/B::GV/), "anon CV has valid GV"); is($gv->NAME, '__ANON__', "anon CV has anon GV"); } { my $r; { package bloop; BEGIN { $r = \&main::whack; } } my $br = B::svref_2object($r); is ($br->STASH->NAME, 'bloop', 'stub records the package it was compiled in'); # Arguably this shouldn't quite be here, but it's easy to add it # here, and tricky to figure out a different good place for it. like ($br->FILE, qr/stash/i, 'stub records the file it was compiled in'); # We need to take this reference "late", after the subroutine is # defined. $br = B::svref_2object(eval 'sub whack {}; \&whack'); die $@ if $@; is ($br->STASH->NAME, 'main', 'definition overrides the package it was compiled in'); like ($br->FILE, qr/eval/, 'definition overrides the file it was compiled in'); } } # [perl #58530] fresh_perl_is( 'sub foo { 1 }; use overload q/""/ => \&foo;' . 'delete $main::{foo}; bless []', "", {}, "no segfault with overload/deleted stash entry [#58530]", ); # make sure having a sub called __ANON__ doesn't confuse perl. { my $c; sub __ANON__ { $c = (caller(0))[3]; } __ANON__(); is ($c, 'main::__ANON__', '__ANON__ sub called ok'); } # Stashes that are effectively renamed { package rile; use Config; my $obj = bless []; my $globref = \*tat; # effectively rename a stash *slin:: = *rile::; *rile:: = *zor::; ::is *$globref, "*rile::tat", 'globs stringify the same way when stashes are moved'; ::is ref $obj, "rile", 'ref() returns the same thing when an object’s stash is moved'; ::like "$obj", qr "^rile=ARRAY\(0x[\da-f]+\)\z", 'objects stringify the same way when their stashes are moved'; ::is eval '__PACKAGE__', 'rile', '__PACKAGE__ returns the same when the current stash is moved'; # Now detach it completely from the symtab, making it effect- # ively anonymous my $life_raft = \%slin::; *slin:: = *zor::; ::is *$globref, "*rile::tat", 'globs stringify the same way when stashes are detached'; ::is ref $obj, "rile", 'ref() returns the same thing when an object’s stash is detached'; ::like "$obj", qr "^rile=ARRAY\(0x[\da-f]+\)\z", 'objects stringify the same way when their stashes are detached'; ::is eval '__PACKAGE__', 'rile', '__PACKAGE__ returns the same when the current stash is detached'; } # Setting the name during undef %stash:: should have no effect. { my $glob = \*Phoo::glob; sub o::DESTROY { eval '++$Phoo::bar' } no strict 'refs'; ${"Phoo::thing1"} = bless [], "o"; undef %Phoo::; is "$$glob", "*__ANON__::glob", "setting stash name during undef has no effect"; } # [perl #88134] incorrect package structure { package Bear::; sub baz{1} package main; ok eval { Bear::::baz() }, 'packages ending with :: are self-consistent'; } # [perl #88138] ' not equivalent to :: before a null ${"a'\0b"} = "c"; is ${"a::\0b"}, "c", "' is equivalent to :: before a null"; # [perl #101486] Clobbering the current package ok eval ' package Do; BEGIN { *Do:: = *Re:: } sub foo{}; 1 ', 'no crashing or errors when clobbering the current package';