bindings: Define behavior of `using` an ambiguous binding (#60804)
We were missing handling for the case where the binding that we're using
is ambiguous. There are two possible behaviors:
1. The ambiguous binding gets ignored for the purpose of resolution
2. The ambiguity poisons and the imported binding is also ambiguous
Current behavior between these two depends on resolution order (which is
bad and part of what the assert was complaining about). This decides
that case #2 is the correct behavior and fixes #60659.
(cherry picked from commit 0f275e3e8b43bed4062c33ddb615ae9aececd4c3)