macro_rules! pat { () => { Some(_) } } fn main() { match Some(false) { Some(_) //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern } match Some(false) { Some(_) _ => {} //~^ ERROR expected one of } match Some(false) { Some(_), //~^ ERROR unexpected `,` in pattern //~| HELP try adding parentheses to match on a tuple //~| HELP or a vertical bar to match on multiple alternatives } match Some(false) { Some(_), //~^ ERROR unexpected `,` in pattern //~| HELP try adding parentheses to match on a tuple //~| HELP or a vertical bar to match on multiple alternatives _ => {} } match Some(false) { Some(_) if true //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern } match Some(false) { Some(_) if true _ => {} //~^ ERROR expected one of } match Some(false) { Some(_) if true, //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern } match Some(false) { Some(_) if true, //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern _ => {} } match Some(false) { pat!() //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern } match Some(false) { pat!(), //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern } match Some(false) { pat!() if true, //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern } match Some(false) { pat!() //~^ ERROR expected `,` following `match` arm //~| HELP missing a comma here _ => {} } match Some(false) { pat!(), //~^ ERROR `match` arm with no body //~| HELP add a body after the pattern _ => {} } }