2020-11-26 15:32:41 +00:00
|
|
|
error[E0072]: recursive type `Take` has infinite size
|
|
|
|
--> $DIR/infinite-struct.rs:1:1
|
|
|
|
|
|
|
|
|
LL | struct Take(Take);
|
2022-02-13 15:27:59 +00:00
|
|
|
| ^^^^^^^^^^^ ---- recursive without indirection
|
|
|
|
| |
|
2020-11-26 15:32:41 +00:00
|
|
|
| recursive type has infinite size
|
|
|
|
|
|
|
|
|
help: insert some indirection (e.g., a `Box`, `Rc`, or `&`) to make `Take` representable
|
|
|
|
|
|
|
|
|
LL | struct Take(Box<Take>);
|
2021-06-22 02:07:19 +00:00
|
|
|
| ++++ +
|
2020-11-26 15:32:41 +00:00
|
|
|
|
|
|
|
error[E0391]: cycle detected when computing drop-check constraints for `Take`
|
|
|
|
--> $DIR/infinite-struct.rs:1:1
|
|
|
|
|
|
|
|
|
LL | struct Take(Take);
|
2022-02-13 15:27:59 +00:00
|
|
|
| ^^^^^^^^^^^
|
2020-11-26 15:32:41 +00:00
|
|
|
|
|
2021-07-21 01:06:39 +00:00
|
|
|
= note: ...which immediately requires computing drop-check constraints for `Take` again
|
2021-12-12 04:34:46 +00:00
|
|
|
= note: cycle used when computing dropck types for `Canonical { max_universe: U0, variables: [], value: ParamEnvAnd { param_env: ParamEnv { caller_bounds: [], reveal: UserFacing, constness: NotConst }, value: Take } }`
|
2020-11-26 15:32:41 +00:00
|
|
|
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
|
|
|
|
Some errors have detailed explanations: E0072, E0391.
|
|
|
|
For more information about an error, try `rustc --explain E0072`.
|