]> git.lizzy.rs Git - rust.git/blobdiff - src/test/ui/never_type/issue-52443.stderr
Rollup merge of #102088 - oli-obk:cleanups, r=bjorn3
[rust.git] / src / test / ui / never_type / issue-52443.stderr
index 4a89d4f6d37ce94af0d369de0cb2593cc35f51c1..3c0daa4c55f017b39ece743b5d2e666600688ac0 100644 (file)
@@ -38,25 +38,37 @@ LL |     [(); loop { break }];
    |                 expected `usize`, found `()`
    |                 help: give it a value of the expected type: `break 42`
 
-error[E0277]: the trait bound `RangeFrom<usize>: Iterator` is not satisfied
+error[E0015]: cannot convert `RangeFrom<usize>` into an iterator in constants
   --> $DIR/issue-52443.rs:9:21
    |
 LL |     [(); { for _ in 0usize.. {}; 0}];
-   |                     ^^^^^^^^ `RangeFrom<usize>` is not an iterator
+   |                     ^^^^^^^^
+   |
+note: impl defined here, but it is not `const`
+  --> $SRC_DIR/core/src/iter/traits/collect.rs:LL:COL
+   |
+LL | impl<I: ~const Iterator> const IntoIterator for I {
+   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   = note: calls in constants are limited to constant functions, tuple structs and tuple variants
+
+error[E0658]: mutable references are not allowed in constants
+  --> $DIR/issue-52443.rs:9:21
    |
-   = help: the trait `~const Iterator` is not implemented for `RangeFrom<usize>`
-note: the trait `Iterator` is implemented for `RangeFrom<usize>`, but that implementation is not `const`
+LL |     [(); { for _ in 0usize.. {}; 0}];
+   |                     ^^^^^^^^
+   |
+   = note: see issue #57349 <https://github.com/rust-lang/rust/issues/57349> for more information
+   = help: add `#![feature(const_mut_refs)]` to the crate attributes to enable
+
+error[E0015]: cannot call non-const fn `<RangeFrom<usize> as Iterator>::next` in constants
   --> $DIR/issue-52443.rs:9:21
    |
 LL |     [(); { for _ in 0usize.. {}; 0}];
    |                     ^^^^^^^^
-   = note: required for `RangeFrom<usize>` to implement `~const IntoIterator`
-help: consider introducing a `where` clause, but there might be an alternative better way to express this requirement
    |
-LL | fn main() where RangeFrom<usize>: ~const Iterator {
-   |           +++++++++++++++++++++++++++++++++++++++
+   = note: calls in constants are limited to constant functions, tuple structs and tuple variants
 
-error: aborting due to 4 previous errors; 1 warning emitted
+error: aborting due to 6 previous errors; 1 warning emitted
 
-Some errors have detailed explanations: E0277, E0308, E0658.
-For more information about an error, try `rustc --explain E0277`.
+Some errors have detailed explanations: E0015, E0308, E0658.
+For more information about an error, try `rustc --explain E0015`.