Fix union edge case in function argument redefinition (#20908)
Logic is simple: inference for function arguments should match inference
for regular annotated variables exactly, including falling back to empty
context in _union context_ (even if there are no errors) provided this
results in a narrower type.