(root)/
gcc-13.2.0/
gcc/
testsuite/
rust/
compile/
macro32.rs
macro_rules! s {
    ($s:stmt) => {{}};
}

macro_rules! multi_s {
    ($($s:stmt)+) => {{}};
}

fn main() -> i32 {
    s!(let a = 15);
    s!(;); // Empty statement
    s!(let a = 15;); // { dg-error "Failed to match any rule within macro" }
    multi_s!(let a = 15;);
    // ^ this actually gets parsed as two statements - one LetStmt and one
    // empty statement. This is the same behavior as rustc, which you can
    // see using a count!() macro

    32
}