new solver cleanup + implement coherence by lcnr · Pull Request #109447 · rust-lang/rust

added 2 commits

March 21, 2023 16:27

compiler-errors

@lcnr

@lcnr

compiler-errors

@bors bors added S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

and removed S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

labels

Mar 21, 2023

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request

Mar 21, 2023
new solver cleanup + implement coherence

the cleanup:
- change `Certainty::unify_and` to consider ambig + overflow to be ambig
- rename `trait_candidate_should_be_dropped_in_favor_of` to `candidate_should_be_dropped_in_favor_of`
- remove outdated fixme

For coherence I mostly just add an ambiguous candidate if the current trait ref is unknowable. I am doing the same for reservation impl where I also just add an ambiguous candidate.

bors added a commit to rust-lang-ci/rust that referenced this pull request

Mar 23, 2023

@lcnr lcnr deleted the coherence branch

March 23, 2023 09:41

@lcnr lcnr mentioned this pull request

Mar 29, 2023

13 tasks