rustc's Trait Solver Doesn't Write Error Messages: It Writes Proof Trees
rustc’s next-gen trait solver never constructs error messages while solving; it records a proof tree and replays it later, with caches bypassed, to find the real cause of a …
rustc’s next-gen trait solver never constructs error messages while solving; it records a proof tree and replays it later, with caches bypassed, to find the real cause of a …
rustc’s next-gen trait solver normally decrements its recursion budget by one, but after an overflow it divides the budget by four, so the solver terminates almost immediately …
The new trait solver’s PathKind lattice (Inductive < Unknown < Coinductive) is joined with a max-like operation, so a cycle’s kind is recomputed compositionally on every stack …