-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Sort elaborated existential predicates in object_ty_for_trait
#102947
Sort elaborated existential predicates in object_ty_for_trait
#102947
Conversation
Could you add a comment explaining why we sort? |
e4ba3c4
to
4a8cfe9
Compare
I left a somewhat lackluster comment (sorry), but this has been an assertion since @Mark-Simulacrum added it in #37965. We actually probably don't need to assert that the list is totally sorted in the interner function, but just that the primary Please let me know if I should update the comment in a follow-up though, and I will happily dig deeper! @bors r=cjgillot |
The I kinda don't want to touch it unless someone else thinks it's a good idea, and this is definitely a follow-up item. |
Rollup of 6 pull requests Successful merges: - rust-lang#102765 (Suggest `==` to the first expr which has `ExprKind::Assign` kind) - rust-lang#102854 (openbsd: don't reallocate a guard page on the stack.) - rust-lang#102904 (Print return-position `impl Trait` in trait verbosely if `-Zverbose`) - rust-lang#102947 (Sort elaborated existential predicates in `object_ty_for_trait`) - rust-lang#102956 (Use `full_res` instead of `expect_full_res`) - rust-lang#102999 (Delay `is_intrinsic` query until after we've determined the callee is a function) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
@bors r+ |
💡 This pull request was already approved, no need to approve it again.
|
r? @cjgillot
I think that #102845 caused #102933. Depending on the order that we elaborate these existential projection predicates, there's no guarantee that they'll be sorted by def id, which is what is failing the assertion in the issue.
Fixes #102933
Fixes #102973