-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Don't allow poly_select
in new solver
#141390
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Some changes occurred to the core trait solver cc @rust-lang/initiative-trait-system-refactor |
feaa5bf
to
16b6ffe
Compare
@@ -0,0 +1,20 @@ | |||
error[E0271]: type mismatch resolving `<Thing as Trait<'a>>::Assoc == &i32` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
weird error message lol
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
but unrelated, probably would be nice to have a leak-check specific error message or sth.
@bors r+ rollup |
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#141355 (ci: improve citool job db errors) - rust-lang#141359 (Fix `FnOnce` impl for `AsyncFn`/`AsyncFnMut` self-borrowing closures in new solver) - rust-lang#141362 (Normalize aliases to correct kind of error term) - rust-lang#141377 (Remove unnecessary `is_empty` checks) - rust-lang#141381 (try_cast_aligned: avoid bare int-to-ptr casts) - rust-lang#141382 (ci: convert distcheck to free runner) - rust-lang#141389 (ci: prepare aws access keys for migration) - rust-lang#141390 (Don't allow `poly_select` in new solver) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#141390 - compiler-errors:poly-select-new-solver, r=lcnr Don't allow `poly_select` in new solver I added a `poly_select` call in rust-lang#140519, but this causes an ICE since the new solver doesn't properly handle the "instantiate binder -> recanonicalize" step in the proof tree visitor. While we could fix the select visitor to look at the next step in proof tree, it's not really necessary. Instead, let's enforce that all callees call the non-higher-ranked `select` function in the new solver. Fixes rust-lang#141322 r? lcnr
I added a
poly_select
call in #140519, but this causes an ICE since the new solver doesn't properly handle the "instantiate binder -> recanonicalize" step in the proof tree visitor.While we could fix the select visitor to look at the next step in proof tree, it's not really necessary. Instead, let's enforce that all callees call the non-higher-ranked
select
function in the new solver.Fixes #141322
r? lcnr