in reply to Re: Syntax error sorting hash keys
in thread Syntax error sorting hash keys

So you cannot pass any arguments to this function.

Only if the function is declared before the use. If the function is used before it is declared, the prototype will not have a chance to be enforced. Of course, if the OP was using warnings, he would get a "sub called too early to check prototype" message in this case.

Update: just to make it clear, I am not endorsing the use of empty prototypes, just further explaining the behavior.