Error message
In the message, %s marks a value that the engine fills in when it raises the error.
The story
You called something with too many arguments. A builtin, or a function you wrote, declares exactly how many parameters it takes. Anything beyond that has nowhere to go, no parameter to fill, and no rule to judge it. The only exception is a builtin whose last parameter is marked variadic, which welcomes extras. Otherwise, the engine counts what you delivered, compares it to what was declared, and refuses before anything runs. Say a function declares two parameters and you call it with three values. The third one would be dropped silently in a lazier engine, and your result would be wrong without anyone telling you. Here, you hear about it. It does not matter which door you came through, a script, or the rush call command: the same rule, the same message. The message names the builtin or the function and shows two numbers: the declared count and the count you delivered. The fix: remove the extra argument, or, if the function really needs more, add a parameter to its declaration.
Text from the Rush engine's error catalogue.
