Only make GAT ambiguous in match_projection_projections
considering shallow resolvability by compiler-errors · Pull Request #125214 · rust-lang/rust (original) (raw)
In #123537, I tweaked the hack from #93892 to use resolve_vars_if_possible
instead of shallow_resolve
. This considers more inference guidance ambiguous. This resulted in crater regressions in #125196.
I've effectively reverted the change to the old behavior. That being said, I don't like this behavior, but I'd rather keep it for now since #123537 was not meant to make any behavioral changes. See the attached example.
This also affects the new solver, for the record, which doesn't have any rules about not guiding inference from param-env candidates which may constrain GAT args as a side-effect.