-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Failure to assume GAT normalization holds when proving GAT bounds in impl #117606
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
Labels
A-GATs
Area: Generic associated types (GATs)
F-associated_type_defaults
`#![feature(associated_type_defaults)]`
T-types
Relevant to the types team, which will review and decide on the PR/issue.
Comments
To fix this, we need to quantify the GAT universally over all of its (impl+gat) vars here: rust/compiler/rustc_hir_analysis/src/check/compare_impl_item.rs Lines 2324 to 2365 in 513a485
...rather than just its gat vars. That's obviously not sound unless the projection predicate requires the where clauses of the impl to hold, which requires having where clauses on binders. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-GATs
Area: Generic associated types (GATs)
F-associated_type_defaults
`#![feature(associated_type_defaults)]`
T-types
Relevant to the types team, which will review and decide on the PR/issue.
This code should pass, but it doesn't after #117542.
Instead, it fails with:
The text was updated successfully, but these errors were encountered: