ffea65bf61
This includes a `From<legacy::RangeInclusive> for RangeInclusive` impl for convenience, instead of the `TryFrom` impl from the RFC. Having `From` is highly convenient and the assertion is unlikely to be a problem in practice. This includes re-exports of all existing `Range` types under `core::range`, plus the range-related traits (`RangeBounds`, `Step`, `OneSidedRange`) and the `Bound` enum. Currently the iterators are just wrappers around the old range types, and most other trait impls delegate to the old rage types as well. Also includes an `.iter()` shorthand for `.clone().into_iter()`
124 lines
3.5 KiB
Plaintext
124 lines
3.5 KiB
Plaintext
error[E0308]: mismatched types
|
|
--> $DIR/issue-54505-no-std.rs:29:16
|
|
|
|
|
LL | take_range(0..1);
|
|
| ---------- ^^^^ expected `&_`, found `Range<{integer}>`
|
|
| |
|
|
| arguments to this function are incorrect
|
|
|
|
|
= note: expected reference `&_`
|
|
found struct `core::ops::Range<{integer}>`
|
|
note: function defined here
|
|
--> $DIR/issue-54505-no-std.rs:25:4
|
|
|
|
|
LL | fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
| ^^^^^^^^^^ -------------------------
|
|
help: consider borrowing here
|
|
|
|
|
LL | take_range(&(0..1));
|
|
| ++ +
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-54505-no-std.rs:34:16
|
|
|
|
|
LL | take_range(1..);
|
|
| ---------- ^^^ expected `&_`, found `RangeFrom<{integer}>`
|
|
| |
|
|
| arguments to this function are incorrect
|
|
|
|
|
= note: expected reference `&_`
|
|
found struct `core::ops::RangeFrom<{integer}>`
|
|
note: function defined here
|
|
--> $DIR/issue-54505-no-std.rs:25:4
|
|
|
|
|
LL | fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
| ^^^^^^^^^^ -------------------------
|
|
help: consider borrowing here
|
|
|
|
|
LL | take_range(&(1..));
|
|
| ++ +
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-54505-no-std.rs:39:16
|
|
|
|
|
LL | take_range(..);
|
|
| ---------- ^^ expected `&_`, found `RangeFull`
|
|
| |
|
|
| arguments to this function are incorrect
|
|
|
|
|
= note: expected reference `&_`
|
|
found struct `RangeFull`
|
|
note: function defined here
|
|
--> $DIR/issue-54505-no-std.rs:25:4
|
|
|
|
|
LL | fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
| ^^^^^^^^^^ -------------------------
|
|
help: consider borrowing here
|
|
|
|
|
LL | take_range(&(..));
|
|
| ++ +
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-54505-no-std.rs:44:16
|
|
|
|
|
LL | take_range(0..=1);
|
|
| ---------- ^^^^^ expected `&_`, found `RangeInclusive<{integer}>`
|
|
| |
|
|
| arguments to this function are incorrect
|
|
|
|
|
= note: expected reference `&_`
|
|
found struct `core::ops::RangeInclusive<{integer}>`
|
|
note: function defined here
|
|
--> $DIR/issue-54505-no-std.rs:25:4
|
|
|
|
|
LL | fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
| ^^^^^^^^^^ -------------------------
|
|
help: consider borrowing here
|
|
|
|
|
LL | take_range(&(0..=1));
|
|
| ++ +
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-54505-no-std.rs:49:16
|
|
|
|
|
LL | take_range(..5);
|
|
| ---------- ^^^ expected `&_`, found `RangeTo<{integer}>`
|
|
| |
|
|
| arguments to this function are incorrect
|
|
|
|
|
= note: expected reference `&_`
|
|
found struct `RangeTo<{integer}>`
|
|
note: function defined here
|
|
--> $DIR/issue-54505-no-std.rs:25:4
|
|
|
|
|
LL | fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
| ^^^^^^^^^^ -------------------------
|
|
help: consider borrowing here
|
|
|
|
|
LL | take_range(&(..5));
|
|
| ++ +
|
|
|
|
error[E0308]: mismatched types
|
|
--> $DIR/issue-54505-no-std.rs:54:16
|
|
|
|
|
LL | take_range(..=42);
|
|
| ---------- ^^^^^ expected `&_`, found `RangeToInclusive<{integer}>`
|
|
| |
|
|
| arguments to this function are incorrect
|
|
|
|
|
= note: expected reference `&_`
|
|
found struct `RangeToInclusive<{integer}>`
|
|
note: function defined here
|
|
--> $DIR/issue-54505-no-std.rs:25:4
|
|
|
|
|
LL | fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
| ^^^^^^^^^^ -------------------------
|
|
help: consider borrowing here
|
|
|
|
|
LL | take_range(&(..=42));
|
|
| ++ +
|
|
|
|
error: aborting due to 6 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0308`.
|