mirror of https://github.com/rust-lang/rust.git
44 lines
1.3 KiB
Rust
44 lines
1.3 KiB
Rust
mod foo {
|
|
pub const b: u8 = 2;
|
|
//~^ missing patterns are not covered because `b` is interpreted as a constant pattern, not a new variable
|
|
pub const d: (u8, u8) = (2, 1);
|
|
//~^ missing patterns are not covered because `d` is interpreted as a constant pattern, not a new variable
|
|
}
|
|
|
|
use foo::b as c;
|
|
use foo::d;
|
|
|
|
const a: u8 = 2;
|
|
//~^ missing patterns are not covered because `a` is interpreted as a constant pattern, not a new variable
|
|
|
|
#[derive(PartialEq)]
|
|
struct S {
|
|
foo: u8,
|
|
}
|
|
|
|
const e: S = S {
|
|
foo: 0,
|
|
};
|
|
|
|
fn main() {
|
|
let a = 4;
|
|
//~^ ERROR refutable pattern in local binding
|
|
//~| patterns `0_u8..=1_u8` and `3_u8..=u8::MAX` not covered
|
|
//~| HELP introduce a variable instead
|
|
let c = 4;
|
|
//~^ ERROR refutable pattern in local binding
|
|
//~| patterns `0_u8..=1_u8` and `3_u8..=u8::MAX` not covered
|
|
//~| HELP introduce a variable instead
|
|
let d = (4, 4);
|
|
//~^ ERROR refutable pattern in local binding
|
|
//~| patterns `(0_u8..=1_u8, _)` and `(3_u8..=u8::MAX, _)` not covered
|
|
//~| HELP introduce a variable instead
|
|
let e = S {
|
|
//~^ ERROR refutable pattern in local binding
|
|
//~| pattern `S { foo: 1_u8..=u8::MAX }` not covered
|
|
//~| HELP introduce a variable instead
|
|
foo: 1,
|
|
};
|
|
fn f() {} // Check that the `NOTE`s still work with an item here (cf. issue #35115).
|
|
}
|