Error code E0720
An impl Trait
type expands to a recursive type.
Erroneous code example:
#![allow(unused)] fn main() { fn make_recursive_type() -> impl Sized { [make_recursive_type(), make_recursive_type()] } }
An impl Trait
type must be expandable to a concrete type that contains no
impl Trait
types. For example the previous example tries to create an
impl Trait
type T
that is equal to [T, T]
.