I don't think the problem can be in how you pass the values, because this works:
$s1 = "first scalar";
$s2 = "second scalar";
@a1 = ("first item","second item","third item","fourth item");
&example($s1, $s2, @a1);
sub example {
$es1 = shift;$es2 = shift;@ea1 = @_;
print "S1: $es1\n";
print "S2: $es2\n";
print "ARRAY:\n";
for $i (@ea1) {print "$i ; "}
}
#prints the following:
#S1: first scalar
#S2: second scalar
#ARRAY:
#first item ; second item ; third item ; fourth item ;
So the problem must be somewhere else - perhaps in what you are doing with the sub, or how you define the variables before passing them. More detail?
§
George Sherston