xref: /openbsd-src/gnu/usr.bin/perl/t/lib/warnings/3both (revision 850e275390052b330d93020bf619a739a3c277ac)
155745691SmillertCheck interaction of $^W and lexical
255745691Smillert
355745691Smillert__END__
455745691Smillert
555745691Smillert# Check interaction of $^W and use warnings
655745691Smillertsub fred {
755745691Smillert    use warnings ;
855745691Smillert    my $b ;
955745691Smillert    chop $b ;
1055745691Smillert}
1155745691Smillert{ local $^W = 0 ;
1255745691Smillert  fred() ;
1355745691Smillert}
1455745691Smillert
1555745691SmillertEXPECT
16*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
1755745691Smillert########
1855745691Smillert
1955745691Smillert# Check interaction of $^W and use warnings
2055745691Smillertsub fred {
2155745691Smillert    use warnings ;
2255745691Smillert    my $b ;
2355745691Smillert    chop $b ;
2455745691Smillert}
2555745691Smillert{ $^W = 0 ;
2655745691Smillert  fred() ;
2755745691Smillert}
2855745691Smillert
2955745691SmillertEXPECT
30*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
3155745691Smillert########
3255745691Smillert
3355745691Smillert# Check interaction of $^W and use warnings
3455745691Smillertsub fred {
3555745691Smillert    no warnings ;
3655745691Smillert    my $b ;
3755745691Smillert    chop $b ;
3855745691Smillert}
3955745691Smillert{ local $^W = 1 ;
4055745691Smillert  fred() ;
4155745691Smillert}
4255745691Smillert
4355745691SmillertEXPECT
4455745691Smillert
4555745691Smillert########
4655745691Smillert
4755745691Smillert# Check interaction of $^W and use warnings
4855745691Smillertsub fred {
4955745691Smillert    no warnings ;
5055745691Smillert    my $b ;
5155745691Smillert    chop $b ;
5255745691Smillert}
5355745691Smillert{ $^W = 1 ;
5455745691Smillert  fred() ;
5555745691Smillert}
5655745691Smillert
5755745691SmillertEXPECT
5855745691Smillert
5955745691Smillert########
6055745691Smillert
6155745691Smillert# Check interaction of $^W and use warnings
6255745691Smillertuse warnings ;
6355745691Smillert$^W = 1 ;
6455745691Smillertmy $b ;
6555745691Smillertchop $b ;
6655745691SmillertEXPECT
67*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
6855745691Smillert########
6955745691Smillert
7055745691Smillert# Check interaction of $^W and use warnings
7155745691Smillert$^W = 1 ;
7255745691Smillertuse warnings ;
7355745691Smillertmy $b ;
7455745691Smillertchop $b ;
7555745691SmillertEXPECT
76*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
7755745691Smillert########
7855745691Smillert
7955745691Smillert# Check interaction of $^W and use warnings
8055745691Smillert$^W = 1 ;
8155745691Smillertno warnings ;
8255745691Smillertmy $b ;
8355745691Smillertchop $b ;
8455745691SmillertEXPECT
8555745691Smillert
8655745691Smillert########
8755745691Smillert
8855745691Smillert# Check interaction of $^W and use warnings
8955745691Smillertno warnings ;
9055745691Smillert$^W = 1 ;
9155745691Smillertmy $b ;
9255745691Smillertchop $b ;
9355745691SmillertEXPECT
9455745691Smillert
9555745691Smillert########
9655745691Smillert-w
9755745691Smillert# Check interaction of $^W and use warnings
9855745691Smillertno warnings ;
9955745691Smillertmy $b ;
10055745691Smillertchop $b ;
10155745691SmillertEXPECT
10255745691Smillert
10355745691Smillert########
10455745691Smillert-w
10555745691Smillert# Check interaction of $^W and use warnings
10655745691Smillertuse warnings ;
10755745691Smillertmy $b ;
10855745691Smillertchop $b ;
10955745691SmillertEXPECT
110*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 5.
11155745691Smillert########
11255745691Smillert
11355745691Smillert# Check interaction of $^W and use warnings
11455745691Smillertsub fred {
11555745691Smillert    use warnings ;
11655745691Smillert    my $b ;
11755745691Smillert    chop $b ;
11855745691Smillert}
11955745691SmillertBEGIN {  $^W = 0 }
12055745691Smillertfred() ;
12155745691SmillertEXPECT
122*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
12355745691Smillert########
12455745691Smillert
12555745691Smillert# Check interaction of $^W and use warnings
12655745691Smillertsub fred {
12755745691Smillert    no warnings ;
12855745691Smillert    my $b ;
12955745691Smillert    chop $b ;
13055745691Smillert}
13155745691SmillertBEGIN {  $^W = 1 }
13255745691Smillertfred() ;
13355745691Smillert
13455745691SmillertEXPECT
13555745691Smillert
13655745691Smillert########
13755745691Smillert
13855745691Smillert# Check interaction of $^W and use warnings
13955745691Smillertuse warnings ;
14055745691SmillertBEGIN {  $^W = 1 }
14155745691Smillertmy $b ;
14255745691Smillertchop $b ;
14355745691SmillertEXPECT
144*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
14555745691Smillert########
14655745691Smillert
14755745691Smillert# Check interaction of $^W and use warnings
14855745691SmillertBEGIN {  $^W = 1 }
14955745691Smillertuse warnings ;
15055745691Smillertmy $b ;
15155745691Smillertchop $b ;
15255745691SmillertEXPECT
153*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 6.
15455745691Smillert########
15555745691Smillert
15655745691Smillert# Check interaction of $^W and use warnings
15755745691SmillertBEGIN {  $^W = 1 }
15855745691Smillertno warnings ;
15955745691Smillertmy $b ;
16055745691Smillertchop $b ;
16155745691SmillertEXPECT
16255745691Smillert
16355745691Smillert########
16455745691Smillert
16555745691Smillert# Check interaction of $^W and use warnings
16655745691Smillertno warnings ;
16755745691SmillertBEGIN {  $^W = 1 }
16855745691Smillertmy $b ;
16955745691Smillertchop $b ;
17055745691SmillertEXPECT
17155745691Smillert
17255745691Smillert########
17355745691Smillert
17455745691Smillert# Check interaction of $^W and use warnings
17555745691SmillertBEGIN {  $^W = 1 }
17655745691Smillert{
17755745691Smillert    no warnings ;
17855745691Smillert    my $b ;
17955745691Smillert    chop $b ;
18055745691Smillert}
18155745691Smillertmy $b ;
18255745691Smillertchop $b ;
18355745691SmillertEXPECT
184*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 10.
18555745691Smillert########
18655745691Smillert
18755745691Smillert# Check interaction of $^W and use warnings
18855745691SmillertBEGIN {  $^W = 0 }
18955745691Smillert{
19055745691Smillert    use warnings ;
19155745691Smillert    my $b ;
19255745691Smillert    chop $b ;
19355745691Smillert}
19455745691Smillertmy $b ;
19555745691Smillertchop $b ;
19655745691SmillertEXPECT
197*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 7.
19855745691Smillert########
19955745691Smillert
20055745691Smillert# Check scope of pragma with eval
20155745691SmillertBEGIN {  $^W = 1 }
20255745691Smillert{
20355745691Smillert    no warnings ;
20455745691Smillert    eval '
20555745691Smillert        my $b ; chop $b ;
20655745691Smillert    '; print STDERR $@ ;
20755745691Smillert    my $b ; chop $b ;
20855745691Smillert}
20955745691SmillertEXPECT
21055745691Smillert
21155745691Smillert########
21255745691Smillert
21355745691Smillert# Check scope of pragma with eval
21455745691SmillertBEGIN {  $^W = 1 }
21555745691Smillertuse warnings;
21655745691Smillert{
21755745691Smillert    no warnings ;
21855745691Smillert    eval q[
21955745691Smillert        use warnings 'uninitialized' ;
22055745691Smillert        my $b ; chop $b ;
22155745691Smillert    ]; print STDERR $@;
22255745691Smillert    my $b ; chop $b ;
22355745691Smillert}
22455745691SmillertEXPECT
225*850e2753SmillertUse of uninitialized value $b in scalar chop at (eval 1) line 3.
22655745691Smillert########
22755745691Smillert
22855745691Smillert# Check scope of pragma with eval
22955745691SmillertBEGIN {  $^W = 0 }
23055745691Smillert{
23155745691Smillert    use warnings 'uninitialized' ;
23255745691Smillert    eval '
23355745691Smillert        my $b ; chop $b ;
23455745691Smillert    '; print STDERR $@ ;
23555745691Smillert    my $b ; chop $b ;
23655745691Smillert}
23755745691SmillertEXPECT
238*850e2753SmillertUse of uninitialized value $b in scalar chop at (eval 1) line 2.
239*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 9.
24055745691Smillert########
24155745691Smillert
24255745691Smillert# Check scope of pragma with eval
24355745691SmillertBEGIN {  $^W = 0 }
24455745691Smillert{
24555745691Smillert    use warnings 'uninitialized' ;
24655745691Smillert    eval '
24755745691Smillert        no warnings ;
24855745691Smillert        my $b ; chop $b ;
24955745691Smillert    '; print STDERR $@ ;
25055745691Smillert    my $b ; chop $b ;
25155745691Smillert}
25255745691SmillertEXPECT
253*850e2753SmillertUse of uninitialized value $b in scalar chop at - line 10.
25455745691Smillert########
25555745691Smillert
25655745691Smillert# Check scope of pragma with eval
25755745691SmillertBEGIN {  $^W = 1 }
25855745691Smillert{
25955745691Smillert    no warnings ;
26055745691Smillert    eval '
26155745691Smillert        my $a =+ 1 ;
26255745691Smillert    '; print STDERR $@ ;
26355745691Smillert    my $a =+ 1 ;
26455745691Smillert}
26555745691SmillertEXPECT
26655745691Smillert
267