1 warning: denote infinite loops with `loop { ... }`
2 --> $DIR/issue-52443.rs:6:11
4 LL | [(); {while true {break}; 0}];
5 | ^^^^^^^^^^ help: use `loop`
7 = note: `#[warn(while_true)]` on by default
9 error[E0658]: `for` is not allowed in a `const`
10 --> $DIR/issue-52443.rs:9:12
12 LL | [(); { for _ in 0usize.. {}; 0}];
13 | ^^^^^^^^^^^^^^^^^^^^
15 = note: see issue #87575 <https://github.com/rust-lang/rust/issues/87575> for more information
16 = help: add `#![feature(const_for)]` to the crate attributes to enable
18 error[E0308]: mismatched types
19 --> $DIR/issue-52443.rs:2:10
21 LL | [(); & { loop { continue } } ];
22 | ^^^^^^^^^^^^^^^^^^^^^^^ expected `usize`, found `&_`
24 = note: expected type `usize`
26 help: consider removing the borrow
28 LL - [(); & { loop { continue } } ];
29 LL + [(); { loop { continue } } ];
32 error[E0308]: mismatched types
33 --> $DIR/issue-52443.rs:4:17
35 LL | [(); loop { break }];
38 | expected `usize`, found `()`
39 | help: give it a value of the expected type: `break 42`
41 error[E0015]: cannot convert `RangeFrom<usize>` into an iterator in constants
42 --> $DIR/issue-52443.rs:9:21
44 LL | [(); { for _ in 0usize.. {}; 0}];
47 note: impl defined here, but it is not `const`
48 --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
49 = note: calls in constants are limited to constant functions, tuple structs and tuple variants
50 = help: add `#![feature(const_trait_impl)]` to the crate attributes to enable
52 error[E0658]: mutable references are not allowed in constants
53 --> $DIR/issue-52443.rs:9:21
55 LL | [(); { for _ in 0usize.. {}; 0}];
58 = note: see issue #57349 <https://github.com/rust-lang/rust/issues/57349> for more information
59 = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable
61 error[E0277]: the trait bound `RangeFrom<usize>: Iterator` is not satisfied
62 --> $DIR/issue-52443.rs:9:21
64 LL | [(); { for _ in 0usize.. {}; 0}];
65 | ^^^^^^^^ `RangeFrom<usize>` is not an iterator
67 = help: the trait `~const Iterator` is not implemented for `RangeFrom<usize>`
68 note: the trait `Iterator` is implemented for `RangeFrom<usize>`, but that implementation is not `const`
69 --> $DIR/issue-52443.rs:9:21
71 LL | [(); { for _ in 0usize.. {}; 0}];
74 error[E0015]: cannot call non-const fn `<RangeFrom<usize> as Iterator>::next` in constants
75 --> $DIR/issue-52443.rs:9:21
77 LL | [(); { for _ in 0usize.. {}; 0}];
80 = note: calls in constants are limited to constant functions, tuple structs and tuple variants
81 = help: add `#![feature(const_trait_impl)]` to the crate attributes to enable
83 error: aborting due to 7 previous errors; 1 warning emitted
85 Some errors have detailed explanations: E0015, E0277, E0308, E0658.
86 For more information about an error, try `rustc --explain E0015`.