summaryrefslogtreecommitdiff
path: root/lib/warnings/perl
blob: 512ee7fb653e70c4d1f0de8ba8cca0124b117a87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
  perl.c	AOK

  gv_check(defstash)
	Name \"%s::%s\" used only once: possible typo 

  Mandatory Warnings All TODO
  ------------------
  Recompile perl with -DDEBUGGING to use -D switch	[moreswitches]
  Unbalanced scopes: %ld more ENTERs than LEAVEs	[perl_destruct]
  Unbalanced saves: %ld more saves than restores	[perl_destruct]
  Unbalanced tmps: %ld more allocs than frees		[perl_destruct]
  Unbalanced context: %ld more PUSHes than POPs		[perl_destruct]
  Unbalanced string table refcount: (%d) for \"%s\"	[perl_destruct]
  Scalars leaked: %ld					[perl_destruct]


__END__
# perl.c
no warnings 'once' ;
$x = 3 ;
use warnings 'once' ;
$z = 3 ;
EXPECT
Name "main::z" used only once: possible typo at - line 5.
########
-w
# perl.c
$x = 3 ;
no warnings 'once' ;
$z = 3 
EXPECT
Name "main::x" used only once: possible typo at - line 3.
########
# perl.c
BEGIN { $^W =1 ; }
$x = 3 ;
no warnings 'once' ;
$z = 3 
EXPECT
Name "main::x" used only once: possible typo at - line 3.
########
-W
# perl.c
no warnings 'once' ;
$x = 3 ;
use warnings 'once' ;
$z = 3 ;
EXPECT
Name "main::z" used only once: possible typo at - line 6.
Name "main::x" used only once: possible typo at - line 4.
########
-X
# perl.c
use warnings 'once' ;
$x = 3 ;
EXPECT
########

# perl.c
{ use warnings 'once' ; $x = 3 ; }
$y = 3 ;
EXPECT
Name "main::x" used only once: possible typo at - line 3.
########

# perl.c
$z = 3 ;
BEGIN { $^W = 1 }
{ no warnings 'once' ; $x = 3 ; }
$y = 3 ;
EXPECT
Name "main::y" used only once: possible typo at - line 6.