1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
#!./perl
#
# check if builtins behave as prototyped
#
BEGIN {
chdir 't' if -d 't';
@INC = '../lib';
}
print "1..16\n";
my $i = 1;
sub foo {}
my $bar = "bar";
sub test_too_many {
eval $_[0];
print "not " unless $@ =~ /^Too many arguments/;
printf "ok %d\n",$i++;
}
sub test_too_few {
eval $_[0];
print "not " unless $@ =~ /^Not enough arguments/;
printf "ok %d\n",$i++;
}
sub test_no_error {
eval $_[0];
print "not " if $@;
printf "ok %d\n",$i++;
}
test_too_many($_) for split /\n/,
q[ defined(&foo, $bar);
pos(1,$b);
undef(&foo, $bar);
uc($bar,$bar);
];
test_too_few($_) for split /\n/,
q[ unpack;
pack;
];
test_no_error($_) for split /\n/,
q[ scalar(&foo,$bar);
defined &foo, &foo, &foo;
undef &foo, $bar;
uc $bar,$bar;
grep(not($bar), $bar);
grep(not($bar, $bar), $bar);
grep((not $bar, $bar, $bar), $bar);
__FILE__();
__LINE__();
__PACKAGE__();
];
|