Skip to content

Commit

Permalink
Merge pull request #1218 from dtolnay/variadiccomma
Browse files Browse the repository at this point in the history
Fix printing of variadic extern fn with trailing comma
  • Loading branch information
dtolnay committed Sep 19, 2022
2 parents 42e9942 + 9b589ba commit 308d77b
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 14 deletions.
14 changes: 3 additions & 11 deletions src/item.rs
Expand Up @@ -2765,7 +2765,6 @@ mod printing {
use super::*;
use crate::attr::FilterAttrs;
use crate::print::TokensOrDefault;
use crate::punctuated::Pair;
use proc_macro2::TokenStream;
use quote::{ToTokens, TokenStreamExt};

Expand Down Expand Up @@ -3283,16 +3282,9 @@ mod printing {
self.generics.to_tokens(tokens);
self.paren_token.surround(tokens, |tokens| {
let mut last_is_variadic = false;
for input in self.inputs.pairs() {
match input {
Pair::Punctuated(input, comma) => {
maybe_variadic_to_tokens(input, tokens);
comma.to_tokens(tokens);
}
Pair::End(input) => {
last_is_variadic = maybe_variadic_to_tokens(input, tokens);
}
}
for pair in self.inputs.pairs() {
last_is_variadic = maybe_variadic_to_tokens(pair.value(), tokens);
pair.punct().to_tokens(tokens);
}
if self.variadic.is_some() && !last_is_variadic {
if !self.inputs.empty_or_trailing() {
Expand Down
3 changes: 0 additions & 3 deletions tests/repo/mod.rs
Expand Up @@ -14,9 +14,6 @@ const REVISION: &str = "98ad6a5519651af36e246c0335c964dd52c554ba";

#[rustfmt::skip]
static EXCLUDE_FILES: &[&str] = &[
// TODO: trailing comma after variadic in extern fn signature
"src/tools/rust-analyzer/crates/parser/test_data/parser/ok/0063_variadic_fun.rs",

// TODO: impl ~const T {}
// https://github.com/dtolnay/syn/issues/1051
"src/test/ui/rfc-2632-const-trait-impl/syntax.rs",
Expand Down

0 comments on commit 308d77b

Please sign in to comment.