From cefbf4d7b57975a7d0e247e2bf3effaf4ec47333 Mon Sep 17 00:00:00 2001 From: Robert Bartlensky Date: Thu, 1 Aug 2019 21:07:47 +0100 Subject: [PATCH 1/2] Allow trailing comma in macro 2.0 declarations. --- src/libsyntax/ext/tt/macro_rules.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libsyntax/ext/tt/macro_rules.rs b/src/libsyntax/ext/tt/macro_rules.rs index 2a2df76d30c1d..81c5ef135b245 100644 --- a/src/libsyntax/ext/tt/macro_rules.rs +++ b/src/libsyntax/ext/tt/macro_rules.rs @@ -282,7 +282,10 @@ pub fn compile( quoted::TokenTree::Sequence( DelimSpan::dummy(), Lrc::new(quoted::SequenceRepetition { - tts: vec![quoted::TokenTree::token(token::Semi, def.span)], + tts: vec![quoted::TokenTree::token( + if body.legacy { token::Semi } else { token::Comma }, + def.span, + )], separator: None, kleene: quoted::KleeneToken::new(quoted::KleeneOp::ZeroOrMore, def.span), num_captures: 0, From 2aa368aa0e152435da7f8a7a51d005c50965c860 Mon Sep 17 00:00:00 2001 From: Robert Bartlensky Date: Thu, 1 Aug 2019 22:41:10 +0100 Subject: [PATCH 2/2] Add check-pass test for #63102. --- src/test/ui/macros/issue-63102.rs | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 src/test/ui/macros/issue-63102.rs diff --git a/src/test/ui/macros/issue-63102.rs b/src/test/ui/macros/issue-63102.rs new file mode 100644 index 0000000000000..6af5b18680640 --- /dev/null +++ b/src/test/ui/macros/issue-63102.rs @@ -0,0 +1,8 @@ +// check-pass + +#![feature(decl_macro)] +macro foo { + () => {}, +} + +fn main() {}