rust/tests/ui/hygiene/macro-metavars-transparent.rs

25 lines
383 B
Rust

// Ensure macro metavariables are not compared without removing transparent
// marks.
#![feature(rustc_attrs)]
//@ run-pass
#[rustc_macro_transparency = "transparent"]
macro_rules! k {
($($s:tt)*) => {
macro_rules! m {
($y:tt) => {
$($s)*
}
}
}
}
k!(1 + $y);
fn main() {
let x = 2;
assert_eq!(3, m!(x));
}