print "tst_suite/tst-sub.gre ...";
sub arg_transmission ($$) {
$x = $_[0];
$y = $_[1];
die " failed test 2" if ($x != 1);
die " failed test 3" if ($y != 2);
}
sub arg_transmission_local ($$) {
my $Y = $_[1];
my $X = $_[0];
die " failed test 4" if ($#_ != 1);
die " failed test 5" if ($X != 10);
die " failed test 6" if ($Y != 20);
}
sub double ($) {
my $x;
$x = $_[0];
return 2*$x;
}
sub double2 ($) {
return 2*$_[0] if ($_[0]);
die " failed test 11\n";
}
arg_transmission(1, 1+1);
die " failed test 7" if ($x != 1);
die " failed test 8" if ($y != 2);
arg_transmission_local(10, 10+10);
die " failed test 9" if (double(10) != 20);
die " failed test 10" if (double2(1) != 2);
$s = "hello";
die " failed test 11" if (5 != length($s));
sub test_textual_sub($) {
my $v = $_[0];
$v =~ s/g/G/;
return $v;
}
$a = test_textual_sub("gre");
die " failed test 12" if ("Gre" ne $a);
die " failed test 13" if ("Gre" ne test_textual_sub("gre"));
print " passed\n";