rust/tests/ui/layout/post-mono-layout-cycle.rs

26 lines
403 B
Rust

//@ build-fail
//~^ cycle detected when computing layout of `Wrapper<()>`
trait Trait {
type Assoc;
}
impl Trait for () {
type Assoc = Wrapper<()>;
}
struct Wrapper<T: Trait> {
_x: <T as Trait>::Assoc,
}
fn abi<T: Trait>(_: Option<Wrapper<T>>) {}
//~^ ERROR a cycle occurred during layout computation
fn indirect<T: Trait>() {
abi::<T>(None);
}
fn main() {
indirect::<()>();
}