mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-29 05:15:04 +00:00

The only patterns we should parse are `..` in structs and `_`: the rest are either not supported or already valid expressions.
32 lines
541 B
Rust
32 lines
541 B
Rust
fn main() {
|
|
enum Test {
|
|
Var1,
|
|
Var2(String),
|
|
Var3 {
|
|
abc: {}, //~ ERROR: expected type, found `{`
|
|
},
|
|
}
|
|
|
|
// recover...
|
|
let a = 1;
|
|
enum Test2 {
|
|
Fine,
|
|
}
|
|
|
|
enum Test3 {
|
|
StillFine {
|
|
def: i32,
|
|
},
|
|
}
|
|
|
|
{
|
|
// fail again
|
|
enum Test4 {
|
|
Nope(i32 {}) //~ ERROR: found `{`
|
|
//~^ ERROR: found `{`
|
|
}
|
|
}
|
|
// still recover later
|
|
let; //~ ERROR: expected pattern
|
|
let _ = 0;
|
|
}
|