//@ check-pass | |
macro_rules! test_expr { | |
($expr:expr) => {}; | |
} | |
macro_rules! test_ty { | |
($a:ty | $b:ty) => {}; | |
} | |
fn main() { | |
test_expr!(a as fn() -> B | C); | |
// Do not break the `|` operator. | |
test_expr!(|_: fn() -> B| C | D); | |
// Do not break `-> Ret` in closure args. | |
test_ty!(A | B); | |
// We can't support anon enums in arbitrary positions. | |
test_ty!(fn() -> A | B); | |
// Don't break fn ptrs. | |
test_ty!(impl Fn() -> A | B); | |
// Don't break parenthesized generics. | |
} |