about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAda Alakbarova <ada.alakbarova@proton.me>2025-08-21 23:48:09 +0200
committerAda Alakbarova <ada.alakbarova@proton.me>2025-08-22 15:03:15 +0200
commit79a95eee88fd17cea24a8ee9835baf3873b18fac (patch)
tree3280bc975fbb2f525c5cc2635cc6633479a6ebcc
parent877967959ae8da9814df4f2614971f4d784bf53f (diff)
downloadrust-79a95eee88fd17cea24a8ee9835baf3873b18fac.tar.gz
rust-79a95eee88fd17cea24a8ee9835baf3873b18fac.zip
use `option_arg_ty`
-rw-r--r--clippy_lints/src/matches/try_err.rs6
1 files changed, 2 insertions, 4 deletions
diff --git a/clippy_lints/src/matches/try_err.rs b/clippy_lints/src/matches/try_err.rs
index ff7769af1df..c133ed08424 100644
--- a/clippy_lints/src/matches/try_err.rs
+++ b/clippy_lints/src/matches/try_err.rs
@@ -1,6 +1,6 @@
 use clippy_utils::diagnostics::span_lint_and_then;
 use clippy_utils::source::snippet_with_applicability;
-use clippy_utils::ty::is_type_diagnostic_item;
+use clippy_utils::ty::{is_type_diagnostic_item, option_arg_ty};
 use clippy_utils::{get_parent_expr, is_res_lang_ctor, path_res};
 use rustc_errors::Applicability;
 use rustc_hir::LangItem::ResultErr;
@@ -116,9 +116,7 @@ fn poll_option_result_error_type<'tcx>(cx: &LateContext<'tcx>, ty: Ty<'tcx>) ->
     if let ty::Adt(def, subst) = ty.kind()
         && cx.tcx.lang_items().get(LangItem::Poll) == Some(def.did())
         && let ready_ty = subst.type_at(0)
-        && let ty::Adt(ready_def, ready_subst) = ready_ty.kind()
-        && cx.tcx.is_diagnostic_item(sym::Option, ready_def.did())
-        && let some_ty = ready_subst.type_at(0)
+        && let Some(some_ty) = option_arg_ty(cx, ready_ty)
         && let ty::Adt(some_def, some_subst) = some_ty.kind()
         && cx.tcx.is_diagnostic_item(sym::Result, some_def.did())
     {