From 1d067b88a48ae5d1afe15034db60017c2a1cd759 Mon Sep 17 00:00:00 2001 From: Vincent Lafeychine <vincent.lafeychine@proton.me> Date: Sun, 14 Apr 2024 17:16:28 +0200 Subject: [PATCH] clippy: Fix borrow_deref_ref --- rr_frontend/.cargo/config.toml | 1 - rr_frontend/translation/src/function_body.rs | 4 ++-- .../translation/src/spec_parsers/const_attr_parser.rs | 2 +- .../translation/src/spec_parsers/crate_attr_parser.rs | 2 +- .../translation/src/spec_parsers/enum_spec_parser.rs | 4 ++-- rr_frontend/translation/src/spec_parsers/mod.rs | 4 ++-- .../src/spec_parsers/module_attr_parser.rs | 2 +- .../src/spec_parsers/struct_spec_parser.rs | 4 ++-- .../src/spec_parsers/verbose_function_spec_parser.rs | 8 ++++---- rr_frontend/translation/src/utils.rs | 11 ++++------- 10 files changed, 19 insertions(+), 23 deletions(-) diff --git a/rr_frontend/.cargo/config.toml b/rr_frontend/.cargo/config.toml index 7a8fb453..6a4464a8 100644 --- a/rr_frontend/.cargo/config.toml +++ b/rr_frontend/.cargo/config.toml @@ -21,7 +21,6 @@ rustflags = [ "-Aunused_variables", # clippy::complexity - "-Aclippy::borrow_deref_ref", "-Aclippy::clone_on_copy", "-Aclippy::explicit_auto_deref", "-Aclippy::extra_unused_lifetimes", diff --git a/rr_frontend/translation/src/function_body.rs b/rr_frontend/translation/src/function_body.rs index 886056cc..3826e250 100644 --- a/rr_frontend/translation/src/function_body.rs +++ b/rr_frontend/translation/src/function_body.rs @@ -442,7 +442,7 @@ impl<'a, 'def: 'a, 'tcx: 'def> FunctionTranslator<'a, 'def, 'tcx> { // dump graphviz files // color code: red: dying loan, pink: becoming a zombie; green: is zombie if rrconfig::dump_borrowck_info() { - crate::environment::dump_borrowck_info(&*env, &proc.get_id(), &info); + crate::environment::dump_borrowck_info(env, &proc.get_id(), &info); } let (tupled_inputs, output, mut universal_lifetimes) = @@ -637,7 +637,7 @@ impl<'a, 'def: 'a, 'tcx: 'def> FunctionTranslator<'a, 'def, 'tcx> { // dump graphviz files // color code: red: dying loan, pink: becoming a zombie; green: is zombie if rrconfig::dump_borrowck_info() { - crate::environment::dump_borrowck_info(&*env, &proc.get_id(), &info); + crate::environment::dump_borrowck_info(env, &proc.get_id(), &info); } let (inputs, output, universal_lifetimes) = diff --git a/rr_frontend/translation/src/spec_parsers/const_attr_parser.rs b/rr_frontend/translation/src/spec_parsers/const_attr_parser.rs index 66f9e03b..f4924365 100644 --- a/rr_frontend/translation/src/spec_parsers/const_attr_parser.rs +++ b/rr_frontend/translation/src/spec_parsers/const_attr_parser.rs @@ -49,7 +49,7 @@ impl ConstAttrParser for VerboseConstAttrParser { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "name" => { let parsed_name: parse::LitStr = buffer.parse(&meta).map_err(str_err)?; if name.is_some() { diff --git a/rr_frontend/translation/src/spec_parsers/crate_attr_parser.rs b/rr_frontend/translation/src/spec_parsers/crate_attr_parser.rs index 561c957d..6604c43b 100644 --- a/rr_frontend/translation/src/spec_parsers/crate_attr_parser.rs +++ b/rr_frontend/translation/src/spec_parsers/crate_attr_parser.rs @@ -49,7 +49,7 @@ impl CrateAttrParser for VerboseCrateAttrParser { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "import" => { let path: parse_utils::CoqPath = buffer.parse(&meta).map_err(str_err)?; imports.push(path.into()); diff --git a/rr_frontend/translation/src/spec_parsers/enum_spec_parser.rs b/rr_frontend/translation/src/spec_parsers/enum_spec_parser.rs index 94f4572e..0780bd62 100644 --- a/rr_frontend/translation/src/spec_parsers/enum_spec_parser.rs +++ b/rr_frontend/translation/src/spec_parsers/enum_spec_parser.rs @@ -93,7 +93,7 @@ impl EnumSpecParser for VerboseEnumSpecParser { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "refined_by" => { let ty: parse::LitStr = buffer.parse(&meta).map_err(str_err)?; let (ty, _) = process_coq_literal(ty.value().as_str(), meta); @@ -116,7 +116,7 @@ impl EnumSpecParser for VerboseEnumSpecParser { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "pattern" => { let pat: EnumPattern = buffer.parse(&meta).map_err(str_err)?; pattern = Some(pat); diff --git a/rr_frontend/translation/src/spec_parsers/mod.rs b/rr_frontend/translation/src/spec_parsers/mod.rs index 97df909e..982a00b5 100644 --- a/rr_frontend/translation/src/spec_parsers/mod.rs +++ b/rr_frontend/translation/src/spec_parsers/mod.rs @@ -30,7 +30,7 @@ pub fn get_export_as_attr(attrs: &[&AttrItem]) -> Result<Vec<String>, String> { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "export_as" => { let path = RustPath::parse(&buffer, meta).map_err(parse_utils::str_err)?; return Ok(path.path); @@ -79,7 +79,7 @@ pub fn get_shim_attrs(attrs: &[&AttrItem]) -> Result<ShimAnnot, String> { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "shim" => { let annot = ShimAnnot::parse(&buffer, meta).map_err(parse_utils::str_err)?; return Ok(annot); diff --git a/rr_frontend/translation/src/spec_parsers/module_attr_parser.rs b/rr_frontend/translation/src/spec_parsers/module_attr_parser.rs index 3f4f3286..cdc277c5 100644 --- a/rr_frontend/translation/src/spec_parsers/module_attr_parser.rs +++ b/rr_frontend/translation/src/spec_parsers/module_attr_parser.rs @@ -54,7 +54,7 @@ impl ModuleAttrParser for VerboseModuleAttrParser { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "import" => { let path: parse_utils::CoqPath = buffer.parse(&meta).map_err(str_err)?; imports.push(path.into()); diff --git a/rr_frontend/translation/src/spec_parsers/struct_spec_parser.rs b/rr_frontend/translation/src/spec_parsers/struct_spec_parser.rs index c9c2c279..5ae436dc 100644 --- a/rr_frontend/translation/src/spec_parsers/struct_spec_parser.rs +++ b/rr_frontend/translation/src/spec_parsers/struct_spec_parser.rs @@ -208,7 +208,7 @@ impl InvariantSpecParser for VerboseInvariantSpecParser { if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "refined_by" => { let pat = RfnPattern::parse(&buffer, &meta).map_err(str_err)?; rfn_pat = pat.rfn_pat; @@ -400,7 +400,7 @@ where if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&args.inner_tokens()); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { "field" => { let mut expect_ty = false; if self.expect_rfn { diff --git a/rr_frontend/translation/src/spec_parsers/verbose_function_spec_parser.rs b/rr_frontend/translation/src/spec_parsers/verbose_function_spec_parser.rs index c49568fc..f2f7e0b4 100644 --- a/rr_frontend/translation/src/spec_parsers/verbose_function_spec_parser.rs +++ b/rr_frontend/translation/src/spec_parsers/verbose_function_spec_parser.rs @@ -623,7 +623,7 @@ where if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&args.inner_tokens()); - let name = &*seg.ident.name.as_str(); + let name = seg.ident.name.as_str(); match name { "capture" => { let spec: ClosureCaptureSpec = buffer.parse(&meta).map_err(str_err)?; @@ -642,7 +642,7 @@ where if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - let name = &*seg.ident.name.as_str(); + let name = seg.ident.name.as_str(); match self.handle_common_attributes(name, &buffer, builder, &lfts) { Ok(b) => { @@ -686,13 +686,13 @@ where if let Some(seg) = path_segs.get(1) { let buffer = parse::ParseBuffer::new(&it.args.inner_tokens()); - match self.handle_common_attributes(&*seg.ident.name.as_str(), &buffer, builder, &lfts) { + match self.handle_common_attributes(seg.ident.name.as_str(), &buffer, builder, &lfts) { Ok(b) => { if !b { let meta: &[specs::LiteralTyParam] = builder.get_ty_params(); let _meta: ParseMeta = (&meta, &lfts); - match &*seg.ident.name.as_str() { + match seg.ident.name.as_str() { _ => { info!("ignoring function attribute: {:?}", args); }, diff --git a/rr_frontend/translation/src/utils.rs b/rr_frontend/translation/src/utils.rs index 358a6322..ce181fb1 100644 --- a/rr_frontend/translation/src/utils.rs +++ b/rr_frontend/translation/src/utils.rs @@ -682,8 +682,7 @@ impl<'tcx> VecPlace<'tcx> { /// Any arguments of the attribute are ignored. pub fn has_tool_attr(attrs: &[ast::Attribute], name: &str) -> bool { attrs.iter().any(|attr| match &attr.kind { - ast::AttrKind::Normal(n) => { - let na: &rustc_ast::ast::NormalAttr = &(*n); + ast::AttrKind::Normal(na) => { let segments = &na.item.path.segments; segments.len() == 2 && segments[0].ident.as_str() == config::spec_hotword().as_str() @@ -706,8 +705,7 @@ pub fn has_tool_attr_filtered(attrs: &[&ast::AttrItem], name: &str) -> bool { /// Check if any attribute starting with `<tool>` is among the attributes. pub fn has_any_tool_attr(attrs: &[ast::Attribute]) -> bool { attrs.iter().any(|attr| match &attr.kind { - ast::AttrKind::Normal(n) => { - let na: &rustc_ast::ast::NormalAttr = &(*n); + ast::AttrKind::Normal(na) => { let segments = &na.item.path.segments; segments[0].ident.as_str() == config::spec_hotword().as_str() }, @@ -722,8 +720,7 @@ pub fn filter_tool_attrs(attrs: &[ast::Attribute]) -> Vec<&ast::AttrItem> { .iter() .filter_map(|attr| { match attr.kind { - ast::AttrKind::Normal(ref n) => { - let na: &rustc_ast::ast::NormalAttr = &*(n); + ast::AttrKind::Normal(ref na) => { let it = &na.item; let ref path_segs = it.path.segments; @@ -732,7 +729,7 @@ pub fn filter_tool_attrs(attrs: &[ast::Attribute]) -> Vec<&ast::AttrItem> { return None; } if let Some(seg) = path_segs.get(0) { - if (&*seg.ident.name.as_str()) == &config::spec_hotword() { Some(it) } else { None } + if seg.ident.name.as_str() == &config::spec_hotword() { Some(it) } else { None } } else { None } -- GitLab