diff options
| author | Michael Goulet <michael@errs.io> | 2023-01-30 18:39:33 +0000 |
|---|---|---|
| committer | Michael Goulet <michael@errs.io> | 2023-02-02 05:54:35 +0000 |
| commit | 39db65c526ae3b97f0ee90642242c8c07865707e (patch) | |
| tree | adf022f4fa13610fd60e80f79c4d143e5c076e8a /tests/ui/parser | |
| parent | e4b2936983046f4128fcd3a390b401ae0cbaaacc (diff) | |
| download | rust-39db65c526ae3b97f0ee90642242c8c07865707e.tar.gz rust-39db65c526ae3b97f0ee90642242c8c07865707e.zip | |
Add a test
Diffstat (limited to 'tests/ui/parser')
| -rw-r--r-- | tests/ui/parser/anon-enums-are-ambiguous.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/ui/parser/anon-enums-are-ambiguous.rs b/tests/ui/parser/anon-enums-are-ambiguous.rs new file mode 100644 index 00000000000..b0173cf98e0 --- /dev/null +++ b/tests/ui/parser/anon-enums-are-ambiguous.rs @@ -0,0 +1,26 @@ +// 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. +} |
