From 6b9ae5404c930d43092075dec3b25b4d75a13094 Mon Sep 17 00:00:00 2001 From: Ed Page Date: Mon, 3 Jan 2022 11:31:28 -0600 Subject: [PATCH] fix(derive): Don't enit warnings We missed covering `Args` warnings when using struct variants. Fixes #3245 --- clap_derive/src/derives/args.rs | 2 +- clap_derive/src/derives/into_app.rs | 4 ++-- clap_derive/src/derives/subcommand.rs | 2 +- tests/derive/deny_warnings.rs | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/clap_derive/src/derives/args.rs b/clap_derive/src/derives/args.rs index 2db658eb160..ee14e45e2f8 100644 --- a/clap_derive/src/derives/args.rs +++ b/clap_derive/src/derives/args.rs @@ -117,7 +117,7 @@ pub fn gen_from_arg_matches_for_struct( let (impl_generics, ty_generics, where_clause) = generics.split_for_impl(); quote! { - #[allow(dead_code, unreachable_code, unused_variables)] + #[allow(dead_code, unreachable_code, unused_variables, unused_braces)] #[allow( clippy::style, clippy::complexity, diff --git a/clap_derive/src/derives/into_app.rs b/clap_derive/src/derives/into_app.rs index ba1b052242d..36eb35e29d9 100644 --- a/clap_derive/src/derives/into_app.rs +++ b/clap_derive/src/derives/into_app.rs @@ -43,7 +43,7 @@ pub fn gen_for_struct( let (impl_generics, ty_generics, where_clause) = generics.split_for_impl(); let tokens = quote! { - #[allow(dead_code, unreachable_code, unused_variables)] + #[allow(dead_code, unreachable_code, unused_variables, unused_braces)] #[allow( clippy::style, clippy::complexity, @@ -88,7 +88,7 @@ pub fn gen_for_enum(enum_name: &Ident, generics: &Generics, attrs: &[Attribute]) let (impl_generics, ty_generics, where_clause) = generics.split_for_impl(); quote! { - #[allow(dead_code, unreachable_code, unused_variables)] + #[allow(dead_code, unreachable_code, unused_variables, unused_braces)] #[allow( clippy::style, clippy::complexity, diff --git a/clap_derive/src/derives/subcommand.rs b/clap_derive/src/derives/subcommand.rs index 5952ef9c655..d73aa930721 100644 --- a/clap_derive/src/derives/subcommand.rs +++ b/clap_derive/src/derives/subcommand.rs @@ -61,7 +61,7 @@ pub fn gen_for_enum( quote! { #from_arg_matches - #[allow(dead_code, unreachable_code, unused_variables)] + #[allow(dead_code, unreachable_code, unused_variables, unused_braces)] #[allow( clippy::style, clippy::complexity, diff --git a/tests/derive/deny_warnings.rs b/tests/derive/deny_warnings.rs index 2b5b038e61d..ce970811844 100644 --- a/tests/derive/deny_warnings.rs +++ b/tests/derive/deny_warnings.rs @@ -24,7 +24,7 @@ fn try_str(s: &str) -> Result { fn warning_never_struct() { #[derive(Parser, Debug, PartialEq)] struct Opt { - #[clap(parse(try_from_str = try_str))] + #[clap(parse(try_from_str = try_str), default_value_t)] s: String, } assert_eq!( @@ -40,7 +40,7 @@ fn warning_never_enum() { #[derive(Parser, Debug, PartialEq)] enum Opt { Foo { - #[clap(parse(try_from_str = try_str))] + #[clap(parse(try_from_str = try_str), default_value_t)] s: String, }, }