This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
DB_File documentation fix
[perl5.git] / t / comp / redef.t
CommitLineData
ac1ad7f0 1#!./perl -w
760ac839
LW
2#
3# Contributed by Graham Barr <Graham.Barr@tiuk.ti.com>
4
5BEGIN {
760ac839
LW
6 $warn = "";
7 $SIG{__WARN__} = sub { $warn .= join("",@_) }
8}
9
10sub ok ($$) {
11 print $_[1] ? "ok " : "not ok ", $_[0], "\n";
12}
13
14print "1..18\n";
15
16sub sub0 { 1 }
17sub sub0 { 2 }
18
19ok 1, $warn =~ s/Subroutine sub0 redefined[^\n]+\n//s;
20
21sub sub1 { 1 }
22sub sub1 () { 2 }
23
24ok 2, $warn =~ s/Prototype mismatch: \Q(none) vs ()\E[^\n]+\n//s;
25ok 3, $warn =~ s/Subroutine sub1 redefined[^\n]+\n//s;
26
27sub sub2 { 1 }
28sub sub2 ($) { 2 }
29
30ok 4, $warn =~ s/Prototype mismatch: \Q(none) vs ($)\E[^\n]+\n//s;
31ok 5, $warn =~ s/Subroutine sub2 redefined[^\n]+\n//s;
32
33sub sub3 () { 1 }
34sub sub3 { 2 }
35
36ok 6, $warn =~ s/Prototype mismatch: \Q() vs (none)\E[^\n]+\n//s;
37ok 7, $warn =~ s/Constant subroutine sub3 redefined[^\n]+\n//s;
38
39sub sub4 () { 1 }
40sub sub4 () { 2 }
41
42ok 8, $warn =~ s/Constant subroutine sub4 redefined[^\n]+\n//s;
43
44sub sub5 () { 1 }
45sub sub5 ($) { 2 }
46
47ok 9, $warn =~ s/Prototype mismatch: \Q() vs ($)\E[^\n]+\n//s;
48ok 10, $warn =~ s/Constant subroutine sub5 redefined[^\n]+\n//s;
49
50sub sub6 ($) { 1 }
51sub sub6 { 2 }
52
53ok 11, $warn =~ s/Prototype mismatch: \Q($) vs (none)\E[^\n]+\n//s;
54ok 12, $warn =~ s/Subroutine sub6 redefined[^\n]+\n//s;
55
56sub sub7 ($) { 1 }
57sub sub7 () { 2 }
58
59ok 13, $warn =~ s/Prototype mismatch: \Q($) vs ()\E[^\n]+\n//s;
60ok 14, $warn =~ s/Subroutine sub7 redefined[^\n]+\n//s;
61
62sub sub8 ($) { 1 }
63sub sub8 ($) { 2 }
64
65ok 15, $warn =~ s/Subroutine sub8 redefined[^\n]+\n//s;
66
67sub sub9 ($@) { 1 }
68sub sub9 ($) { 2 }
69
70ok 16, $warn =~ s/Prototype mismatch: \(\$\Q@) vs ($)\E[^\n]+\n//s;
71ok 17, $warn =~ s/Subroutine sub9 redefined[^\n]+\n//s;
72
73ok 18, $_ eq '';
74
75# If we got any errors that we were not expecting, then print them
76print $_ if length $_;
77
78