Auto merge of #54581 - petrochenkov:cfgattr, r=alexcrichton
Accept trailing comma in `cfg_attr` Fixes https://github.com/rust-lang/rust/issues/54463 (stable-to-beta regression)
This commit is contained in:
commit
e999ebdb97
@ -90,6 +90,7 @@ impl<'a> StripUnconfigured<'a> {
|
||||
parser.expect(&token::Comma)?;
|
||||
let lo = parser.span.lo();
|
||||
let (path, tokens) = parser.parse_meta_item_unrestricted()?;
|
||||
parser.eat(&token::Comma); // Optional trailing comma
|
||||
parser.expect(&token::CloseDelim(token::Paren))?;
|
||||
Ok((cfg, path, tokens, parser.prev_span.with_lo(lo)))
|
||||
}) {
|
||||
|
13
src/test/ui/cfg-attr-trailing-comma.rs
Normal file
13
src/test/ui/cfg-attr-trailing-comma.rs
Normal file
@ -0,0 +1,13 @@
|
||||
// compile-flags: --cfg TRUE
|
||||
|
||||
#[cfg_attr(TRUE, inline,)] // OK
|
||||
fn f() {}
|
||||
|
||||
#[cfg_attr(FALSE, inline,)] // OK
|
||||
fn g() {}
|
||||
|
||||
#[cfg_attr(TRUE, inline,,)] //~ ERROR expected `)`, found `,`
|
||||
fn h() {}
|
||||
|
||||
#[cfg_attr(FALSE, inline,,)] //~ ERROR expected `)`, found `,`
|
||||
fn i() {}
|
14
src/test/ui/cfg-attr-trailing-comma.stderr
Normal file
14
src/test/ui/cfg-attr-trailing-comma.stderr
Normal file
@ -0,0 +1,14 @@
|
||||
error: expected `)`, found `,`
|
||||
--> $DIR/cfg-attr-trailing-comma.rs:9:25
|
||||
|
|
||||
LL | #[cfg_attr(TRUE, inline,,)] //~ ERROR expected `)`, found `,`
|
||||
| ^ expected `)`
|
||||
|
||||
error: expected `)`, found `,`
|
||||
--> $DIR/cfg-attr-trailing-comma.rs:12:26
|
||||
|
|
||||
LL | #[cfg_attr(FALSE, inline,,)] //~ ERROR expected `)`, found `,`
|
||||
| ^ expected `)`
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
Loading…
x
Reference in New Issue
Block a user