use std::marker; struct Foo { foo: Option>>, marker: marker::PhantomData } //~^ ERROR recursive type `Foo` has infinite size impl Foo { fn bar(&self) {} } fn main() {}