7060: Fix mbe fail to pass expr with attr r=edwin0cheng a=edwin0cheng
bors r+
Fixes #5896
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
r#"
macro_rules! a {
($e:expr; $($t:tt)*) => {
- b!($($t)*);
+ b!(static = (); $($t)*);
};
() => {};
}
() => {};
}
-b! { static = #[] (); }
+b! { static = #[] ();}
"#,
expect![[r#"
crate
);
}
+#[test]
+fn test_expr_with_attr() {
+ parse_macro(
+ r#"
+macro_rules! m {
+ ($a:expr) => {0}
+}
+"#,
+ )
+ .assert_expand_items("m!(#[allow(a)]())", "0");
+}
+
#[test]
fn test_ty() {
parse_macro(
};
pub(crate) fn expr(p: &mut Parser) {
- let _ = expressions::expr(p);
+ let _ = expressions::expr_with_attrs(p);
}
pub(crate) fn stmt(p: &mut Parser) {