diff options
| author | Matthias Krüger <476013+matthiaskrgr@users.noreply.github.com> | 2025-04-17 00:16:22 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-17 00:16:22 +0200 |
| commit | c594a88f4353766e2474163f7f8cf68840682a67 (patch) | |
| tree | 157a56ff234c76fc28b69a47d39763d8731abc8f /compiler/rustc_parse/src/parser/diagnostics.rs | |
| parent | f14e6322702c60dae7d3e702608906b437986529 (diff) | |
| parent | bb3c98165cca752ba93927f19fa3f78c48caccc7 (diff) | |
| download | rust-c594a88f4353766e2474163f7f8cf68840682a67.tar.gz rust-c594a88f4353766e2474163f7f8cf68840682a67.zip | |
Rollup merge of #139828 - compiler-errors:rigid-trait, r=lcnr
Don't require rigid alias's trait to hold See test for write-up. TL;DR is that we don't need the trait bound to hold, since we enforce it during WF. I think this is preferable to introducing (if we even could do so) a more specific hack around coroutine interiors, higher ranked types, etc, since this is just a manifestation of more pervasive issues w/ lifetime erasure in coroutines. This just doesn't manifest in the old solver b/c it doesn't try to prove `T: Trait` holds when rigidly projecting `<T as Trait>::Assoc`. It's pretty clear that this affects quite a few traits (https://github.com/rust-lang/rust/pull/139763), so I think this needs fixing. r? lcnr Fixes https://github.com/rust-lang/trait-system-refactor-initiative/issues/177
Diffstat (limited to 'compiler/rustc_parse/src/parser/diagnostics.rs')
0 files changed, 0 insertions, 0 deletions
