Commit | Line | Data |
8d93267c |
1 | Check warnings::enabled & warnings::warn |
2 | |
3 | __END__ |
4 | |
5 | --FILE-- abc.pm |
6 | package abc ; |
7 | use warnings "io" ; |
d3a7d8c7 |
8 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
9 | print "ok2\n" if ! warnings::enabled("io") ; |
10 | 1; |
11 | --FILE-- |
12 | no warnings; |
13 | use abc ; |
14 | EXPECT |
15 | ok1 |
16 | ok2 |
17 | ######## |
18 | |
19 | --FILE-- abc.pm |
20 | package abc ; |
21 | no warnings ; |
d3a7d8c7 |
22 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
23 | print "ok2\n" if warnings::enabled("syntax") ; |
24 | 1; |
25 | --FILE-- |
26 | use warnings 'syntax' ; |
27 | use abc ; |
28 | EXPECT |
29 | ok1 |
30 | ok2 |
31 | ######## |
32 | |
33 | --FILE-- abc.pm |
34 | package abc ; |
35 | use warnings 'syntax' ; |
d3a7d8c7 |
36 | print "ok1\n" if warnings::enabled('io') ; |
8d93267c |
37 | print "ok2\n" if ! warnings::enabled("syntax") ; |
38 | 1; |
39 | --FILE-- |
40 | use warnings 'io' ; |
41 | use abc ; |
42 | EXPECT |
43 | ok1 |
44 | ok2 |
45 | ######## |
46 | |
47 | --FILE-- abc |
48 | no warnings ; |
d3a7d8c7 |
49 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
50 | print "ok2\n" if warnings::enabled("syntax") ; |
51 | 1; |
52 | --FILE-- |
53 | use warnings 'syntax' ; |
54 | require "abc" ; |
55 | EXPECT |
56 | ok1 |
57 | ok2 |
58 | ######## |
59 | |
60 | --FILE-- abc |
61 | use warnings 'syntax' ; |
d3a7d8c7 |
62 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
63 | print "ok2\n" if ! warnings::enabled("syntax") ; |
64 | print "ok3\n" if warnings::enabled("io") ; |
65 | 1; |
66 | --FILE-- |
67 | use warnings 'io' ; |
68 | require "abc" ; |
69 | EXPECT |
70 | ok1 |
71 | ok2 |
72 | ok3 |
73 | ######## |
74 | |
75 | --FILE-- abc.pm |
76 | package abc ; |
77 | no warnings ; |
78 | sub check { |
d3a7d8c7 |
79 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
80 | print "ok2\n" if warnings::enabled("syntax") ; |
81 | } |
82 | 1; |
83 | --FILE-- |
84 | use warnings 'syntax' ; |
85 | use abc ; |
86 | abc::check() ; |
87 | EXPECT |
88 | ok1 |
89 | ok2 |
90 | ######## |
91 | |
92 | --FILE-- abc.pm |
93 | package abc ; |
94 | use warnings 'io' ; |
95 | sub check { |
d3a7d8c7 |
96 | print "ok1\n" if ! warnings::enabled('all') ; |
97 | print "ok2\n" if warnings::enabled("syntax") ; |
8d93267c |
98 | print "ok3\n" if ! warnings::enabled("io") ; |
99 | } |
100 | 1; |
101 | --FILE-- |
102 | use warnings 'syntax' ; |
103 | use abc ; |
104 | abc::check() ; |
105 | EXPECT |
106 | ok1 |
107 | ok2 |
108 | ok3 |
109 | ######## |
110 | |
111 | --FILE-- abc |
112 | package abc ; |
113 | no warnings ; |
114 | sub check { |
d3a7d8c7 |
115 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
116 | print "ok2\n" if warnings::enabled("syntax") ; |
117 | } |
118 | 1; |
119 | --FILE-- |
120 | use warnings 'syntax' ; |
121 | require "abc" ; |
122 | abc::check() ; |
123 | EXPECT |
124 | ok1 |
125 | ok2 |
126 | ######## |
127 | |
128 | --FILE-- abc |
129 | package abc ; |
130 | use warnings 'io' ; |
131 | sub check { |
d3a7d8c7 |
132 | print "ok1\n" if ! warnings::enabled('all') ; |
133 | print "ok2\n" if warnings::enabled("syntax") ; |
8d93267c |
134 | print "ok3\n" if ! warnings::enabled("io") ; |
135 | } |
136 | 1; |
137 | --FILE-- |
138 | use warnings 'syntax' ; |
139 | require "abc" ; |
140 | abc::check() ; |
141 | EXPECT |
142 | ok1 |
143 | ok2 |
144 | ok3 |
145 | ######## |
146 | |
147 | --FILE-- abc.pm |
148 | package abc ; |
149 | use warnings "io" ; |
d3a7d8c7 |
150 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
151 | print "ok2\n" if ! warnings::enabled("io") ; |
152 | 1; |
153 | --FILE-- def.pm |
f89e79d6 |
154 | package def; |
8d93267c |
155 | no warnings; |
156 | use abc ; |
157 | 1; |
158 | --FILE-- |
159 | use warnings; |
160 | use def ; |
161 | EXPECT |
162 | ok1 |
163 | ok2 |
164 | ######## |
165 | |
166 | --FILE-- abc.pm |
167 | package abc ; |
168 | no warnings ; |
d3a7d8c7 |
169 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
170 | print "ok2\n" if warnings::enabled("syntax") ; |
171 | print "ok3\n" if !warnings::enabled("io") ; |
172 | 1; |
173 | --FILE-- def.pm |
174 | use warnings 'syntax' ; |
d3a7d8c7 |
175 | print "ok4\n" if !warnings::enabled('all') ; |
8d93267c |
176 | print "ok5\n" if warnings::enabled("io") ; |
177 | use abc ; |
178 | 1; |
179 | --FILE-- |
180 | use warnings 'io' ; |
181 | use def ; |
182 | EXPECT |
183 | ok1 |
184 | ok2 |
185 | ok3 |
186 | ok4 |
187 | ok5 |
188 | ######## |
189 | |
190 | --FILE-- abc.pm |
191 | package abc ; |
192 | no warnings ; |
193 | sub check { |
d3a7d8c7 |
194 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
195 | print "ok2\n" if warnings::enabled("syntax") ; |
196 | } |
197 | 1; |
198 | --FILE-- |
199 | use warnings 'syntax' ; |
200 | use abc ; |
201 | eval { abc::check() ; }; |
202 | print $@ ; |
203 | EXPECT |
204 | ok1 |
205 | ok2 |
206 | ######## |
207 | |
208 | --FILE-- abc.pm |
209 | package abc ; |
210 | use warnings 'io' ; |
211 | sub check { |
d3a7d8c7 |
212 | print "ok1\n" if ! warnings::enabled('all') ; |
213 | print "ok2\n" if warnings::enabled("syntax") ; |
8d93267c |
214 | print "ok3\n" if ! warnings::enabled("io") ; |
215 | } |
216 | 1; |
217 | --FILE-- |
218 | use warnings 'syntax' ; |
219 | use abc ; |
220 | eval { abc::check() ; } ; |
221 | print $@ ; |
222 | EXPECT |
223 | ok1 |
224 | ok2 |
225 | ok3 |
226 | ######## |
227 | |
228 | --FILE-- abc |
229 | package abc ; |
230 | no warnings ; |
231 | sub check { |
d3a7d8c7 |
232 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
233 | print "ok2\n" if warnings::enabled("syntax") ; |
234 | } |
235 | 1; |
236 | --FILE-- |
237 | use warnings 'syntax' ; |
238 | require "abc" ; |
239 | eval { abc::check() ; } ; |
240 | print $@ ; |
241 | EXPECT |
242 | ok1 |
243 | ok2 |
244 | ######## |
245 | |
246 | --FILE-- abc |
247 | package abc ; |
248 | use warnings 'io' ; |
249 | sub check { |
d3a7d8c7 |
250 | print "ok1\n" if !warnings::enabled('all') ; |
8d93267c |
251 | print "ok2\n" if warnings::enabled("syntax") ; |
252 | print "ok3\n" if warnings::enabled("io") ; |
253 | } |
254 | 1; |
255 | --FILE-- |
256 | use warnings 'syntax' ; |
257 | require "abc" ; |
258 | eval { use warnings 'io' ; abc::check() ; }; |
259 | abc::check() ; |
260 | print $@ ; |
261 | EXPECT |
262 | ok1 |
263 | ok2 |
264 | ok3 |
265 | ok1 |
266 | ok2 |
267 | ######## |
268 | |
269 | --FILE-- abc.pm |
270 | package abc ; |
271 | use warnings 'io' ; |
272 | sub check { |
d3a7d8c7 |
273 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
274 | print "ok2\n" if warnings::enabled("syntax") ; |
275 | print "ok3\n" if ! warnings::enabled("io") ; |
276 | } |
277 | 1; |
278 | --FILE-- |
279 | use warnings 'syntax' ; |
280 | use abc ; |
281 | sub fred { abc::check() } |
282 | fred() ; |
283 | EXPECT |
284 | ok1 |
285 | ok2 |
286 | ok3 |
287 | ######## |
288 | |
289 | --FILE-- abc.pm |
290 | package abc ; |
291 | use warnings 'io' ; |
292 | sub check { |
d3a7d8c7 |
293 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
294 | } |
295 | 1; |
296 | --FILE-- |
297 | use warnings 'syntax' ; |
298 | use abc ; |
299 | sub fred { no warnings ; abc::check() } |
300 | fred() ; |
301 | EXPECT |
302 | ok1 |
303 | ######## |
304 | |
305 | --FILE-- abc.pm |
306 | package abc ; |
307 | use warnings 'misc' ; |
308 | sub check { |
d3a7d8c7 |
309 | print "ok1\n" if ! warnings::enabled('all') ; |
8d93267c |
310 | print "ok2\n" if warnings::enabled("syntax") ; |
311 | print "ok3\n" if warnings::enabled("io") ; |
312 | print "ok4\n" if ! warnings::enabled("misc") ; |
313 | } |
314 | 1; |
315 | --FILE-- |
316 | use warnings 'syntax' ; |
317 | use abc ; |
318 | sub fred { use warnings 'io' ; abc::check() } |
319 | fred() ; |
320 | EXPECT |
321 | ok1 |
322 | ok2 |
323 | ok3 |
324 | ok4 |
325 | ######## |
326 | |
327 | # check warnings::warn |
328 | use warnings ; |
329 | eval { warnings::warn() } ; |
330 | print $@ ; |
d3a7d8c7 |
331 | eval { warnings::warn("fred", "joe") } ; |
8d93267c |
332 | print $@ ; |
333 | EXPECT |
d3a7d8c7 |
334 | Usage: warnings::warn([category,] 'message') at - line 4 |
3d1a39c8 |
335 | Unknown warnings category 'fred' at - line 6 |
7e6d00f8 |
336 | ######## |
337 | |
338 | # check warnings::warnif |
339 | use warnings ; |
340 | eval { warnings::warnif() } ; |
341 | print $@ ; |
342 | eval { warnings::warnif("fred", "joe") } ; |
343 | print $@ ; |
344 | EXPECT |
345 | Usage: warnings::warnif([category,] 'message') at - line 4 |
3d1a39c8 |
346 | Unknown warnings category 'fred' at - line 6 |
8d93267c |
347 | ######## |
348 | |
349 | --FILE-- abc.pm |
350 | package abc ; |
351 | use warnings 'misc' ; |
352 | sub check { warnings::warn("io", "hello") } |
353 | 1; |
354 | --FILE-- |
355 | use warnings "io" ; |
356 | use abc; |
357 | abc::check() ; |
358 | EXPECT |
359 | hello at - line 3 |
360 | ######## |
361 | |
362 | --FILE-- abc.pm |
363 | package abc ; |
364 | use warnings 'misc' ; |
365 | sub check { warnings::warn("misc", "hello") } |
366 | 1; |
367 | --FILE-- |
368 | use warnings "io" ; |
369 | use abc; |
370 | abc::check() ; |
371 | EXPECT |
372 | hello at - line 3 |
373 | ######## |
374 | |
375 | --FILE-- abc.pm |
376 | package abc ; |
377 | use warnings 'misc' ; |
378 | sub check { warnings::warn("io", "hello") } |
379 | 1; |
380 | --FILE-- |
381 | use warnings qw( FATAL deprecated ) ; |
382 | use abc; |
383 | eval { abc::check() ; } ; |
384 | print "[[$@]]\n"; |
385 | EXPECT |
386 | hello at - line 3 |
7e6d00f8 |
387 | eval {...} called at - line 3 |
8d93267c |
388 | [[]] |
389 | ######## |
390 | |
391 | --FILE-- abc.pm |
392 | package abc ; |
393 | use warnings 'misc' ; |
394 | sub check { warnings::warn("io", "hello") } |
395 | 1; |
396 | --FILE-- |
397 | use warnings qw( FATAL io ) ; |
398 | use abc; |
399 | eval { abc::check() ; } ; |
400 | print "[[$@]]\n"; |
401 | EXPECT |
402 | [[hello at - line 3 |
7e6d00f8 |
403 | eval {...} called at - line 3 |
8d93267c |
404 | ]] |
d3a7d8c7 |
405 | ######## |
406 | -W |
407 | --FILE-- abc.pm |
408 | package abc ; |
409 | use warnings "io" ; |
410 | print "ok1\n" if warnings::enabled("io") ; |
411 | print "ok2\n" if warnings::enabled("all") ; |
412 | 1; |
413 | --FILE-- |
414 | no warnings; |
415 | use abc ; |
416 | EXPECT |
417 | ok1 |
418 | ok2 |
419 | ######## |
420 | -X |
421 | --FILE-- abc.pm |
422 | package abc ; |
423 | use warnings "io" ; |
424 | print "ok1\n" if !warnings::enabled("io") ; |
425 | print "ok2\n" if !warnings::enabled("all") ; |
426 | 1; |
427 | --FILE-- |
428 | use warnings; |
429 | use abc ; |
430 | EXPECT |
431 | ok1 |
432 | ok2 |
433 | ######## |
434 | |
435 | --FILE-- abc.pm |
436 | package abc ; |
437 | no warnings ; |
438 | sub check { |
439 | print "ok\n" if ! warnings::enabled() ; |
440 | } |
441 | 1; |
442 | --FILE-- |
443 | use warnings 'syntax' ; |
444 | use abc ; |
445 | abc::check() ; |
446 | EXPECT |
7e6d00f8 |
447 | package 'abc' not registered for warnings at abc.pm line 4 |
448 | ######## |
449 | |
450 | --FILE-- abc.pm |
451 | package abc ; |
452 | no warnings ; |
453 | sub check { |
454 | warnings::warn("fred") ; |
455 | } |
456 | 1; |
457 | --FILE-- |
458 | use warnings 'syntax' ; |
459 | use abc ; |
460 | abc::check() ; |
461 | EXPECT |
462 | package 'abc' not registered for warnings at abc.pm line 4 |
463 | ######## |
464 | |
465 | --FILE-- abc.pm |
466 | package abc ; |
467 | no warnings ; |
468 | sub check { |
469 | warnings::warnif("fred") ; |
470 | } |
471 | 1; |
472 | --FILE-- |
473 | use warnings 'syntax' ; |
474 | use abc ; |
475 | abc::check() ; |
476 | EXPECT |
477 | package 'abc' not registered for warnings at abc.pm line 4 |
d3a7d8c7 |
478 | ######## |
479 | |
480 | --FILE-- abc.pm |
481 | package abc ; |
482 | use warnings 'io' ; |
483 | use warnings::register ; |
484 | sub check { |
485 | print "ok1\n" if warnings::enabled ; |
486 | print "ok2\n" if warnings::enabled("syntax") ; |
487 | print "ok3\n" if !warnings::enabled("io") ; |
488 | } |
489 | 1; |
490 | --FILE-- |
491 | use warnings 'syntax' ; |
492 | use abc ; |
493 | use warnings 'abc' ; |
494 | abc::check() ; |
495 | EXPECT |
496 | ok1 |
497 | ok2 |
498 | ok3 |
499 | ######## |
500 | |
501 | --FILE-- abc.pm |
502 | package abc ; |
503 | use warnings 'io' ; |
504 | use warnings::register ; |
505 | sub check { |
506 | print "ok1\n" if !warnings::enabled ; |
507 | print "ok2\n" if warnings::enabled("syntax") ; |
508 | print "ok3\n" if !warnings::enabled("io") ; |
509 | } |
510 | 1; |
511 | --FILE-- |
512 | use warnings 'syntax' ; |
513 | use abc ; |
514 | abc::check() ; |
515 | EXPECT |
516 | ok1 |
517 | ok2 |
518 | ok3 |
519 | ######## |
520 | |
521 | --FILE-- abc.pm |
522 | package abc ; |
523 | no warnings ; |
524 | use warnings::register ; |
525 | sub check { |
526 | print "ok1\n" if warnings::enabled ; |
527 | print "ok2\n" if warnings::enabled("syntax") ; |
528 | } |
529 | 1; |
530 | --FILE-- |
531 | use warnings 'syntax' ; |
532 | use abc ; |
533 | use warnings 'abc' ; |
534 | eval { abc::check() ; }; |
535 | print $@ ; |
536 | EXPECT |
537 | ok1 |
538 | ok2 |
539 | ######## |
540 | |
541 | --FILE-- abc.pm |
542 | package abc ; |
543 | use warnings 'io' ; |
544 | use warnings::register ; |
545 | sub check { |
546 | print "ok1\n" if !warnings::enabled ; |
547 | print "ok2\n" if warnings::enabled("syntax") ; |
548 | print "ok3\n" if !warnings::enabled("io") ; |
549 | } |
550 | 1; |
551 | --FILE-- |
552 | use warnings 'syntax' ; |
553 | use abc ; |
554 | eval { abc::check() ; } ; |
555 | print $@ ; |
556 | EXPECT |
557 | ok1 |
558 | ok2 |
559 | ok3 |
560 | ######## |
561 | |
562 | --FILE-- abc.pm |
563 | package abc ; |
564 | use warnings 'io' ; |
565 | use warnings::register ; |
566 | sub check { |
567 | print "ok1\n" if warnings::enabled ; |
568 | print "ok2\n" if warnings::enabled("syntax") ; |
569 | print "ok3\n" if !warnings::enabled("io") ; |
570 | } |
571 | 1; |
572 | --FILE-- |
573 | use warnings 'syntax' ; |
574 | use abc ; |
575 | use warnings 'abc' ; |
576 | sub fred { abc::check() } |
577 | fred() ; |
578 | EXPECT |
579 | ok1 |
580 | ok2 |
581 | ok3 |
582 | ######## |
583 | |
584 | --FILE-- abc.pm |
585 | package abc ; |
586 | use warnings 'io' ; |
587 | use warnings::register ; |
588 | sub check { |
589 | print "ok1\n" if ! warnings::enabled ; |
590 | } |
591 | 1; |
592 | --FILE-- |
593 | use warnings 'syntax' ; |
594 | use abc ; |
595 | sub fred { no warnings ; abc::check() } |
596 | fred() ; |
597 | EXPECT |
598 | ok1 |
599 | ######## |
600 | |
601 | --FILE-- abc.pm |
602 | package abc ; |
603 | use warnings 'misc' ; |
604 | use warnings::register; |
605 | sub check { |
606 | print "ok1\n" if warnings::enabled ; |
607 | print "ok2\n" if warnings::enabled("syntax") ; |
608 | print "ok3\n" if warnings::enabled("io") ; |
609 | print "ok4\n" if ! warnings::enabled("misc") ; |
610 | } |
611 | 1; |
612 | --FILE-- |
613 | use warnings 'syntax' ; |
614 | use abc ; |
615 | use warnings 'abc' ; |
616 | sub fred { use warnings 'io' ; abc::check() } |
617 | fred() ; |
618 | EXPECT |
619 | ok1 |
620 | ok2 |
621 | ok3 |
622 | ok4 |
623 | ######## |
624 | |
625 | --FILE-- abc.pm |
626 | package abc ; |
627 | use warnings 'misc' ; |
628 | use warnings::register; |
629 | sub check { warnings::warn("hello") } |
630 | 1; |
631 | --FILE-- |
632 | use abc; |
633 | use warnings "abc" ; |
634 | abc::check() ; |
635 | EXPECT |
636 | hello at - line 3 |
637 | ######## |
638 | |
639 | --FILE-- abc.pm |
640 | package abc ; |
641 | use warnings::register; |
642 | sub check { warnings::warn("hello") } |
643 | 1; |
644 | --FILE-- |
645 | use abc; |
646 | abc::check() ; |
647 | EXPECT |
648 | hello at - line 2 |
649 | ######## |
650 | |
651 | --FILE-- abc.pm |
652 | package abc ; |
653 | use warnings::register ; |
654 | sub check { warnings::warn("hello") } |
655 | 1; |
656 | --FILE-- |
657 | use abc; |
658 | use warnings qw( FATAL deprecated ) ; |
659 | eval { abc::check() ; } ; |
660 | print "[[$@]]\n"; |
661 | EXPECT |
662 | hello at - line 3 |
7e6d00f8 |
663 | eval {...} called at - line 3 |
d3a7d8c7 |
664 | [[]] |
665 | ######## |
666 | |
667 | --FILE-- abc.pm |
668 | package abc ; |
669 | use warnings::register ; |
670 | sub check { warnings::warn("hello") } |
671 | 1; |
672 | --FILE-- |
673 | use abc; |
674 | use warnings qw( FATAL abc ) ; |
675 | eval { abc::check() ; } ; |
676 | print "[[$@]]\n"; |
677 | EXPECT |
678 | [[hello at - line 3 |
7e6d00f8 |
679 | eval {...} called at - line 3 |
d3a7d8c7 |
680 | ]] |
681 | ######## |
682 | -W |
683 | --FILE-- abc.pm |
684 | package abc ; |
685 | use warnings "io" ; |
686 | use warnings::register ; |
687 | sub check { |
688 | print "ok1\n" if warnings::enabled() ; |
689 | print "ok2\n" if warnings::enabled("io") ; |
690 | print "ok3\n" if warnings::enabled("all") ; |
691 | } |
692 | 1; |
693 | --FILE-- |
694 | no warnings; |
695 | use abc ; |
696 | abc::check() ; |
697 | EXPECT |
698 | ok1 |
699 | ok2 |
700 | ok3 |
701 | ######## |
702 | -X |
703 | --FILE-- abc.pm |
704 | package abc ; |
705 | use warnings "io" ; |
706 | use warnings::register ; |
707 | sub check { |
708 | print "ok1\n" if !warnings::enabled() ; |
709 | print "ok2\n" if !warnings::enabled("io") ; |
710 | print "ok3\n" if !warnings::enabled("all") ; |
711 | } |
712 | 1; |
713 | --FILE-- |
714 | no warnings; |
715 | use abc ; |
716 | abc::check() ; |
717 | EXPECT |
718 | ok1 |
719 | ok2 |
720 | ok3 |
721 | ######## |
722 | |
723 | --FILE-- abc.pm |
724 | package abc ; |
725 | use warnings "io" ; |
726 | use warnings::register ; |
727 | sub check { |
728 | print "ok1\n" if warnings::enabled() ; |
729 | print "ok2\n" if warnings::enabled("io") ; |
730 | print "ok3\n" if warnings::enabled("all") ; |
731 | } |
732 | 1; |
733 | --FILE-- |
734 | use warnings 'all'; |
735 | use abc ; |
736 | abc::check() ; |
737 | EXPECT |
738 | ok1 |
739 | ok2 |
740 | ok3 |
741 | ######## |
742 | |
743 | --FILE-- abc.pm |
744 | package abc ; |
745 | use warnings "io" ; |
746 | use warnings::register ; |
747 | sub check { |
748 | print "ok1\n" if !warnings::enabled() ; |
749 | print "ok2\n" if !warnings::enabled("io") ; |
750 | print "ok3\n" if !warnings::enabled("all") ; |
751 | } |
752 | 1; |
753 | --FILE-- |
754 | use abc ; |
755 | no warnings ; |
756 | abc::check() ; |
757 | EXPECT |
758 | ok1 |
759 | ok2 |
760 | ok3 |
761 | ######## |
762 | |
763 | --FILE-- abc.pm |
764 | package abc ; |
765 | use warnings "io" ; |
766 | use warnings::register ; |
767 | sub check { |
768 | print "ok1\n" if !warnings::enabled() ; |
769 | print "ok2\n" if !warnings::enabled("io") ; |
770 | print "ok3\n" if !warnings::enabled("all") ; |
7e6d00f8 |
771 | warnings::warnif("my message 1") ; |
772 | warnings::warnif('abc', "my message 2") ; |
773 | warnings::warnif('io', "my message 3") ; |
774 | warnings::warnif('all', "my message 4") ; |
d3a7d8c7 |
775 | } |
776 | 1; |
777 | --FILE-- |
778 | use abc ; |
779 | use warnings 'abc'; |
780 | no warnings ; |
781 | abc::check() ; |
782 | EXPECT |
783 | ok1 |
784 | ok2 |
785 | ok3 |
786 | ######## |
787 | |
788 | --FILE-- abc.pm |
789 | package abc ; |
790 | use warnings "io" ; |
791 | use warnings::register ; |
792 | sub check { |
793 | print "abc self" . (warnings::enabled() ? "" : " not") . " enabled\n" ; |
794 | print "abc def" . (warnings::enabled('def') ? "" : " not") . " enabled\n" ; |
795 | print "abc all" . (warnings::enabled('all') ? "" : " not") . " enabled\n" ; |
796 | } |
797 | 1; |
798 | --FILE-- def.pm |
799 | package def ; |
800 | use warnings "io" ; |
801 | use warnings::register ; |
802 | sub check { |
803 | print "def self" . (warnings::enabled() ? "" : " not") . " enabled\n" ; |
804 | print "def abc" . (warnings::enabled('abc') ? "" : " not") . " enabled\n" ; |
805 | print "def all" . (warnings::enabled('all') ? "" : " not") . " enabled\n" ; |
806 | } |
807 | 1; |
808 | --FILE-- |
809 | use abc ; |
810 | use def ; |
811 | use warnings 'abc'; |
812 | abc::check() ; |
813 | def::check() ; |
814 | no warnings 'abc' ; |
815 | use warnings 'def' ; |
816 | abc::check() ; |
817 | def::check() ; |
818 | use warnings 'abc' ; |
819 | use warnings 'def' ; |
820 | abc::check() ; |
821 | def::check() ; |
822 | no warnings 'abc' ; |
823 | no warnings 'def' ; |
824 | abc::check() ; |
825 | def::check() ; |
826 | use warnings; |
827 | abc::check() ; |
828 | def::check() ; |
829 | no warnings 'abc' ; |
830 | abc::check() ; |
831 | def::check() ; |
832 | EXPECT |
833 | abc self enabled |
834 | abc def not enabled |
835 | abc all not enabled |
836 | def self not enabled |
837 | def abc enabled |
838 | def all not enabled |
839 | abc self not enabled |
840 | abc def enabled |
841 | abc all not enabled |
842 | def self enabled |
843 | def abc not enabled |
844 | def all not enabled |
845 | abc self enabled |
846 | abc def enabled |
847 | abc all not enabled |
848 | def self enabled |
849 | def abc enabled |
850 | def all not enabled |
851 | abc self not enabled |
852 | abc def not enabled |
853 | abc all not enabled |
854 | def self not enabled |
855 | def abc not enabled |
856 | def all not enabled |
857 | abc self enabled |
858 | abc def enabled |
859 | abc all enabled |
860 | def self enabled |
861 | def abc enabled |
862 | def all enabled |
863 | abc self not enabled |
864 | abc def enabled |
865 | abc all not enabled |
866 | def self enabled |
867 | def abc not enabled |
868 | def all not enabled |
114bafba |
869 | ######## |
870 | -w |
871 | --FILE-- abc.pm |
872 | package abc ; |
873 | no warnings ; |
874 | use warnings::register ; |
875 | sub check { |
876 | print "ok1\n" if warnings::enabled() ; |
877 | print "ok2\n" if warnings::enabled("io") ; |
878 | print "ok3\n" if warnings::enabled("all") ; |
879 | } |
880 | 1; |
881 | --FILE-- |
882 | use abc ; |
883 | abc::check() ; |
884 | EXPECT |
885 | ok1 |
886 | ok2 |
887 | ok3 |
888 | ######## |
889 | -w |
890 | --FILE-- abc.pm |
891 | package abc ; |
892 | no warnings ; |
893 | use warnings::register ; |
894 | sub check { |
895 | print "ok1\n" if !warnings::enabled() ; |
896 | print "ok2\n" if !warnings::enabled("io") ; |
897 | print "ok3\n" if !warnings::enabled("all") ; |
898 | } |
899 | 1; |
900 | --FILE-- |
901 | use abc ; |
902 | use warnings 'abc'; |
903 | no warnings ; |
904 | abc::check() ; |
905 | EXPECT |
906 | ok1 |
907 | ok2 |
908 | ok3 |
909 | ######## |
910 | |
911 | --FILE-- abc.pm |
912 | package abc ; |
913 | no warnings ; |
914 | use warnings::register ; |
915 | sub check { |
916 | print "ok1\n" if !warnings::enabled() ; |
917 | print "ok2\n" if !warnings::enabled("io") ; |
918 | print "ok3\n" if !warnings::enabled("all") ; |
7e6d00f8 |
919 | warnings::warnif("my message 1") ; |
920 | warnings::warnif('abc', "my message 2") ; |
921 | warnings::warnif('io', "my message 3") ; |
922 | warnings::warnif('all', "my message 4") ; |
114bafba |
923 | } |
924 | 1; |
925 | --FILE-- |
926 | use abc ; |
927 | use warnings 'abc'; |
928 | no warnings ; |
929 | BEGIN { $^W = 1 ; } |
930 | abc::check() ; |
931 | EXPECT |
932 | ok1 |
933 | ok2 |
934 | ok3 |
935 | ######## |
936 | |
937 | --FILE-- abc.pm |
938 | package abc ; |
939 | no warnings ; |
940 | use warnings::register ; |
941 | sub check { |
942 | print "ok1\n" if !warnings::enabled() ; |
943 | print "ok2\n" if !warnings::enabled("io") ; |
944 | print "ok3\n" if !warnings::enabled("all") ; |
945 | } |
946 | 1; |
947 | --FILE-- |
948 | use abc ; |
949 | use warnings 'abc'; |
950 | no warnings ; |
951 | $^W = 1 ; |
952 | abc::check() ; |
953 | EXPECT |
954 | ok1 |
955 | ok2 |
956 | ok3 |
7e6d00f8 |
957 | ######## |
958 | |
959 | --FILE-- abc.pm |
a781f7c3 |
960 | $| = 1; |
7e6d00f8 |
961 | package abc ; |
962 | no warnings ; |
963 | use warnings::register ; |
964 | sub check { |
965 | print "ok1\n" if warnings::enabled() ; |
966 | print "ok2\n" if !warnings::enabled("io") ; |
967 | print "ok3\n" if !warnings::enabled("all") ; |
968 | print "ok4\n" if warnings::enabled("abc") ; |
969 | warnings::warn("my message 1") ; |
970 | warnings::warnif("my message 2") ; |
971 | warnings::warnif('abc', "my message 3") ; |
972 | warnings::warnif('io', "my message 4") ; |
973 | warnings::warnif('all', "my message 5") ; |
974 | } |
975 | sub in2 { no warnings ; check() } |
976 | sub in1 { no warnings ; in2() } |
977 | 1; |
978 | --FILE-- |
979 | use abc ; |
980 | use warnings 'abc'; |
981 | abc::in1() ; |
982 | EXPECT |
7e6d00f8 |
983 | ok1 |
984 | ok2 |
985 | ok3 |
986 | ok4 |
a781f7c3 |
987 | my message 1 at - line 3 |
988 | my message 2 at - line 3 |
989 | my message 3 at - line 3 |
7e6d00f8 |
990 | ######## |
991 | |
992 | --FILE-- def.pm |
993 | package def ; |
994 | no warnings ; |
995 | use warnings::register ; |
996 | sub check { |
997 | print "ok1\n" if warnings::enabled() ; |
998 | print "ok2\n" if !warnings::enabled("io") ; |
999 | print "ok3\n" if !warnings::enabled("all") ; |
1000 | print "ok4\n" if warnings::enabled("def") ; |
1001 | warnings::warn("my message 1") ; |
1002 | warnings::warnif("my message 2") ; |
1003 | warnings::warnif('def', "my message 3") ; |
1004 | warnings::warnif('io', "my message 4") ; |
1005 | warnings::warnif('all', "my message 5") ; |
1006 | } |
1007 | sub in2 { no warnings ; check() } |
1008 | sub in1 { no warnings ; in2() } |
1009 | 1; |
1010 | --FILE-- abc.pm |
a781f7c3 |
1011 | $| = 1; |
7e6d00f8 |
1012 | package abc ; |
1013 | use def ; |
1014 | use warnings 'def'; |
1015 | sub in1 { def::in1() ; } |
1016 | 1; |
1017 | --FILE-- |
1018 | use abc ; |
1019 | no warnings; |
1020 | abc::in1() ; |
1021 | EXPECT |
7e6d00f8 |
1022 | ok1 |
1023 | ok2 |
1024 | ok3 |
1025 | ok4 |
a781f7c3 |
1026 | my message 1 at abc.pm line 5 |
1027 | abc::in1() called at - line 3 |
1028 | my message 2 at abc.pm line 5 |
1029 | abc::in1() called at - line 3 |
1030 | my message 3 at abc.pm line 5 |
1031 | abc::in1() called at - line 3 |
7e6d00f8 |
1032 | ######## |
1033 | |
1034 | --FILE-- def.pm |
a781f7c3 |
1035 | $| = 1; |
7e6d00f8 |
1036 | package def ; |
1037 | no warnings ; |
1038 | use warnings::register ; |
1039 | require Exporter; |
1040 | @ISA = qw( Exporter ) ; |
1041 | @EXPORT = qw( in1 ) ; |
1042 | sub check { |
1043 | print "ok1\n" if warnings::enabled() ; |
1044 | print "ok2\n" if !warnings::enabled("io") ; |
1045 | print "ok3\n" if !warnings::enabled("all") ; |
1046 | print "ok4\n" if warnings::enabled("abc") ; |
1047 | print "ok5\n" if !warnings::enabled("def") ; |
1048 | warnings::warn("my message 1") ; |
1049 | warnings::warnif("my message 2") ; |
1050 | warnings::warnif('abc', "my message 3") ; |
1051 | warnings::warnif('def', "my message 4") ; |
1052 | warnings::warnif('io', "my message 5") ; |
1053 | warnings::warnif('all', "my message 6") ; |
1054 | } |
1055 | sub in2 { no warnings ; check() } |
1056 | sub in1 { no warnings ; in2() } |
1057 | 1; |
1058 | --FILE-- abc.pm |
1059 | package abc ; |
1060 | use warnings::register ; |
1061 | use def ; |
1062 | #@ISA = qw(def) ; |
1063 | 1; |
1064 | --FILE-- |
1065 | use abc ; |
1066 | no warnings; |
1067 | use warnings 'abc'; |
1068 | abc::in1() ; |
1069 | EXPECT |
7e6d00f8 |
1070 | ok2 |
1071 | ok3 |
1072 | ok4 |
1073 | ok5 |
a781f7c3 |
1074 | my message 1 at - line 4 |
1075 | my message 3 at - line 4 |
7e6d00f8 |
1076 | ######## |
1077 | |
1078 | --FILE-- def.pm |
1079 | package def ; |
1080 | no warnings ; |
1081 | use warnings::register ; |
1082 | |
1083 | sub new |
1084 | { |
1085 | my $class = shift ; |
1086 | bless [], $class ; |
1087 | } |
1088 | |
1089 | sub check |
1090 | { |
1091 | my $self = shift ; |
1092 | print "ok1\n" if !warnings::enabled() ; |
1093 | print "ok2\n" if !warnings::enabled("io") ; |
1094 | print "ok3\n" if !warnings::enabled("all") ; |
1095 | print "ok4\n" if warnings::enabled("abc") ; |
1096 | print "ok5\n" if !warnings::enabled("def") ; |
1097 | print "ok6\n" if warnings::enabled($self) ; |
1098 | |
1099 | warnings::warn("my message 1") ; |
1100 | warnings::warn($self, "my message 2") ; |
1101 | |
1102 | warnings::warnif("my message 3") ; |
1103 | warnings::warnif('abc', "my message 4") ; |
1104 | warnings::warnif('def', "my message 5") ; |
1105 | warnings::warnif('io', "my message 6") ; |
1106 | warnings::warnif('all', "my message 7") ; |
1107 | warnings::warnif($self, "my message 8") ; |
1108 | } |
1109 | sub in2 |
1110 | { |
1111 | no warnings ; |
1112 | my $self = shift ; |
1113 | $self->check() ; |
1114 | } |
1115 | sub in1 |
1116 | { |
1117 | no warnings ; |
1118 | my $self = shift ; |
1119 | $self->in2(); |
1120 | } |
1121 | 1; |
1122 | --FILE-- abc.pm |
a781f7c3 |
1123 | $| = 1; |
7e6d00f8 |
1124 | package abc ; |
1125 | use warnings::register ; |
1126 | use def ; |
1127 | @ISA = qw(def) ; |
1128 | sub new |
1129 | { |
1130 | my $class = shift ; |
1131 | bless [], $class ; |
1132 | } |
1133 | |
1134 | 1; |
1135 | --FILE-- |
1136 | use abc ; |
1137 | no warnings; |
1138 | use warnings 'abc'; |
1139 | $a = new abc ; |
1140 | $a->in1() ; |
1141 | print "**\n"; |
1142 | $b = new def ; |
1143 | $b->in1() ; |
1144 | EXPECT |
7e6d00f8 |
1145 | ok1 |
1146 | ok2 |
1147 | ok3 |
1148 | ok4 |
1149 | ok5 |
1150 | ok6 |
a781f7c3 |
1151 | my message 1 at - line 5 |
1152 | my message 2 at - line 5 |
1153 | my message 4 at - line 5 |
1154 | my message 8 at - line 5 |
7e6d00f8 |
1155 | ** |
1156 | ok1 |
1157 | ok2 |
1158 | ok3 |
1159 | ok4 |
1160 | ok5 |
a781f7c3 |
1161 | my message 1 at - line 8 |
1162 | my message 2 at - line 8 |
1163 | my message 4 at - line 8 |