-
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
Diesel new coherence failure: conflicting implementations of trait #131969
Comments
It's ok! We specifically chose to wait until after the beta release to stabilize the new solver in coherence, to get plenty of time and exposure to issues like this. Thanks for reporting :D |
@Urgau I've already bisected it to a0c2aba (as written in the initial issue) I also tried some things locally and interestingly this does not happen without the Additionally: It also might be meaningful to test with the |
That bisection here is not super useful. It's probably better to bisect it to when it started failing in the new trait solver specifically. I've already done that, and it bisects somewhat unsurprisingly to #130617. cc @lcnr, we probably should adjust the bail heuristic here to account for more infer vars; it looks like diesel uses lots of those. |
Rollup merge of rust-lang#132001 - lcnr:stabilize-coherence-again, r=compiler-errors fix coherence error for very large tuples™ see https://rust-lang.zulipchat.com/#narrow/channel/364551-t-types.2Ftrait-system-refactor/topic/diesel.20error for an in-depth explanation of this issue. We once again specialize `NormalizesTo` goals to avoid the impact of erasing their expected term. fixes rust-lang#131969 r? `@compiler-errors`
Code
I tried this code:
git clone https://github.com/diesel-rs/diesel/ cd diesel git checkout b170af753cc3c6774f578aae1081711a09dfa2ac cargo +nightly check -p diesel -F postgres -F 64-column-tables
I expected to see this happen: Code compiles fine
Instead, this happened: Code produces the following errors (Really long error, so I put it into a gist)
Version it worked on
It most recently worked on: Beta channel (1.83)
Version with regression
rustc --version --verbose
:Rustc-bisect points to a0c2aba, so cc @lcnr @compiler-errors (I'm sorry to come with the next issue there)
@rustbot modify labels: +regression-from-beta-to-nightly -regression-untriaged
The text was updated successfully, but these errors were encountered: