Fix ICE when checking call overload

If the overloaded method does not have a tuple or unit type as its first non-self parameter, produce a list of error types with the correct length to prevent a later index bound panic.  This typically occurs due to propagation of an earlier type error or unconstrained type variable.  Closes #18532