X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=t%2F12-proto.t;h=651fb9f411c0dffb38417f3a355ea607aed67367;hb=HEAD;hp=db7b1351a9bd74c353178245e19c9b706dec68df;hpb=2ef1324275671d20b6a2471166250154541fff1d;p=perl%2Fmodules%2Fsubs-auto.git diff --git a/t/12-proto.t b/t/12-proto.t index db7b135..651fb9f 100644 --- a/t/12-proto.t +++ b/t/12-proto.t @@ -3,14 +3,14 @@ use strict; use warnings; -use Test::More tests => 7; +use Test::More tests => 11; my $foo; sub foo ($) { $foo = $_[0] }; my $baz; eval q| - use warnings qw/FATAL redefine prototype/; + use warnings qw; sub main::baz ($) { $baz = $_[0] } |; like($@, qr/Prototype\s+mismatch\s*:\s+sub\s+main::baz\s*:\s+none\s+vs\s+\(\$\)/, 'baz appears as prototyped'); @@ -21,6 +21,10 @@ eval { my @x = (1, 5); foo @x }; is($@, '', 'foo was compiled ok'); is($foo, 2, 'foo was called with the right arguments'); +eval { my @x = (1, 5); &foo(@x) }; +is($@, '', '&foo was compiled ok'); +is($foo, 1, '&foo was called with the right arguments'); + my $bar; sub bar (\@) { $bar = 0; $bar += $_ for grep defined, @{$_[0]} } @@ -28,6 +32,10 @@ eval { my @x = (2, 3, 4); bar @x }; is($@, '', 'bar was compiled ok'); is($bar, 9, 'bar was called with the right arguments'); +eval { my @x = ([2, 3], 4); &bar(@x) }; +is($@, '', '&bar was compiled ok'); +is($bar, 5, '&bar was called with the right arguments'); + eval { baz 5 }; like($@, qr/^Undefined\s+subroutine\s+&?main::baz/,'baz couldn\'t be compiled'); is($baz, undef, 'baz can\'t be called because of the prototype mismatch');