bpart: Ignore guard bindings for ambiguity purposes (#57406)
This makes non-guard bindings stronger than guard bindings for ambiguity
purposes. Note that both of these are yet stronger than deprecated
bindings, so if there's a "non-guard deprecated" binding and a "guard
non-deprecated" binding, the latter will win and the access will be
UndefVarError. I think this is the closest to the 1.11 behavior without
relying on resolvedness.
Fixes #57404
This PR is against #57405 just because that PR touches the common
interface, but is conceptually independent.