error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:16:16 | LL | take_range(std::ops::Range { start: 0, end: 1 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `std::ops::Range` | | help: consider borrowing here: `&std::ops::Range { start: 0, end: 1 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `std::ops::Range<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:21:16 | LL | take_range(::std::ops::Range { start: 0, end: 1 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `std::ops::Range` | | help: consider borrowing here: `&::std::ops::Range { start: 0, end: 1 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `std::ops::Range<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:26:16 | LL | take_range(std::ops::RangeFrom { start: 1 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeFrom` | | help: consider borrowing here: `&std::ops::RangeFrom { start: 1 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeFrom<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:31:16 | LL | take_range(::std::ops::RangeFrom { start: 1 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeFrom` | | help: consider borrowing here: `&::std::ops::RangeFrom { start: 1 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeFrom<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:36:16 | LL | take_range(std::ops::RangeFull {}); | ---------- ^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeFull` | | help: consider borrowing here: `&std::ops::RangeFull {}` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeFull` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:41:16 | LL | take_range(::std::ops::RangeFull {}); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeFull` | | help: consider borrowing here: `&::std::ops::RangeFull {}` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeFull` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:46:16 | LL | take_range(std::ops::RangeInclusive::new(0, 1)); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeInclusive` | | help: consider borrowing here: `&std::ops::RangeInclusive::new(0, 1)` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeInclusive<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:51:16 | LL | take_range(::std::ops::RangeInclusive::new(0, 1)); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeInclusive` | | help: consider borrowing here: `&::std::ops::RangeInclusive::new(0, 1)` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeInclusive<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:56:16 | LL | take_range(std::ops::RangeTo { end: 5 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeTo` | | help: consider borrowing here: `&std::ops::RangeTo { end: 5 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeTo<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:61:16 | LL | take_range(::std::ops::RangeTo { end: 5 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeTo` | | help: consider borrowing here: `&::std::ops::RangeTo { end: 5 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeTo<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:66:16 | LL | take_range(std::ops::RangeToInclusive { end: 5 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeToInclusive` | | help: consider borrowing here: `&std::ops::RangeToInclusive { end: 5 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeToInclusive<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error[E0308]: mismatched types --> $DIR/issue-54505-no-literals.rs:71:16 | LL | take_range(::std::ops::RangeToInclusive { end: 5 }); | ---------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | | | | | expected reference, found struct `RangeToInclusive` | | help: consider borrowing here: `&::std::ops::RangeToInclusive { end: 5 }` | arguments to this function are incorrect | = note: expected reference `&_` found struct `RangeToInclusive<{integer}>` note: function defined here --> $DIR/issue-54505-no-literals.rs:12:4 | LL | fn take_range(_r: &impl RangeBounds) {} | ^^^^^^^^^^ ------------------------- error: aborting due to 12 previous errors For more information about this error, try `rustc --explain E0308`.