ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/Devel-FindRef/t/02_array_hash_weaken.t
Revision: 1.1
Committed: Fri Jun 23 14:40:34 2017 UTC (6 years, 11 months ago) by root
Content type: application/x-troff
Branch: MAIN
CVS Tags: rel-1_46, rel-1_45, HEAD
Log Message:
*** empty log message ***

File Contents

# Content
1 BEGIN { $| = 1; print "1..4\n"; }
2
3 use Devel::FindRef;
4 use Scalar::Util qw(weaken);
5
6 my $y;
7 my @y = (2, \$y, [4, 5, \$y, \$y], {a => \$y});
8 weaken $y[2][2];
9
10 #print
11 Devel::FindRef::track \$y;
12 print "ok 1\n";
13
14 sub THREE { 3 }
15
16 #print
17 Devel::FindRef::track \THREE;
18
19 print "ok 2\n";
20
21 my $sub; $sub = sub {
22 if( $_[0] ) {
23 my $x = \$_[0];
24 --$$x;
25 $sub->($_[0]);
26 } else {
27 #print
28 Devel::FindRef::track \$_[0];
29 }
30 };
31
32 my $level = 3;
33 $sub->($level);
34
35 print "ok 3\n";
36
37 sub {
38 my $a = \$_[0];
39 my $b = \$a;
40 #print
41 Devel::FindRef::track \$_[0];
42 }->(20);
43 print "ok 4\n";