Commit | Line | Data |
0453d815 |
1 | sv.c |
599cee73 |
2 | |
3 | warn(warn_uninit); |
4 | |
5 | warn(warn_uninit); |
6 | |
7 | warn(warn_uninit); |
8 | |
9 | warn(warn_uninit); |
10 | |
11 | not_a_number(sv); |
12 | |
13 | not_a_number(sv); |
14 | |
15 | warn(warn_uninit); |
16 | |
17 | not_a_number(sv); |
18 | |
19 | warn(warn_uninit); |
20 | |
21 | not_a_number(sv); |
22 | |
23 | not_a_number(sv); |
24 | |
25 | warn(warn_uninit); |
26 | |
27 | warn(warn_uninit); |
28 | |
29 | Subroutine %s redefined |
30 | |
31 | Invalid conversion in %s: |
32 | |
33 | Undefined value assigned to typeglob |
34 | |
0453d815 |
35 | Mandatory Warnings |
36 | ------------------ |
37 | Malformed UTF-8 character [sv_pos_b2u] |
38 | my $a = rindex "a\xff bc ", "bc" ; |
39 | |
40 | Mandatory Warnings TODO |
41 | ------------------ |
42 | Attempt to free non-arena SV: 0x%lx [del_sv] |
43 | Reference miscount in sv_replace() [sv_replace] |
44 | Attempt to free unreferenced scalar [sv_free] |
45 | Attempt to free temp prematurely: SV 0x%lx [sv_free] |
46 | semi-panic: attempt to dup freed string [newSVsv] |
47 | |
599cee73 |
48 | |
49 | __END__ |
50 | # sv.c |
51 | use integer ; |
52 | use warning 'uninitialized' ; |
53 | $x = 1 + $a[0] ; # a |
0453d815 |
54 | no warning 'uninitialized' ; |
55 | $x = 1 + $b[0] ; # a |
599cee73 |
56 | EXPECT |
57 | Use of uninitialized value at - line 4. |
58 | ######## |
59 | # sv.c (sv_2iv) |
60 | package fred ; |
61 | sub TIESCALAR { my $x ; bless \$x} |
62 | sub FETCH { return undef } |
63 | sub STORE { return 1 } |
64 | package main ; |
65 | tie $A, 'fred' ; |
66 | use integer ; |
67 | use warning 'uninitialized' ; |
68 | $A *= 2 ; |
0453d815 |
69 | no warning 'uninitialized' ; |
70 | $A *= 2 ; |
599cee73 |
71 | EXPECT |
72 | Use of uninitialized value at - line 10. |
73 | ######## |
74 | # sv.c |
75 | use integer ; |
76 | use warning 'uninitialized' ; |
77 | my $x *= 2 ; #b |
0453d815 |
78 | no warning 'uninitialized' ; |
79 | my $y *= 2 ; #b |
599cee73 |
80 | EXPECT |
81 | Use of uninitialized value at - line 4. |
82 | ######## |
83 | # sv.c (sv_2uv) |
84 | package fred ; |
85 | sub TIESCALAR { my $x ; bless \$x} |
86 | sub FETCH { return undef } |
87 | sub STORE { return 1 } |
88 | package main ; |
89 | tie $A, 'fred' ; |
90 | use warning 'uninitialized' ; |
91 | $B = 0 ; |
92 | $B |= $A ; |
0453d815 |
93 | no warning 'uninitialized' ; |
94 | $B = 0 ; |
95 | $B |= $A ; |
599cee73 |
96 | EXPECT |
97 | Use of uninitialized value at - line 10. |
98 | ######## |
99 | # sv.c |
100 | use warning 'uninitialized' ; |
101 | my $Y = 1 ; |
0453d815 |
102 | my $x = 1 | $a[$Y] ; |
103 | no warning 'uninitialized' ; |
104 | my $Y = 1 ; |
105 | $x = 1 | $b[$Y] ; |
599cee73 |
106 | EXPECT |
107 | Use of uninitialized value at - line 4. |
108 | ######## |
109 | # sv.c |
110 | use warning 'uninitialized' ; |
111 | my $x *= 1 ; # d |
0453d815 |
112 | no warning 'uninitialized' ; |
113 | my $y *= 1 ; # d |
599cee73 |
114 | EXPECT |
115 | Use of uninitialized value at - line 3. |
116 | ######## |
117 | # sv.c |
118 | use warning 'uninitialized' ; |
119 | $x = 1 + $a[0] ; # e |
0453d815 |
120 | no warning 'uninitialized' ; |
121 | $x = 1 + $b[0] ; # e |
599cee73 |
122 | EXPECT |
123 | Use of uninitialized value at - line 3. |
124 | ######## |
125 | # sv.c (sv_2nv) |
126 | package fred ; |
127 | sub TIESCALAR { my $x ; bless \$x} |
128 | sub FETCH { return undef } |
129 | sub STORE { return 1 } |
130 | package main ; |
131 | tie $A, 'fred' ; |
132 | use warning 'uninitialized' ; |
133 | $A *= 2 ; |
0453d815 |
134 | no warning 'uninitialized' ; |
135 | $A *= 2 ; |
599cee73 |
136 | EXPECT |
137 | Use of uninitialized value at - line 9. |
138 | ######## |
139 | # sv.c |
140 | use warning 'uninitialized' ; |
141 | $x = $y + 1 ; # f |
0453d815 |
142 | no warning 'uninitialized' ; |
143 | $x = $z + 1 ; # f |
599cee73 |
144 | EXPECT |
145 | Use of uninitialized value at - line 3. |
146 | ######## |
147 | # sv.c |
148 | use warning 'uninitialized' ; |
149 | $x = chop undef ; # g |
0453d815 |
150 | no warning 'uninitialized' ; |
151 | $x = chop undef ; # g |
599cee73 |
152 | EXPECT |
b0c98cec |
153 | Modification of a read-only value attempted at - line 3. |
599cee73 |
154 | ######## |
155 | # sv.c |
156 | use warning 'uninitialized' ; |
157 | $x = chop $y ; # h |
0453d815 |
158 | no warning 'uninitialized' ; |
159 | $x = chop $z ; # h |
599cee73 |
160 | EXPECT |
161 | Use of uninitialized value at - line 3. |
162 | ######## |
163 | # sv.c (sv_2pv) |
164 | package fred ; |
165 | sub TIESCALAR { my $x ; bless \$x} |
166 | sub FETCH { return undef } |
167 | sub STORE { return 1 } |
168 | package main ; |
169 | tie $A, 'fred' ; |
170 | use warning 'uninitialized' ; |
171 | $B = "" ; |
172 | $B .= $A ; |
0453d815 |
173 | no warning 'uninitialized' ; |
174 | $C = "" ; |
175 | $C .= $A ; |
599cee73 |
176 | EXPECT |
177 | Use of uninitialized value at - line 10. |
178 | ######## |
179 | # sv.c |
180 | use warning 'numeric' ; |
181 | sub TIESCALAR{bless[]} ; |
182 | sub FETCH {"def"} ; |
183 | tie $a,"main" ; |
0453d815 |
184 | my $b = 1 + $a; |
185 | no warning 'numeric' ; |
186 | my $c = 1 + $a; |
599cee73 |
187 | EXPECT |
188 | Argument "def" isn't numeric in add at - line 6. |
189 | ######## |
190 | # sv.c |
191 | use warning 'numeric' ; |
192 | my $x = 1 + "def" ; |
0453d815 |
193 | no warning 'numeric' ; |
194 | my $z = 1 + "def" ; |
599cee73 |
195 | EXPECT |
196 | Argument "def" isn't numeric in add at - line 3. |
197 | ######## |
198 | # sv.c |
199 | use warning 'numeric' ; |
200 | my $a = "def" ; |
201 | my $x = 1 + $a ; |
0453d815 |
202 | no warning 'numeric' ; |
203 | my $y = 1 + $a ; |
599cee73 |
204 | EXPECT |
205 | Argument "def" isn't numeric in add at - line 4. |
206 | ######## |
207 | # sv.c |
208 | use warning 'numeric' ; use integer ; |
209 | my $a = "def" ; |
210 | my $x = 1 + $a ; |
0453d815 |
211 | no warning 'numeric' ; |
212 | my $z = 1 + $a ; |
599cee73 |
213 | EXPECT |
214 | Argument "def" isn't numeric in i_add at - line 4. |
215 | ######## |
216 | # sv.c |
217 | use warning 'numeric' ; |
218 | my $x = 1 & "def" ; |
0453d815 |
219 | no warning 'numeric' ; |
220 | my $z = 1 & "def" ; |
599cee73 |
221 | EXPECT |
222 | Argument "def" isn't numeric in bit_and at - line 3. |
223 | ######## |
224 | # sv.c |
225 | use warning 'redefine' ; |
226 | sub fred {} |
227 | sub joe {} |
228 | *fred = \&joe ; |
0453d815 |
229 | no warning 'redefine' ; |
230 | sub jim {} |
231 | *jim = \&joe ; |
599cee73 |
232 | EXPECT |
233 | Subroutine fred redefined at - line 5. |
234 | ######## |
235 | # sv.c |
236 | use warning 'printf' ; |
3eeba6fb |
237 | open F, ">".($^O eq 'VMS'? 'NL:' : '/dev/null') ; |
cf2093f6 |
238 | printf F "%z\n" ; |
239 | my $a = sprintf "%z" ; |
599cee73 |
240 | printf F "%" ; |
241 | $a = sprintf "%" ; |
242 | printf F "%\x02" ; |
243 | $a = sprintf "%\x02" ; |
0453d815 |
244 | no warning 'printf' ; |
cf2093f6 |
245 | printf F "%z\n" ; |
246 | $a = sprintf "%z" ; |
0453d815 |
247 | printf F "%" ; |
248 | $a = sprintf "%" ; |
249 | printf F "%\x02" ; |
250 | $a = sprintf "%\x02" ; |
599cee73 |
251 | EXPECT |
cf2093f6 |
252 | Invalid conversion in sprintf: "%z" at - line 5. |
599cee73 |
253 | Invalid conversion in sprintf: end of string at - line 7. |
254 | Invalid conversion in sprintf: "%\002" at - line 9. |
cf2093f6 |
255 | Invalid conversion in printf: "%z" at - line 4. |
599cee73 |
256 | Invalid conversion in printf: end of string at - line 6. |
257 | Invalid conversion in printf: "%\002" at - line 8. |
258 | ######## |
259 | # sv.c |
260 | use warning 'unsafe' ; |
261 | *a = undef ; |
0453d815 |
262 | no warning 'unsafe' ; |
263 | *b = undef ; |
599cee73 |
264 | EXPECT |
265 | Undefined value assigned to typeglob at - line 3. |
0453d815 |
266 | ######## |
267 | # sv.c |
268 | use utf8 ; |
269 | $^W =0 ; |
270 | { |
271 | use warning 'utf8' ; |
272 | my $a = rindex "a\xff bc ", "bc" ; |
273 | no warning 'utf8' ; |
274 | $a = rindex "a\xff bc ", "bc" ; |
275 | } |
276 | my $a = rindex "a\xff bc ", "bc" ; |
277 | EXPECT |
278 | \xff will produce malformed UTF-8 character; use \x{ff} for that at - line 6. |
279 | Malformed UTF-8 character at - line 6. |
280 | Malformed UTF-8 character at - line 10. |