cycle on inherent associated types in structs · Issue #108491 · rust-lang/rust (original) (raw)
Navigation Menu
- Explore
- Pricing
Provide feedback
Saved searches
Use saved searches to filter your results more quickly
Description
Taken out from here: #8995 (comment) as @fmease requested.
struct Foo { bar: Self::Bar, } impl Foo { pub type Bar = usize; }
was compiled successfully a couple of nighly revisions before.
Now an error is returned:
error[E0391]: cycle detected when computing predicates of `Foo`
--> src\main.rs:5:1
|
5 | struct Foo {
| ^^^^^^^^^^
|
note: ...which requires computing predicates of `Foo`...
--> src\main.rs:5:1
|
5 | struct Foo {
| ^^^^^^^^^^
note: ...which requires computing inferred outlives predicates of `Foo`...
--> src\main.rs:5:1
|
5 | struct Foo {
| ^^^^^^^^^^
= note: ...which requires computing the inferred outlives predicates for items in this crate...
note: ...which requires computing type of `Foo::bar`...
--> src\main.rs:6:5
|
6 | bar: Self::Bar,
| ^^^^^^^^^^^^^^
note: ...which requires computing normalized predicates of `Foo`...
--> src\main.rs:5:1
|
5 | struct Foo {
| ^^^^^^^^^^
= note: ...which again requires computing predicates of `Foo`, completing the cycle
note: cycle used when collecting item types in top-level module
Meta
rustc --version --verbose
:
rustc 1.69.0-nightly (34e6673a0 2023-02-25)