struct send_packet { let p: T; new(p: T) { self.p = p; } } mod pingpong { type ping = send_packet; enum pong = send_packet; //~ ERROR illegal recursive enum type; wrap the inner value in a box to make it representable } fn main() {}