Thanks a lot for your help ! I just tried the solution Tyke
came up with. And it seems like a pretty good one (use vars qw/$a $b/;)
I tried it and it works perfectly and I haven't been able to
create a situation in which it doesn't work. So I think I'll go for
This solution has the same problems as my my-predeclare solution has. If somebody is stupid enough to assign something to $a and $b, then this method won't work for the single-call case. But on the other side, the single-call case will never work, if somebody actually uses variables called $a and $b in any way other than within a sort-callback.