You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Exponential compile times for chained RPITIT #102527
Instead the above example took about a minute and a half. With 20 .nest()s in sequence, it takes between two and three seconds. For each subsequent .nest(), it takes about twice the time.
When I replace || self() with just self, it compiles almost instantly. The same happens when I remove the apparently inconsequential val; statement, or when I use an owned type instead of a &'static str.
Activity
Artemis21 commentedon Sep 30, 2022
The version of this without using RPITIT also compiles quickly:
compiler-errors commentedon Sep 30, 2022
how interesting, I'll look into this :)
Mark-Simulacrum commentedon Sep 30, 2022
Feels like the desugaring might end up similar to #100886, so maybe worth trying any fix on that too.
compiler-errors commentedon Jun 12, 2023
This doesn't exactly have to do with RPITIT -- can be replicated with regular opaques via
impl_trait_in_assoc_typecompiler-errors commentedon Jun 29, 2023
Triage: still hangs
Auto merge of rust-lang#115822 - compiler-errors:stabilize-rpitit, r=…
adwinwhite commentedon Jan 13, 2026
This no longer hangs with the next solver. The code compiles quickly even if I double the number of
nestcalls.Still hangs with the old solver.