From ea7de0d48530b34cf7f8ae18435e68463e57c6b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Esteban=20K=C3=BCber?= Date: Fri, 23 Dec 2022 16:40:22 -0800 Subject: [PATCH] Do not use `hir_ty_to_ty` --- Cargo.lock | 1 - compiler/rustc_borrowck/Cargo.toml | 1 - .../rustc_borrowck/src/diagnostics/mod.rs | 25 ++++++++----------- 3 files changed, 10 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6de8ba0f8e6..5d05a09f038 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3447,7 +3447,6 @@ dependencies = [ "rustc_errors", "rustc_graphviz", "rustc_hir", - "rustc_hir_analysis", "rustc_index", "rustc_infer", "rustc_lexer", diff --git a/compiler/rustc_borrowck/Cargo.toml b/compiler/rustc_borrowck/Cargo.toml index f5001172754..87c113f3e30 100644 --- a/compiler/rustc_borrowck/Cargo.toml +++ b/compiler/rustc_borrowck/Cargo.toml @@ -15,7 +15,6 @@ rustc_data_structures = { path = "../rustc_data_structures" } rustc_errors = { path = "../rustc_errors" } rustc_graphviz = { path = "../rustc_graphviz" } rustc_hir = { path = "../rustc_hir" } -rustc_hir_analysis = { path = "../rustc_hir_analysis" } rustc_index = { path = "../rustc_index" } rustc_infer = { path = "../rustc_infer" } rustc_lexer = { path = "../rustc_lexer" } diff --git a/compiler/rustc_borrowck/src/diagnostics/mod.rs b/compiler/rustc_borrowck/src/diagnostics/mod.rs index 762188b73b3..989fbb066f7 100644 --- a/compiler/rustc_borrowck/src/diagnostics/mod.rs +++ b/compiler/rustc_borrowck/src/diagnostics/mod.rs @@ -6,7 +6,6 @@ use rustc_errors::{Applicability, Diagnostic}; use rustc_hir as hir; use rustc_hir::def::{CtorKind, Namespace}; use rustc_hir::GeneratorKind; -use rustc_hir_analysis::hir_ty_to_ty; use rustc_infer::infer::TyCtxtInferExt; use rustc_middle::mir::tcx::PlaceTy; use rustc_middle::mir::{ @@ -1137,7 +1136,7 @@ impl<'cx, 'tcx> MirBorrowckCtxt<'cx, 'tcx> { && Some(def.did()) == self.infcx.tcx.lang_items().pin_type() && let ty::Ref(_, _, hir::Mutability::Mut) = substs.type_at(0).kind() // FIXME: this is a hack because we can't call `can_eq` - && ty.to_string() == + && ty.to_string() == tcx.fn_sig(method_did).input(0).skip_binder().to_string() { err.span_suggestion_verbose( @@ -1155,22 +1154,18 @@ impl<'cx, 'tcx> MirBorrowckCtxt<'cx, 'tcx> { if let Some(def_id) = impl_def_id.as_local() && let hir_id = tcx.hir().local_def_id_to_hir_id(def_id) && let hir::Node::Item(hir::Item { - kind: hir::ItemKind::Impl(hir::Impl { - self_ty, - .. - }), + kind: hir::ItemKind::Impl(_), .. }) = tcx.hir().get(hir_id) + && tcx.type_of(impl_def_id) == ty { - if ty == hir_ty_to_ty(tcx, self_ty) { - err.span_suggestion_verbose( - fn_call_span.shrink_to_lo(), - "you can `clone` the value and consume it, but this \ - might not be your desired behavior", - "clone().".to_string(), - Applicability::MaybeIncorrect, - ); - } + err.span_suggestion_verbose( + fn_call_span.shrink_to_lo(), + "you can `clone` the value and consume it, but this might \ + not be your desired behavior", + "clone().".to_string(), + Applicability::MaybeIncorrect, + ); } } }