-
Notifications
You must be signed in to change notification settings - Fork 0
WF is no longer coinductive? #169
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
Comments
Found from |
I am not sure whether it should be 😅 let's wait until we encounter this in the wild. |
💀 |
rust-timer
added a commit
to rust-lang-ci/rust
that referenced
this issue
May 17, 2025
Rollup merge of rust-lang#140208 - compiler-errors:wf-coinductive, r=lcnr Make well-formedness predicates no longer coinductive This PR makes well-formedness no longer coinductive. It was made coinductive in rust-lang#98542, but AFAICT this was only to fix UI tests since we stopped lowering `where Ty:` to an empty-region outlives predicate but to a WF predicate instead. Arguably it should lower to something completely different, something like a "type mentioned no-op predicate", but well-formedness serves this purpose fine today, and since no code (according to crater) relies on this coinductive behavior, we'd like to avoid having to emulate it in the new solver. Fixes rust-lang#123456 (I didn't want to add a test since it seems low-value to have a ICE test for a fuzzer minimization that is basically garbage code.) Fixes #109764 (not sure if this behavior is emulatable w/o coinductive WF?) Fixes rust-lang/trait-system-refactor-initiative#169 r? lcnr
fixed by making it not coinductive in the old solver as well in rust-lang/rust#140208 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Trivial WF cycles from where clauses seem to have broken in rust-lang/rust#136824.
The text was updated successfully, but these errors were encountered: