1  pad.c		AOK
2
3     "my" variable %s masks earlier declaration in same scope
4	my $x;
5	my $x ;
6
7     Variable "%s" may be unavailable 
8	sub x {
9      	    my $x;
10      	    sub y {
11         	$x
12      	    }
13   	}
14
15     Variable "%s" will not stay shared 
16	sub x {
17      	    my $x;
18      	    sub y {
19         	sub { $x }
20      	    }
21   	}
22    "our" variable %s redeclared	(Did you mean "local" instead of "our"?)
23	our $x;
24	{
25	    our $x;
26	}
27
28    %s never introduced		[pad_leavemy]	TODO
29    
30__END__
31# pad.c
32use warnings 'misc' ;
33my $x ;
34my $x ;
35my $y = my $y ;
36no warnings 'misc' ;
37my $x ;
38my $y ;
39EXPECT
40"my" variable $x masks earlier declaration in same scope at - line 4.
41"my" variable $y masks earlier declaration in same statement at - line 5.
42########
43# pad.c
44use warnings 'closure' ;
45sub x {
46      my $x;
47      sub y {
48         $x
49      }
50   }
51EXPECT
52Variable "$x" will not stay shared at - line 7.
53########
54# pad.c
55no warnings 'closure' ;
56sub x {
57      my $x;
58      sub y {
59         $x
60      }
61   }
62EXPECT
63
64########
65# pad.c
66use warnings 'closure' ;
67sub x {
68      our $x;
69      sub y {
70         $x
71      }
72   }
73EXPECT
74
75########
76# pad.c
77use warnings 'closure' ;
78sub x {
79      my $x;
80      sub y {
81         sub { $x }
82      }
83   }
84EXPECT
85Variable "$x" may be unavailable at - line 6.
86########
87# pad.c
88no warnings 'closure' ;
89sub x {
90      my $x;
91      sub y {
92         sub { $x }
93      }
94   }
95EXPECT
96
97########
98use warnings 'misc' ;
99our $x;
100{
101    our $x;
102}
103EXPECT
104"our" variable $x redeclared at - line 4.
105	(Did you mean "local" instead of "our"?)
106########
107# an our var being introduced should suppress errors about global syms
108use strict;
109use warnings;
110our $x unless $x;
111EXPECT
112