Open inanna-malick opened 3 months ago
We can't really fix this without some code minimized out of your proprietary codebase.
Judging from the backtrace, you have a recursive implementation somewhere. Specifically, look at your implementations for associated types that normalize in ways that "run away" off to infinitely large types -- like:
impl Trait for T where &T: Trait {
type Type = &'static <T as Trait>::Assoc;
}
This is all vaguely vibes-based though, sorry lol!
Someone could check if this is related to any of the other tickets which have a reproducer already https://github.com/rust-lang/rust/issues?q=is%3Aissue+is%3Aopen+%22type+variables+should+not+be+hashed%3A%22
We can't really fix this without some code minimized out of your proprietary codebase.
Judging from the backtrace, you have a recursive implementation somewhere. Specifically, look at your implementations for associated types that normalize in ways that "run away" off to infinitely large types -- like:
impl Trait for T where &T: Trait { type Type = &'static <T as Trait>::Assoc; }
This is all vaguely vibes-based though, sorry lol!
No worries! Sorry I can't share the code. I tracked it down eventually, to something like
enum Foo {
Not(Self),
Matches(String),
}
with various traits implemented over it (serde Serialize/Deserialize, utoipa ToSchema, etc)
Code
Sorry, can't provide code - it's from serde_json usage in proprietary code
Meta
rustc --version --verbose
:Error output