error[E0308]: mismatched types --> $DIR/occurs-check-3.rs:14:24 | LL | fn main() { let c; c = clam::a(c); match c { clam::a::(_) => { } } } | ^^^^^^^^^^ cyclic type of infinite size error: aborting due to previous error For more information about this error, try `rustc --explain E0308`.