2018-10-01 17:23:57 -05:00
|
|
|
// error-pattern: `#[panic_handler]` function required, but not found
|
2018-09-29 09:13:08 -05:00
|
|
|
|
|
|
|
// Regression test for #54505 - range borrowing suggestion had
|
|
|
|
// incorrect syntax (missing parentheses).
|
|
|
|
|
|
|
|
// This test doesn't use std
|
|
|
|
// (so all Ranges resolve to core::ops::Range...)
|
|
|
|
|
|
|
|
#![no_std]
|
2018-10-08 11:39:09 -05:00
|
|
|
#![feature(lang_items)]
|
2018-09-29 09:13:08 -05:00
|
|
|
|
|
|
|
use core::ops::RangeBounds;
|
|
|
|
|
2018-10-08 11:39:09 -05:00
|
|
|
#[cfg(not(target_arch = "wasm32"))]
|
|
|
|
#[lang = "eh_personality"]
|
|
|
|
extern fn eh_personality() {}
|
|
|
|
|
2018-09-29 09:13:08 -05:00
|
|
|
|
|
|
|
// take a reference to any built-in range
|
|
|
|
fn take_range(_r: &impl RangeBounds<i8>) {}
|
|
|
|
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
take_range(0..1);
|
|
|
|
//~^ ERROR mismatched types [E0308]
|
|
|
|
//~| HELP consider borrowing here
|
|
|
|
//~| SUGGESTION &(0..1)
|
|
|
|
|
|
|
|
take_range(1..);
|
|
|
|
//~^ ERROR mismatched types [E0308]
|
|
|
|
//~| HELP consider borrowing here
|
|
|
|
//~| SUGGESTION &(1..)
|
|
|
|
|
|
|
|
take_range(..);
|
|
|
|
//~^ ERROR mismatched types [E0308]
|
|
|
|
//~| HELP consider borrowing here
|
|
|
|
//~| SUGGESTION &(..)
|
|
|
|
|
|
|
|
take_range(0..=1);
|
|
|
|
//~^ ERROR mismatched types [E0308]
|
|
|
|
//~| HELP consider borrowing here
|
|
|
|
//~| SUGGESTION &(0..=1)
|
|
|
|
|
|
|
|
take_range(..5);
|
|
|
|
//~^ ERROR mismatched types [E0308]
|
|
|
|
//~| HELP consider borrowing here
|
|
|
|
//~| SUGGESTION &(..5)
|
|
|
|
|
|
|
|
take_range(..=42);
|
|
|
|
//~^ ERROR mismatched types [E0308]
|
|
|
|
//~| HELP consider borrowing here
|
|
|
|
//~| SUGGESTION &(..=42)
|
|
|
|
}
|