diff options
-rwxr-xr-x | t/comp/proto.t | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/t/comp/proto.t b/t/comp/proto.t index 32b1fad8ee..4141f2abc6 100755 --- a/t/comp/proto.t +++ b/t/comp/proto.t @@ -16,7 +16,7 @@ BEGIN { use strict; -print "1..135\n"; +print "1..140\n"; my $i = 1; @@ -526,6 +526,23 @@ print "ok ", $i++, "\n"; print "ok ", $i++, "\n"; print "not " unless myref(*myglob) =~ /^GLOB\(/; print "ok ", $i++, "\n"; + + eval q/sub multi1 (\[%@]) { 1 } multi1 $myvar;/; + print "not " unless $@ =~ /Type of arg 1 to main::multi1 must be one of/; + print "ok ", $i++, "\n"; + eval q/sub multi2 (\[$*&]) { 1 } multi2 @myarray;/; + print "not " unless $@ =~ /Type of arg 1 to main::multi2 must be one of/; + print "ok ", $i++, "\n"; + eval q/sub multi3 (\[$@]) { 1 } multi3 %myhash;/; + print "not " unless $@ =~ /Type of arg 1 to main::multi3 must be one of/; + print "ok ", $i++, "\n"; + eval q/sub multi4 ($\[%]) { 1 } multi4 1, &mysub;/; + print "not " unless $@ =~ /Type of arg 2 to main::multi4 must be one of/; + print "ok ", $i++, "\n"; + eval q/sub multi5 (\[$@]$) { 1 } multi5 *myglob;/; + print "not " unless $@ =~ /Type of arg 1 to main::multi5 must be one of/ + && $@ =~ /Not enough arguments/; + print "ok ", $i++, "\n"; } # check that obviously bad prototypes are getting warnings |