diff --git a/clippy_dev/src/new_lint.rs b/clippy_dev/src/new_lint.rs index b6f3e42f31e4..6c9594072c9b 100644 --- a/clippy_dev/src/new_lint.rs +++ b/clippy_dev/src/new_lint.rs @@ -284,7 +284,7 @@ fn get_lint_file_contents(lint: &LintData<'_>, enable_msrv: bool) -> String { use clippy_utils::msrvs::{{self, {msrv_ty}}}; {pass_import} use rustc_lint::{{{context_import}, {pass_type}}}; - use rustc_session::impl_lint_pass; + use rustc_lint::impl_lint_pass; " ); @@ -294,7 +294,7 @@ fn get_lint_file_contents(lint: &LintData<'_>, enable_msrv: bool) -> String { r" {pass_import} use rustc_lint::{{{context_import}, {pass_type}}}; - use rustc_session::declare_lint_pass; + use rustc_lint::declare_lint_pass; " ); diff --git a/clippy_lints/src/absolute_paths.rs b/clippy_lints/src/absolute_paths.rs index 548668dcf648..409d98c6398d 100644 --- a/clippy_lints/src/absolute_paths.rs +++ b/clippy_lints/src/absolute_paths.rs @@ -5,8 +5,7 @@ use rustc_data_structures::fx::FxHashSet; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::{CRATE_DEF_INDEX, DefId}; use rustc_hir::{HirId, ItemKind, Node, Path}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Symbol; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/almost_complete_range.rs b/clippy_lints/src/almost_complete_range.rs index 20e58ae1e18a..4f12402e8760 100644 --- a/clippy_lints/src/almost_complete_range.rs +++ b/clippy_lints/src/almost_complete_range.rs @@ -4,8 +4,7 @@ use clippy_utils::msrvs::{self, MsrvStack}; use clippy_utils::source::{trim_span, walk_span_to_context}; use rustc_ast::ast::{Expr, ExprKind, LitKind, Pat, PatKind, RangeEnd, RangeLimits}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/approx_const.rs b/clippy_lints/src/approx_const.rs index 24f7d1e7ab7f..ee211d56ccca 100644 --- a/clippy_lints/src/approx_const.rs +++ b/clippy_lints/src/approx_const.rs @@ -4,8 +4,7 @@ use clippy_utils::msrvs::{self, Msrv}; use rustc_ast::ast::{FloatTy, LitFloatType, LitKind}; use rustc_hir::attrs::RustcVersion; use rustc_hir::{HirId, Lit}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Span, symbol}; use std::f64::consts as f64; diff --git a/clippy_lints/src/arbitrary_source_item_ordering.rs b/clippy_lints/src/arbitrary_source_item_ordering.rs index ca3a923aac5d..73b63697d844 100644 --- a/clippy_lints/src/arbitrary_source_item_ordering.rs +++ b/clippy_lints/src/arbitrary_source_item_ordering.rs @@ -11,9 +11,8 @@ use rustc_hir::{ Attribute, FieldDef, HirId, ImplItemId, IsAuto, Item, ItemKind, Mod, OwnerId, QPath, TraitItemId, TyKind, Variant, VariantData, }; -use rustc_lint::{LateContext, LateLintPass, LintContext}; +use rustc_lint::{LateContext, LateLintPass, LintContext, impl_lint_pass}; use rustc_middle::ty::{AssocKind, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::{Ident, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/arc_with_non_send_sync.rs b/clippy_lints/src/arc_with_non_send_sync.rs index 0c790a534383..3b3ef0b0bb33 100644 --- a/clippy_lints/src/arc_with_non_send_sync.rs +++ b/clippy_lints/src/arc_with_non_send_sync.rs @@ -3,11 +3,10 @@ use clippy_utils::is_from_proc_macro; use clippy_utils::res::MaybeDef as _; use clippy_utils::ty::implements_trait; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; use rustc_middle::ty::GenericArgKind; use rustc_middle::ty::print::with_forced_trimmed_paths; -use rustc_session::declare_lint_pass; use rustc_span::symbol::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/as_conversions.rs b/clippy_lints/src/as_conversions.rs index f273a3d948c9..ca22c354306a 100644 --- a/clippy_lints/src/as_conversions.rs +++ b/clippy_lints/src/as_conversions.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::is_from_proc_macro; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/asm_syntax.rs b/clippy_lints/src/asm_syntax.rs index db59221b78b6..169fc00fb4a9 100644 --- a/clippy_lints/src/asm_syntax.rs +++ b/clippy_lints/src/asm_syntax.rs @@ -3,8 +3,7 @@ use std::fmt; use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::ast::{Expr, ExprKind, InlineAsmOptions}; use rustc_ast::{InlineAsm, Item, ItemKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, Lint, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, Lint, LintContext as _, declare_lint_pass}; use rustc_span::Span; use rustc_target::asm::InlineAsmArch; diff --git a/clippy_lints/src/assert_is_empty.rs b/clippy_lints/src/assert_is_empty.rs index e9d07e04dfeb..5a00d9149c91 100644 --- a/clippy_lints/src/assert_is_empty.rs +++ b/clippy_lints/src/assert_is_empty.rs @@ -8,9 +8,8 @@ use clippy_utils::ty::implements_trait; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/assertions_on_constants.rs b/clippy_lints/src/assertions_on_constants.rs index 3f7aa4c9225c..4d7006bee4c1 100644 --- a/clippy_lints/src/assertions_on_constants.rs +++ b/clippy_lints/src/assertions_on_constants.rs @@ -7,8 +7,7 @@ use clippy_utils::visitors::is_const_evaluatable; use clippy_utils::{is_inside_always_const_context, msrvs}; use rustc_ast::LitKind; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/assertions_on_result_states.rs b/clippy_lints/src/assertions_on_result_states.rs index d37e84a4b011..66c01f9b7bee 100644 --- a/clippy_lints/src/assertions_on_result_states.rs +++ b/clippy_lints/src/assertions_on_result_states.rs @@ -8,9 +8,8 @@ use clippy_utils::usage::local_used_after_expr; use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::{Expr, ExprKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/assigning_clones.rs b/clippy_lints/src/assigning_clones.rs index 0b2aec2d21a1..290738514b69 100644 --- a/clippy_lints/src/assigning_clones.rs +++ b/clippy_lints/src/assigning_clones.rs @@ -7,10 +7,9 @@ use clippy_utils::sugg::Sugg; use clippy_utils::{is_in_test, last_path_segment, local_is_initialized, sym}; use rustc_errors::Applicability; use rustc_hir::{self as hir, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::mir; use rustc_middle::ty::{self, Instance, Mutability}; -use rustc_session::impl_lint_pass; use rustc_span::{Span, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/async_yields_async.rs b/clippy_lints/src/async_yields_async.rs index 1a10db291cde..c13818363640 100644 --- a/clippy_lints/src/async_yields_async.rs +++ b/clippy_lints/src/async_yields_async.rs @@ -7,8 +7,7 @@ use rustc_errors::Applicability; use rustc_hir::{ Block, Closure, ClosureKind, CoroutineDesugaring, CoroutineKind, CoroutineSource, Expr, ExprKind, QPath, }; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/attrs/mod.rs b/clippy_lints/src/attrs/mod.rs index bf76579f97aa..23d5adfb201a 100644 --- a/clippy_lints/src/attrs/mod.rs +++ b/clippy_lints/src/attrs/mod.rs @@ -19,8 +19,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::msrvs::{self, Msrv, MsrvStack}; use rustc_ast::{self as ast, AttrArgs, AttrKind, Attribute, MetaItemInner, MetaItemKind}; use rustc_hir::{ImplItem, ImplItemKind, Item, ItemKind, TraitFn, TraitItem, TraitItemKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::sym; use utils::is_lint_level; diff --git a/clippy_lints/src/await_holding_invalid.rs b/clippy_lints/src/await_holding_invalid.rs index 9e5b57a05580..fdab7704f381 100644 --- a/clippy_lints/src/await_holding_invalid.rs +++ b/clippy_lints/src/await_holding_invalid.rs @@ -5,10 +5,9 @@ use clippy_utils::paths::{self, PathNS}; use clippy_utils::sym; use rustc_hir as hir; use rustc_hir::def_id::{DefId, DefIdMap}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::mir::CoroutineLayout; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/bit_width.rs b/clippy_lints/src/bit_width.rs index e1b63e92a2c3..cd08188866ea 100644 --- a/clippy_lints/src/bit_width.rs +++ b/clippy_lints/src/bit_width.rs @@ -5,9 +5,8 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::{is_from_proc_macro, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/block_scrutinee.rs b/clippy_lints/src/block_scrutinee.rs index 0d0a8ba3b60a..2762f85b9102 100644 --- a/clippy_lints/src/block_scrutinee.rs +++ b/clippy_lints/src/block_scrutinee.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::{indent_of, snippet}; use rustc_errors::Applicability; use rustc_hir::{BlockCheckMode, Expr, ExprKind, LoopSource}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::edition::Edition; declare_clippy_lint! { diff --git a/clippy_lints/src/blocks_in_conditions.rs b/clippy_lints/src/blocks_in_conditions.rs index c4a0aeb09306..b3cdde3385fb 100644 --- a/clippy_lints/src/blocks_in_conditions.rs +++ b/clippy_lints/src/blocks_in_conditions.rs @@ -3,8 +3,7 @@ use clippy_utils::source::snippet_block_with_applicability; use clippy_utils::{contains_return, higher, is_from_proc_macro, leaks_droppable_temporary}; use rustc_errors::Applicability; use rustc_hir::{BlockCheckMode, Expr, ExprKind, MatchSource, Node}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/bool_assert_comparison.rs b/clippy_lints/src/bool_assert_comparison.rs index 8119da8cfc65..acd3b44d2fc5 100644 --- a/clippy_lints/src/bool_assert_comparison.rs +++ b/clippy_lints/src/bool_assert_comparison.rs @@ -7,9 +7,8 @@ use clippy_utils::ty::{implements_trait, is_copy}; use rustc_ast::ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, Lit}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::{self, Ty, Unnormalized}; -use rustc_session::declare_lint_pass; use rustc_span::symbol::Ident; declare_clippy_lint! { diff --git a/clippy_lints/src/bool_comparison.rs b/clippy_lints/src/bool_comparison.rs index feeefefc3b8f..c098e7d57fd5 100644 --- a/clippy_lints/src/bool_comparison.rs +++ b/clippy_lints/src/bool_comparison.rs @@ -4,8 +4,7 @@ use clippy_utils::{is_expn_of, peel_blocks, sym}; use rustc_ast::ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{Span, Spanned}; declare_clippy_lint! { diff --git a/clippy_lints/src/bool_to_int_with_if.rs b/clippy_lints/src/bool_to_int_with_if.rs index 8b45473687e6..ecddefe25a26 100644 --- a/clippy_lints/src/bool_to_int_with_if.rs +++ b/clippy_lints/src/bool_to_int_with_if.rs @@ -4,8 +4,7 @@ use clippy_utils::{higher, is_else_clause, is_in_const_context, span_contains_co use rustc_ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/booleans.rs b/clippy_lints/src/booleans.rs index 8982585f75d7..0cd97fddc74d 100644 --- a/clippy_lints/src/booleans.rs +++ b/clippy_lints/src/booleans.rs @@ -12,8 +12,7 @@ use rustc_errors::Applicability; use rustc_hir::attrs::RustcVersion; use rustc_hir::intravisit::{FnKind, Visitor, walk_expr}; use rustc_hir::{BinOpKind, Body, Expr, ExprKind, FnDecl, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, Symbol, SyntaxContext}; use std::fmt::Write as _; diff --git a/clippy_lints/src/borrow_deref_ref.rs b/clippy_lints/src/borrow_deref_ref.rs index 4c781da4ad1a..d9e4d795d1dd 100644 --- a/clippy_lints/src/borrow_deref_ref.rs +++ b/clippy_lints/src/borrow_deref_ref.rs @@ -8,10 +8,9 @@ use clippy_utils::{ }; use rustc_errors::Applicability; use rustc_hir::{BorrowKind, Expr, ExprKind, Node, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::mir::Mutability; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/box_default.rs b/clippy_lints/src/box_default.rs index 18f1f633f89a..5c0635d94e02 100644 --- a/clippy_lints/src/box_default.rs +++ b/clippy_lints/src/box_default.rs @@ -8,8 +8,7 @@ use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::def::Res; use rustc_hir::intravisit::{InferKind, Visitor, VisitorExt as _, walk_ty}; use rustc_hir::{AmbigArg, Block, Expr, ExprKind, HirId, LetStmt, Node, QPath, Ty, TyKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/byte_char_slices.rs b/clippy_lints/src/byte_char_slices.rs index 5104594790fe..ec14afb0296c 100644 --- a/clippy_lints/src/byte_char_slices.rs +++ b/clippy_lints/src/byte_char_slices.rs @@ -7,8 +7,7 @@ use clippy_utils::{get_parent_expr, span_contains_cfg, span_contains_comment}; use rustc_ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{BorrowKind, Expr, ExprKind, Mutability}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/cargo/mod.rs b/clippy_lints/src/cargo/mod.rs index 4ff033f3bf6c..8788f4650868 100644 --- a/clippy_lints/src/cargo/mod.rs +++ b/clippy_lints/src/cargo/mod.rs @@ -10,8 +10,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::is_lint_allowed; use rustc_data_structures::fx::FxHashSet; use rustc_hir::CRATE_HIR_ID; -use rustc_lint::{LateContext, LateLintPass, Lint}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, Lint, impl_lint_pass}; use rustc_span::DUMMY_SP; declare_clippy_lint! { diff --git a/clippy_lints/src/casts/mod.rs b/clippy_lints/src/casts/mod.rs index 7876c4e29122..35806284d3b3 100644 --- a/clippy_lints/src/casts/mod.rs +++ b/clippy_lints/src/casts/mod.rs @@ -31,8 +31,7 @@ use clippy_config::Conf; use clippy_utils::is_hir_ty_cfg_dependant; use clippy_utils::msrvs::{self, Msrv}; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/cfg_not_test.rs b/clippy_lints/src/cfg_not_test.rs index 0a1ad883c297..77f2cc3aaac7 100644 --- a/clippy_lints/src/cfg_not_test.rs +++ b/clippy_lints/src/cfg_not_test.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::attr::data_structures::CfgEntry; use rustc_ast::{AttrKind, SyntheticAttr}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/checked_conversions.rs b/clippy_lints/src/checked_conversions.rs index 86ffa8fa58d4..c8cfc57e2bf0 100644 --- a/clippy_lints/src/checked_conversions.rs +++ b/clippy_lints/src/checked_conversions.rs @@ -5,8 +5,7 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::{SpanlessEq, is_in_const_context, is_integer_literal, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, QPath, TyKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{Symbol, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/cloned_ref_to_slice_refs.rs b/clippy_lints/src/cloned_ref_to_slice_refs.rs index 3b4ac62abd60..db53ef9b1853 100644 --- a/clippy_lints/src/cloned_ref_to_slice_refs.rs +++ b/clippy_lints/src/cloned_ref_to_slice_refs.rs @@ -11,10 +11,9 @@ use rustc_ast::Mutability; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind, HirId}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; use rustc_middle::ty::adjustment::{Adjust, DerefAdjustKind, OverloadedDeref}; -use rustc_session::impl_lint_pass; use rustc_span::Symbol; use crate::methods::is_clone_like; diff --git a/clippy_lints/src/coerce_container_to_any.rs b/clippy_lints/src/coerce_container_to_any.rs index 1a7e20b98271..31da6e18ee51 100644 --- a/clippy_lints/src/coerce_container_to_any.rs +++ b/clippy_lints/src/coerce_container_to_any.rs @@ -3,10 +3,9 @@ use clippy_utils::sugg::{self, Sugg}; use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, PointerCoercion}; use rustc_middle::ty::{self, ExistentialPredicate, Ty, TyCtxt}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/cognitive_complexity.rs b/clippy_lints/src/cognitive_complexity.rs index 81ff839408d3..080ffad6210a 100644 --- a/clippy_lints/src/cognitive_complexity.rs +++ b/clippy_lints/src/cognitive_complexity.rs @@ -7,8 +7,7 @@ use clippy_utils::{LimitStack, get_async_fn_body, sym}; use core::ops::ControlFlow; use rustc_hir::intravisit::FnKind; use rustc_hir::{Attribute, Body, Expr, ExprKind, FnDecl}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/collapsible_if.rs b/clippy_lints/src/collapsible_if.rs index cee21987ba3c..10814cdb4c58 100644 --- a/clippy_lints/src/collapsible_if.rs +++ b/clippy_lints/src/collapsible_if.rs @@ -7,8 +7,7 @@ use rustc_ast::{BinOpKind, MetaItemInner}; use rustc_errors::Applicability; use rustc_hir::{Block, Expr, ExprKind, StmtKind}; use rustc_lexer::TokenKind; -use rustc_lint::{LateContext, LateLintPass, Level}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, Level, impl_lint_pass}; use rustc_span::{BytePos, Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/collection_is_never_read.rs b/clippy_lints/src/collection_is_never_read.rs index 365e03725b6f..621c903fbcb3 100644 --- a/clippy_lints/src/collection_is_never_read.rs +++ b/clippy_lints/src/collection_is_never_read.rs @@ -5,8 +5,7 @@ use clippy_utils::{get_enclosing_block, sym}; use core::ops::ControlFlow; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Body, ExprKind, HirId, LetStmt, Node, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/comparison_chain.rs b/clippy_lints/src/comparison_chain.rs index 554f1ab18685..5d9d9ccda033 100644 --- a/clippy_lints/src/comparison_chain.rs +++ b/clippy_lints/src/comparison_chain.rs @@ -4,8 +4,7 @@ use clippy_utils::ty::implements_trait; use clippy_utils::{SpanlessEq, if_sequence, is_else_clause, is_in_const_context}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{SyntaxContext, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/copy_iterator.rs b/clippy_lints/src/copy_iterator.rs index dff79b287002..a9184562ed91 100644 --- a/clippy_lints/src/copy_iterator.rs +++ b/clippy_lints/src/copy_iterator.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_note; use clippy_utils::ty::is_copy; use rustc_hir::{Impl, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/crate_in_macro_def.rs b/clippy_lints/src/crate_in_macro_def.rs index 509b345048c1..ddd666477612 100644 --- a/clippy_lints/src/crate_in_macro_def.rs +++ b/clippy_lints/src/crate_in_macro_def.rs @@ -3,8 +3,7 @@ use rustc_ast::ast::{AttrKind, Attribute, Item, ItemKind}; use rustc_ast::token::{Token, TokenKind}; use rustc_ast::tokenstream::{TokenStream, TokenTree}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::symbol::sym; use rustc_span::{Span, kw}; diff --git a/clippy_lints/src/create_dir.rs b/clippy_lints/src/create_dir.rs index b3be4e5a3f8e..955d01077105 100644 --- a/clippy_lints/src/create_dir.rs +++ b/clippy_lints/src/create_dir.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/dbg_macro.rs b/clippy_lints/src/dbg_macro.rs index 62d59e95e677..b0a1b655c816 100644 --- a/clippy_lints/src/dbg_macro.rs +++ b/clippy_lints/src/dbg_macro.rs @@ -6,8 +6,7 @@ use clippy_utils::{is_in_test, sym}; use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::{Closure, ClosureKind, CoroutineKind, Expr, ExprKind, LetStmt, LocalSource, Node, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{Span, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/default.rs b/clippy_lints/src/default.rs index 05b423ef37e0..d6812cc29173 100644 --- a/clippy_lints/src/default.rs +++ b/clippy_lints/src/default.rs @@ -5,10 +5,9 @@ use clippy_utils::{contains_name, get_parent_expr, in_automatically_derived, is_ use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::{Block, Expr, ExprKind, PatKind, QPath, Stmt, StmtKind, StructTailExpr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; use rustc_middle::ty::print::with_forced_trimmed_paths; -use rustc_session::impl_lint_pass; use rustc_span::symbol::{Ident, Symbol}; use rustc_span::{Span, sym}; diff --git a/clippy_lints/src/default_constructed_unit_structs.rs b/clippy_lints/src/default_constructed_unit_structs.rs index 9e141bd945db..63c4b29c7c03 100644 --- a/clippy_lints/src/default_constructed_unit_structs.rs +++ b/clippy_lints/src/default_constructed_unit_structs.rs @@ -5,9 +5,8 @@ use hir::ExprKind; use hir::def::Res; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/default_instead_of_iter_empty.rs b/clippy_lints/src/default_instead_of_iter_empty.rs index fffdea863f51..ff0cda0c6511 100644 --- a/clippy_lints/src/default_instead_of_iter_empty.rs +++ b/clippy_lints/src/default_instead_of_iter_empty.rs @@ -3,8 +3,7 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::{last_path_segment, std_or_core, sym}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, GenericArg, QPath, TyKind, def}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/default_numeric_fallback.rs b/clippy_lints/src/default_numeric_fallback.rs index abf2541fbb7b..5bfe936880a8 100644 --- a/clippy_lints/src/default_numeric_fallback.rs +++ b/clippy_lints/src/default_numeric_fallback.rs @@ -8,9 +8,8 @@ use rustc_hir::{ Block, Body, ConstContext, Expr, ExprKind, FnRetTy, HirId, Lit, Pat, PatExpr, PatExprKind, PatKind, Stmt, StmtKind, StructTailExpr, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::{self, FloatTy, IntTy, PolyFnSig, Ty}; -use rustc_session::declare_lint_pass; use std::iter; declare_clippy_lint! { diff --git a/clippy_lints/src/default_union_representation.rs b/clippy_lints/src/default_union_representation.rs index bd738b7f4cd8..e0d782a0d574 100644 --- a/clippy_lints/src/default_union_representation.rs +++ b/clippy_lints/src/default_union_representation.rs @@ -1,10 +1,9 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_hir::attrs::ReprAttr; use rustc_hir::{HirId, Item, ItemKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::layout::LayoutOf as _; use rustc_middle::ty::{self, FieldDef}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/definition_in_module_root.rs b/clippy_lints/src/definition_in_module_root.rs index 4b454e282cc2..14c440abfd98 100644 --- a/clippy_lints/src/definition_in_module_root.rs +++ b/clippy_lints/src/definition_in_module_root.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_and_help; use rustc_ast::ast::{self, Inline, ItemKind, ModKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{FileName, SourceFile, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/dereference.rs b/clippy_lints/src/dereference.rs index 237c7dfdc770..31c35b59073c 100644 --- a/clippy_lints/src/dereference.rs +++ b/clippy_lints/src/dereference.rs @@ -17,10 +17,9 @@ use rustc_hir::{ self as hir, AmbigArg, BindingMode, Body, BodyId, BorrowKind, Expr, ExprKind, HirId, Item, MatchSource, Mutability, Node, OwnerId, Pat, PatKind, Path, QPath, TyKind, UnOp, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, Adjustment, AutoBorrow, AutoBorrowMutability}; use rustc_middle::ty::{self, AssocTag, Ty, TyCtxt, TypeVisitableExt as _, TypeckResults, Unnormalized}; -use rustc_session::impl_lint_pass; use rustc_span::{Span, Symbol, SyntaxContext}; use std::borrow::Cow; diff --git a/clippy_lints/src/derivable_impls.rs b/clippy_lints/src/derivable_impls.rs index 6f48713e3e7f..d6bf5b9834b8 100644 --- a/clippy_lints/src/derivable_impls.rs +++ b/clippy_lints/src/derivable_impls.rs @@ -8,10 +8,9 @@ use rustc_hir::def::{CtorKind, CtorOf, DefKind, Res}; use rustc_hir::{ self as hir, Body, Expr, ExprKind, GenericArg, Impl, ImplItemKind, Item, ItemKind, Node, PathSegment, QPath, TyKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, PointerCoercion}; use rustc_middle::ty::{self, AdtDef, GenericArgsRef, Ty, TypeckResults, VariantDef}; -use rustc_session::impl_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/derive/derive_partial_eq_without_eq.rs b/clippy_lints/src/derive/derive_partial_eq_without_eq.rs index 51412cd1d8a6..65a305d361af 100644 --- a/clippy_lints/src/derive/derive_partial_eq_without_eq.rs +++ b/clippy_lints/src/derive/derive_partial_eq_without_eq.rs @@ -5,7 +5,7 @@ use rustc_errors::Applicability; use rustc_hir::def_id::DefId; use rustc_hir::{self as hir, HirId}; use rustc_lint::LateContext; -use rustc_middle::ty::{self, ClauseKind, GenericParamDefKind, ParamEnv, TraitPredicate, Ty, TyCtxt, Upcast as _}; +use rustc_middle::ty::{self, ClauseKind, GenericParamDefKind, ParamEnv, TraitClause, Ty, TyCtxt, Upcast as _}; use rustc_span::{Span, sym}; use super::DERIVE_PARTIAL_EQ_WITHOUT_EQ; @@ -78,9 +78,9 @@ fn typing_env_for_derived_eq(tcx: TyCtxt<'_>, did: DefId, eq_trait_id: DefId) -> let param_env = ParamEnv::new(tcx.mk_clauses_from_iter(ty_clauses.iter().map(|&(c, _)| c).chain( params.iter().filter(|&&(_, needs_eq)| needs_eq).map(|&(param, _)| { - ClauseKind::Trait(TraitPredicate { + ClauseKind::Trait(TraitClause { trait_ref: ty::TraitRef::new(tcx, eq_trait_id, [tcx.mk_param_from_def(param)]), - polarity: ty::PredicatePolarity::Positive, + polarity: ty::ClausePolarity::Positive, }) .upcast(tcx) }), diff --git a/clippy_lints/src/derive/mod.rs b/clippy_lints/src/derive/mod.rs index 96b1cb0890ac..1968a054f95b 100644 --- a/clippy_lints/src/derive/mod.rs +++ b/clippy_lints/src/derive/mod.rs @@ -1,8 +1,7 @@ use clippy_utils::res::MaybeResPath as _; use rustc_hir::def::Res; use rustc_hir::{Impl, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; mod derive_ord_xor_partial_ord; mod derive_partial_eq_without_eq; diff --git a/clippy_lints/src/disallowed_fields.rs b/clippy_lints/src/disallowed_fields.rs index 28fcb46c50b6..e6457524b39d 100644 --- a/clippy_lints/src/disallowed_fields.rs +++ b/clippy_lints/src/disallowed_fields.rs @@ -6,9 +6,8 @@ use clippy_utils::ty::get_field_def_id_by_name; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::DefIdMap; use rustc_hir::{Expr, ExprKind, Pat, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/disallowed_macros.rs b/clippy_lints/src/disallowed_macros.rs index 7253b65e4337..d6ee01fbba7d 100644 --- a/clippy_lints/src/disallowed_macros.rs +++ b/clippy_lints/src/disallowed_macros.rs @@ -10,9 +10,8 @@ use rustc_hir::{ AmbigArg, Expr, ExprKind, ForeignItem, HirId, ImplItem, ImplItemImplKind, Item, ItemKind, OwnerId, Pat, Path, Stmt, TraitItem, Ty, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::{ExpnId, MacroKind, Span}; use crate::utils::attr_collector::AttrStorage; diff --git a/clippy_lints/src/disallowed_methods.rs b/clippy_lints/src/disallowed_methods.rs index 71c9c0c58ceb..6673dfe0161d 100644 --- a/clippy_lints/src/disallowed_methods.rs +++ b/clippy_lints/src/disallowed_methods.rs @@ -5,9 +5,8 @@ use clippy_utils::paths::PathNS; use rustc_hir::def::{CtorKind, DefKind, Res}; use rustc_hir::def_id::DefIdMap; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/disallowed_names.rs b/clippy_lints/src/disallowed_names.rs index 1f658b2aa068..475c3ed0bea6 100644 --- a/clippy_lints/src/disallowed_names.rs +++ b/clippy_lints/src/disallowed_names.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::{is_from_proc_macro, is_in_test}; use rustc_data_structures::fx::FxHashSet; use rustc_hir::{Pat, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/disallowed_script_idents.rs b/clippy_lints/src/disallowed_script_idents.rs index aeced9e72fb5..93f079f7351d 100644 --- a/clippy_lints/src/disallowed_script_idents.rs +++ b/clippy_lints/src/disallowed_script_idents.rs @@ -2,8 +2,7 @@ use clippy_config::Conf; use clippy_utils::diagnostics::span_lint; use rustc_ast::ast; use rustc_data_structures::fx::FxHashSet; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use unicode_script::{Script, UnicodeScript as _}; declare_clippy_lint! { diff --git a/clippy_lints/src/disallowed_types.rs b/clippy_lints/src/disallowed_types.rs index 2c520d053f43..2236e613b147 100644 --- a/clippy_lints/src/disallowed_types.rs +++ b/clippy_lints/src/disallowed_types.rs @@ -6,9 +6,8 @@ use rustc_data_structures::fx::FxHashMap; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::DefIdMap; use rustc_hir::{AmbigArg, Item, ItemKind, PolyTraitRef, PrimTy, Ty, TyKind, UseKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/doc/mod.rs b/clippy_lints/src/doc/mod.rs index 790faab309d5..4b81c73582e2 100644 --- a/clippy_lints/src/doc/mod.rs +++ b/clippy_lints/src/doc/mod.rs @@ -5,7 +5,7 @@ use clippy_utils::{is_entrypoint_fn, is_trait_impl_item}; use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::{Attribute, FieldDef, ImplItemKind, ItemKind, Node, Safety, TraitItemKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_resolve::rustdoc::pulldown_cmark::Event::{ Code, DisplayMath, End, FootnoteReference, HardBreak, Html, InlineHtml, InlineMath, Rule, SoftBreak, Start, TaskListMarker, Text, @@ -18,7 +18,6 @@ use rustc_resolve::rustdoc::{ DocFragment, add_doc_fragment, attrs_to_doc_fragments, main_body_opts, pulldown_cmark, source_span_for_markdown_range, span_of_fragments, }; -use rustc_session::impl_lint_pass; use rustc_span::Span; use std::ops::Range; use url::Url; diff --git a/clippy_lints/src/double_parens.rs b/clippy_lints/src/double_parens.rs index 49a58711ea8e..8b49e88ff96b 100644 --- a/clippy_lints/src/double_parens.rs +++ b/clippy_lints/src/double_parens.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_sugg; use clippy_utils::source::{SpanExt as _, snippet_with_applicability, snippet_with_context}; use rustc_ast::ast::{Expr, ExprKind, MethodCall}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/drop_forget_ref.rs b/clippy_lints/src/drop_forget_ref.rs index e50bfc8fa962..5661c31f5a79 100644 --- a/clippy_lints/src/drop_forget_ref.rs +++ b/clippy_lints/src/drop_forget_ref.rs @@ -4,8 +4,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::ty::{is_copy, opt_must_use_path}; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Arm, Expr, ExprKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; use std::borrow::Cow; diff --git a/clippy_lints/src/duplicate_mod.rs b/clippy_lints/src/duplicate_mod.rs index 265721bb066d..53fd9d11ad8b 100644 --- a/clippy_lints/src/duplicate_mod.rs +++ b/clippy_lints/src/duplicate_mod.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint_and_help; use rustc_ast::ast::{Crate, Inline, Item, ItemKind, ModKind}; use rustc_errors::MultiSpan; -use rustc_lint::{EarlyContext, EarlyLintPass, Level, LintContext as _}; +use rustc_lint::{EarlyContext, EarlyLintPass, Level, LintContext as _, impl_lint_pass}; use rustc_middle::lint::UnstableLevelSpec; -use rustc_session::impl_lint_pass; use rustc_span::{FileName, Span}; use std::collections::BTreeMap; use std::path::PathBuf; diff --git a/clippy_lints/src/duration_suboptimal_units.rs b/clippy_lints/src/duration_suboptimal_units.rs index bd6cd5fc4614..35a4dca72b4c 100644 --- a/clippy_lints/src/duration_suboptimal_units.rs +++ b/clippy_lints/src/duration_suboptimal_units.rs @@ -9,9 +9,8 @@ use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir::attrs::RustcVersion; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::{self, TyCtxt, UintTy}; -use rustc_session::impl_lint_pass; use rustc_span::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/else_if_without_else.rs b/clippy_lints/src/else_if_without_else.rs index 838b9063ef75..eaf185dc6ca9 100644 --- a/clippy_lints/src/else_if_without_else.rs +++ b/clippy_lints/src/else_if_without_else.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::ast::{Expr, ExprKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/empty_drop.rs b/clippy_lints/src/empty_drop.rs index 1a10e962e875..59434899b700 100644 --- a/clippy_lints/src/empty_drop.rs +++ b/clippy_lints/src/empty_drop.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::peel_blocks; use rustc_errors::Applicability; use rustc_hir::{Body, ExprKind, Impl, ImplItemKind, Item, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/empty_enums.rs b/clippy_lints/src/empty_enums.rs index 2cac6597949d..8c113e6febc9 100644 --- a/clippy_lints/src/empty_enums.rs +++ b/clippy_lints/src/empty_enums.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::span_contains_cfg; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/empty_line_after.rs b/clippy_lints/src/empty_line_after.rs index c726fc5b6b0e..aa5b8ec2f727 100644 --- a/clippy_lints/src/empty_line_after.rs +++ b/clippy_lints/src/empty_line_after.rs @@ -8,8 +8,7 @@ use rustc_ast::token::CommentKind; use rustc_ast::{AssocItemKind, AttrKind, AttrStyle, Attribute, Crate, Item, ItemKind, ModKind, NodeId}; use rustc_errors::{Applicability, Diag, SuggestionStyle}; use rustc_lexer::TokenKind; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{BytePos, ExpnKind, Ident, InnerSpan, Span, SpanData, Symbol, kw, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/empty_with_brackets.rs b/clippy_lints/src/empty_with_brackets.rs index b01745008510..56dcc6a9eaea 100644 --- a/clippy_lints/src/empty_with_brackets.rs +++ b/clippy_lints/src/empty_with_brackets.rs @@ -9,9 +9,8 @@ use rustc_hir::def::Res::Def; use rustc_hir::def::{CtorOf, DefKind}; use rustc_hir::def_id::LocalDefId; use rustc_hir::{Expr, ExprKind, Item, ItemKind, Node, Pat, PatKind, Path, QPath, Variant, VariantData}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::{BytePos, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/endian_bytes.rs b/clippy_lints/src/endian_bytes.rs index dc2a323e8eb6..10a6275b1439 100644 --- a/clippy_lints/src/endian_bytes.rs +++ b/clippy_lints/src/endian_bytes.rs @@ -4,9 +4,8 @@ use clippy_utils::{is_lint_allowed, sym}; use core::ptr; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/entry.rs b/clippy_lints/src/entry.rs index e75c8d713d04..85be852ab8e2 100644 --- a/clippy_lints/src/entry.rs +++ b/clippy_lints/src/entry.rs @@ -11,8 +11,7 @@ use rustc_errors::Applicability; use rustc_hir::def_id::DefId; use rustc_hir::intravisit::{Visitor, walk_body, walk_expr}; use rustc_hir::{Block, Expr, ExprKind, HirId, HirIdSet, Pat, Stmt, StmtKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{DUMMY_SP, Span, SyntaxContext}; use std::ops::ControlFlow; diff --git a/clippy_lints/src/enum_clike.rs b/clippy_lints/src/enum_clike.rs index 1313f42d7ff5..c3231a468e1e 100644 --- a/clippy_lints/src/enum_clike.rs +++ b/clippy_lints/src/enum_clike.rs @@ -1,10 +1,9 @@ use clippy_utils::consts::{Constant, mir_to_const}; use clippy_utils::diagnostics::span_lint; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::util::IntTypeExt as _; use rustc_middle::ty::{self, IntTy, UintTy}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/equatable_if_let.rs b/clippy_lints/src/equatable_if_let.rs index aea06f2b0286..5719561b99ca 100644 --- a/clippy_lints/src/equatable_if_let.rs +++ b/clippy_lints/src/equatable_if_let.rs @@ -4,9 +4,8 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::ty::implements_trait; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, Pat, PatKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/error_impl_error.rs b/clippy_lints/src/error_impl_error.rs index 8fb0748823d1..eed8376b75f6 100644 --- a/clippy_lints/src/error_impl_error.rs +++ b/clippy_lints/src/error_impl_error.rs @@ -4,9 +4,8 @@ use clippy_utils::sym; use clippy_utils::ty::implements_trait; use rustc_hir::def_id::{DefId, LocalDefId}; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::Visibility; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/escape.rs b/clippy_lints/src/escape.rs index a76fa0626ac5..63c7855f5f4b 100644 --- a/clippy_lints/src/escape.rs +++ b/clippy_lints/src/escape.rs @@ -4,11 +4,10 @@ use rustc_abi::ExternAbi; use rustc_hir::def::DefKind; use rustc_hir::{Body, FnDecl, HirId, HirIdSet, PatKind, intravisit}; use rustc_hir_typeck::expr_use_visitor::{Delegate, ExprUseVisitor, PlaceBase, PlaceWithHirId}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::mir::FakeReadCause; use rustc_middle::ty::layout::LayoutOf as _; use rustc_middle::ty::{self, TraitRef, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/eta_reduction.rs b/clippy_lints/src/eta_reduction.rs index e1ad4649a5e3..138ed437bd80 100644 --- a/clippy_lints/src/eta_reduction.rs +++ b/clippy_lints/src/eta_reduction.rs @@ -7,13 +7,12 @@ use clippy_utils::{get_path_from_caller_to_method_type, is_adjusted, is_no_std_c use rustc_errors::Applicability; use rustc_hir::{BindingMode, Expr, ExprKind, FnRetTy, GenericArgs, Param, PatKind, QPath, Safety, TyKind, find_attr}; use rustc_infer::infer::TyCtxtInferExt as _; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, DerefAdjustKind}; use rustc_middle::ty::{ self, Binder, ClosureKind, FnSig, GenericArg, GenericArgKind, List, Region, Ty, TypeVisitableExt as _, TypeckResults, }; -use rustc_session::declare_lint_pass; use rustc_span::symbol::sym; use rustc_trait_selection::error_reporting::InferCtxtErrorExt as _; @@ -207,7 +206,7 @@ fn check_closure<'tcx>(cx: &LateContext<'tcx>, outer_receiver: Option<&Expr<'tcx .type_implements_fn_trait( cx.param_env, Binder::bind_with_vars(callee_ty_adjusted, List::empty()), - ty::PredicatePolarity::Positive, + ty::ClausePolarity::Positive, ) { span_lint_hir_and_then( diff --git a/clippy_lints/src/excessive_bools.rs b/clippy_lints/src/excessive_bools.rs index b44497ded301..a64f9db2fd88 100644 --- a/clippy_lints/src/excessive_bools.rs +++ b/clippy_lints/src/excessive_bools.rs @@ -4,8 +4,7 @@ use clippy_utils::{get_parent_as_impl, has_repr_attr, is_bool}; use rustc_abi::ExternAbi; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl, Item, ItemKind, TraitFn, TraitItem, TraitItemKind, Ty}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/excessive_nesting.rs b/clippy_lints/src/excessive_nesting.rs index 0c88f3fd3228..5a0c0b01e43d 100644 --- a/clippy_lints/src/excessive_nesting.rs +++ b/clippy_lints/src/excessive_nesting.rs @@ -4,8 +4,7 @@ use clippy_utils::source::snippet; use rustc_ast::node_id::NodeSet; use rustc_ast::visit::{Visitor, walk_block, walk_item}; use rustc_ast::{Block, Crate, Inline, Item, ItemKind, ModKind, NodeId}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/exhaustive_items.rs b/clippy_lints/src/exhaustive_items.rs index 13c8f2d2059a..839375a01217 100644 --- a/clippy_lints/src/exhaustive_items.rs +++ b/clippy_lints/src/exhaustive_items.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::indent_of; use rustc_errors::Applicability; use rustc_hir::{Item, ItemKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/exit.rs b/clippy_lints/src/exit.rs index bc7b2041a77d..245d3bd8ec25 100644 --- a/clippy_lints/src/exit.rs +++ b/clippy_lints/src/exit.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::sym; use rustc_hir::{Expr, ExprKind, Item, ItemKind, OwnerNode}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/explicit_write.rs b/clippy_lints/src/explicit_write.rs index e66eac117cda..a14bd33cca65 100644 --- a/clippy_lints/src/explicit_write.rs +++ b/clippy_lints/src/explicit_write.rs @@ -6,8 +6,7 @@ use clippy_utils::{is_expn_of, is_in_test, sym}; use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::{BindingMode, Block, BlockCheckMode, Expr, ExprKind, Node, PatKind, QPath, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::ExpnId; declare_clippy_lint! { diff --git a/clippy_lints/src/extra_unused_type_parameters.rs b/clippy_lints/src/extra_unused_type_parameters.rs index 070b0d2fb0c0..8523d05be60b 100644 --- a/clippy_lints/src/extra_unused_type_parameters.rs +++ b/clippy_lints/src/extra_unused_type_parameters.rs @@ -8,9 +8,8 @@ use rustc_hir::{ AmbigArg, BodyId, ExprKind, GenericBound, GenericParam, GenericParamKind, Generics, ImplItem, ImplItemKind, Item, ItemKind, PredicateOrigin, Ty, WherePredicate, WherePredicateKind, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::hir::nested_filter; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::{DefId, LocalDefId}; diff --git a/clippy_lints/src/fallible_impl_from.rs b/clippy_lints/src/fallible_impl_from.rs index a2d02b6747d7..99137c8591e4 100644 --- a/clippy_lints/src/fallible_impl_from.rs +++ b/clippy_lints/src/fallible_impl_from.rs @@ -3,9 +3,8 @@ use clippy_utils::macros::{is_panic, root_macro_call_first_node}; use clippy_utils::method_chain_args; use clippy_utils::res::MaybeDef as _; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::{Span, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/field_scoped_visibility_modifiers.rs b/clippy_lints/src/field_scoped_visibility_modifiers.rs index 4b736c68cb86..20a7ee9d2894 100644 --- a/clippy_lints/src/field_scoped_visibility_modifiers.rs +++ b/clippy_lints/src/field_scoped_visibility_modifiers.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::ast::{Item, ItemKind, VisibilityKind}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/float_literal.rs b/clippy_lints/src/float_literal.rs index 481accb6ebbe..ff5c7d3d5b3f 100644 --- a/clippy_lints/src/float_literal.rs +++ b/clippy_lints/src/float_literal.rs @@ -4,9 +4,8 @@ use clippy_utils::{ExprUseNode, get_expr_use_site, numeric_literal}; use rustc_ast::ast::{LitFloatType, LitKind}; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, FloatTy}; -use rustc_session::impl_lint_pass; use std::fmt; declare_clippy_lint! { diff --git a/clippy_lints/src/floating_point_arithmetic/mod.rs b/clippy_lints/src/floating_point_arithmetic/mod.rs index 82b08a9e7d21..7ab901837bd0 100644 --- a/clippy_lints/src/floating_point_arithmetic/mod.rs +++ b/clippy_lints/src/floating_point_arithmetic/mod.rs @@ -1,8 +1,7 @@ use clippy_utils::res::{MaybeDef as _, MaybeTypeckRes as _}; use clippy_utils::{is_in_const_context, is_no_std_crate, sym}; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; mod custom_abs; mod expm1; diff --git a/clippy_lints/src/format.rs b/clippy_lints/src/format.rs index 91854d450402..f8e4a779da6f 100644 --- a/clippy_lints/src/format.rs +++ b/clippy_lints/src/format.rs @@ -5,9 +5,8 @@ use clippy_utils::sugg::Sugg; use rustc_ast::{FormatArgsPiece, FormatOptions, FormatTrait}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::{Span, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/format_args.rs b/clippy_lints/src/format_args.rs index 9fc535464c79..f6f90f5dc36d 100644 --- a/clippy_lints/src/format_args.rs +++ b/clippy_lints/src/format_args.rs @@ -25,10 +25,9 @@ use rustc_errors::SuggestionStyle::{CompletelyHidden, ShowCode}; use rustc_hir::attrs::RustcVersion; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, Adjustment, DerefAdjustKind}; use rustc_middle::ty::{self, GenericArg, List, TraitRef, Ty, TyCtxt, Unnormalized, Upcast as _}; -use rustc_session::impl_lint_pass; use rustc_span::edition::Edition::Edition2021; use rustc_span::{BytePos, Pos as _, Span, Symbol}; use rustc_trait_selection::infer::TyCtxtInferExt as _; diff --git a/clippy_lints/src/format_impl.rs b/clippy_lints/src/format_impl.rs index 850e0a1ab544..38661ebf5eb8 100644 --- a/clippy_lints/src/format_impl.rs +++ b/clippy_lints/src/format_impl.rs @@ -5,8 +5,7 @@ use clippy_utils::{get_parent_as_impl, peel_ref_operators, sym}; use rustc_ast::{FormatArgsPiece, FormatTrait}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, Impl, ImplItem, ImplItemKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Symbol; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/format_push_string.rs b/clippy_lints/src/format_push_string.rs index e4af0ecf1b85..9008e9d0a5cd 100644 --- a/clippy_lints/src/format_push_string.rs +++ b/clippy_lints/src/format_push_string.rs @@ -6,8 +6,7 @@ use clippy_utils::{std_or_core, sym}; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{AssignOpKind, Expr, ExprKind, MatchSource}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/formatting.rs b/clippy_lints/src/formatting.rs index 39106e0fcd4c..21f74e32e93d 100644 --- a/clippy_lints/src/formatting.rs +++ b/clippy_lints/src/formatting.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::{span_lint_and_help, span_lint_and_note}; use clippy_utils::is_span_if; use clippy_utils::source::snippet_opt; use rustc_ast::ast::{BinOpKind, Block, Expr, ExprKind, StmtKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/four_forward_slashes.rs b/clippy_lints/src/four_forward_slashes.rs index 0c27d18016f1..399405221f50 100644 --- a/clippy_lints/src/four_forward_slashes.rs +++ b/clippy_lints/src/four_forward_slashes.rs @@ -5,8 +5,7 @@ use rustc_ast::AttrStyle; use rustc_errors::Applicability; use rustc_hir::attrs::AttributeKind; use rustc_hir::{Attribute, Item}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/from_over_into.rs b/clippy_lints/src/from_over_into.rs index 55ce577b8ddd..ed936e7f14ae 100644 --- a/clippy_lints/src/from_over_into.rs +++ b/clippy_lints/src/from_over_into.rs @@ -12,10 +12,9 @@ use rustc_hir::{ FnRetTy, GenericArg, GenericArgs, HirId, Impl, ImplItemId, ImplItemKind, Item, ItemKind, PatKind, Path, PathSegment, Ty as HirTy, TyKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::hir::nested_filter::OnlyBodies; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::symbol::{kw, sym}; use rustc_span::{Span, Symbol}; diff --git a/clippy_lints/src/from_raw_with_void_ptr.rs b/clippy_lints/src/from_raw_with_void_ptr.rs index b419b43190a2..39c981c4d16b 100644 --- a/clippy_lints/src/from_raw_with_void_ptr.rs +++ b/clippy_lints/src/from_raw_with_void_ptr.rs @@ -4,9 +4,8 @@ use clippy_utils::sym; use clippy_utils::ty::is_c_void; use rustc_hir::def_id::DefId; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/from_str_radix_10.rs b/clippy_lints/src/from_str_radix_10.rs index 02f125eb9685..eb0a3564c505 100644 --- a/clippy_lints/src/from_str_radix_10.rs +++ b/clippy_lints/src/from_str_radix_10.rs @@ -5,9 +5,8 @@ use clippy_utils::{is_in_const_context, is_integer_literal, sym}; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind, PrimTy, QPath, TyKind, def}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/functions/mod.rs b/clippy_lints/src/functions/mod.rs index 3caabc609f57..4c23f21a7318 100644 --- a/clippy_lints/src/functions/mod.rs +++ b/clippy_lints/src/functions/mod.rs @@ -15,9 +15,8 @@ use clippy_utils::paths::{PathNS, lookup_path_str}; use rustc_ast::{self as ast, visit}; use rustc_hir as hir; use rustc_hir::intravisit; -use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass}; +use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, declare_lint_pass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::{declare_lint_pass, impl_lint_pass}; use rustc_span::Span; use rustc_span::def_id::{DefIdSet, LocalDefId}; diff --git a/clippy_lints/src/future_not_send.rs b/clippy_lints/src/future_not_send.rs index f58bd3ffaeba..46a7ef19b310 100644 --- a/clippy_lints/src/future_not_send.rs +++ b/clippy_lints/src/future_not_send.rs @@ -5,13 +5,12 @@ use clippy_utils::return_ty; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl}; use rustc_infer::infer::TyCtxtInferExt as _; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::print::PrintTraitRefExt as _; use rustc_middle::ty::{ self, AliasTy, Binder, ClauseKind, PredicateKind, Ty, TyCtxt, TypeVisitable as _, TypeVisitableExt as _, TypeVisitor, Unnormalized, }; -use rustc_session::declare_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, sym}; use rustc_trait_selection::error_reporting::InferCtxtErrorExt as _; diff --git a/clippy_lints/src/if_let_mutex.rs b/clippy_lints/src/if_let_mutex.rs index d03fa1472e25..310b45ca408c 100644 --- a/clippy_lints/src/if_let_mutex.rs +++ b/clippy_lints/src/if_let_mutex.rs @@ -5,8 +5,7 @@ use clippy_utils::{eq_expr_value, higher, sym}; use core::ops::ControlFlow; use rustc_errors::Diag; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::SyntaxContext; use rustc_span::edition::Edition::Edition2024; diff --git a/clippy_lints/src/if_not_else.rs b/clippy_lints/src/if_not_else.rs index 9b904699b9af..510de5c50ab6 100644 --- a/clippy_lints/src/if_not_else.rs +++ b/clippy_lints/src/if_not_else.rs @@ -4,8 +4,7 @@ use clippy_utils::is_else_clause; use clippy_utils::source::{indent_of, reindent_multiline, snippet_with_context}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/if_then_some_else_none.rs b/clippy_lints/src/if_then_some_else_none.rs index 32e69900a59f..b77839124ba1 100644 --- a/clippy_lints/src/if_then_some_else_none.rs +++ b/clippy_lints/src/if_then_some_else_none.rs @@ -12,8 +12,7 @@ use clippy_utils::{ use core::ops::ControlFlow; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/ifs/mod.rs b/clippy_lints/src/ifs/mod.rs index 8e693c3e0e70..3a33a1160d88 100644 --- a/clippy_lints/src/ifs/mod.rs +++ b/clippy_lints/src/ifs/mod.rs @@ -2,9 +2,8 @@ use clippy_config::Conf; use clippy_utils::ty::InteriorMut; use clippy_utils::{if_sequence, is_else_clause, is_lint_allowed}; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; mod branches_sharing_code; mod if_same_then_else; diff --git a/clippy_lints/src/ignored_unit_patterns.rs b/clippy_lints/src/ignored_unit_patterns.rs index cf7b444f6754..1a016c8862e0 100644 --- a/clippy_lints/src/ignored_unit_patterns.rs +++ b/clippy_lints/src/ignored_unit_patterns.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_sugg; use hir::{Node, PatKind}; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/impl_hash_with_borrow_str_and_bytes.rs b/clippy_lints/src/impl_hash_with_borrow_str_and_bytes.rs index 56de38f8ed76..ba9939b4188e 100644 --- a/clippy_lints/src/impl_hash_with_borrow_str_and_bytes.rs +++ b/clippy_lints/src/impl_hash_with_borrow_str_and_bytes.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::ty::implements_trait; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::declare_lint_pass; use rustc_span::symbol::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/implicit_hasher.rs b/clippy_lints/src/implicit_hasher.rs index 758e3114089e..d6f49828d593 100644 --- a/clippy_lints/src/implicit_hasher.rs +++ b/clippy_lints/src/implicit_hasher.rs @@ -6,10 +6,9 @@ use rustc_errors::{Applicability, Diag}; use rustc_hir::intravisit::{Visitor, VisitorExt as _, walk_body, walk_expr, walk_ty}; use rustc_hir::{self as hir, AmbigArg, Body, Expr, ExprKind, GenericArg, Item, ItemKind, QPath, TyKind}; use rustc_hir_analysis::lower_ty; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::hir::nested_filter; use rustc_middle::ty::{Ty, TypeckResults}; -use rustc_session::declare_lint_pass; use rustc_span::Span; use clippy_utils::diagnostics::span_lint_and_then; diff --git a/clippy_lints/src/implicit_return.rs b/clippy_lints/src/implicit_return.rs index 6494331846f0..633a3e9e42bd 100644 --- a/clippy_lints/src/implicit_return.rs +++ b/clippy_lints/src/implicit_return.rs @@ -6,8 +6,7 @@ use core::ops::ControlFlow; use rustc_errors::Applicability; use rustc_hir::intravisit::FnKind; use rustc_hir::{Block, Body, Expr, ExprKind, FnDecl, FnRetTy, HirId}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, SyntaxContext}; diff --git a/clippy_lints/src/implicit_saturating_add.rs b/clippy_lints/src/implicit_saturating_add.rs index 06342113b104..3a3c7e0e6fcb 100644 --- a/clippy_lints/src/implicit_saturating_add.rs +++ b/clippy_lints/src/implicit_saturating_add.rs @@ -6,9 +6,8 @@ use rustc_ast::ast::{LitIntType, LitKind}; use rustc_data_structures::packed::Pu128; use rustc_errors::Applicability; use rustc_hir::{AssignOpKind, BinOpKind, Block, Expr, ExprKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{IntTy, Ty, UintTy}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/implicit_saturating_sub.rs b/clippy_lints/src/implicit_saturating_sub.rs index 9fb0409f012a..b02695cffa0f 100644 --- a/clippy_lints/src/implicit_saturating_sub.rs +++ b/clippy_lints/src/implicit_saturating_sub.rs @@ -13,8 +13,7 @@ use rustc_ast::ast::LitKind; use rustc_data_structures::packed::Pu128; use rustc_errors::Applicability; use rustc_hir::{AssignOpKind, BinOp, BinOpKind, Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/implied_bounds_in_impls.rs b/clippy_lints/src/implied_bounds_in_impls.rs index 2d835b2da97e..73e430fa08d6 100644 --- a/clippy_lints/src/implied_bounds_in_impls.rs +++ b/clippy_lints/src/implied_bounds_in_impls.rs @@ -7,9 +7,8 @@ use rustc_hir::{ TyKind, WherePredicateKind, }; use rustc_hir_analysis::lower_ty; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, AssocItem, ClauseKind, Generics, Ty, TyCtxt}; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/incompatible_msrv.rs b/clippy_lints/src/incompatible_msrv.rs index 73467def3175..ed90c1871b4d 100644 --- a/clippy_lints/src/incompatible_msrv.rs +++ b/clippy_lints/src/incompatible_msrv.rs @@ -5,9 +5,8 @@ use clippy_utils::{is_in_const_context, is_in_test, sym}; use rustc_data_structures::fx::FxHashMap; use rustc_hir::attrs::RustcVersion; use rustc_hir::{self as hir, AmbigArg, Expr, ExprKind, HirId, StabilityLevel, StableSince, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::def_id::{CrateNum, DefId}; use rustc_span::{ExpnKind, Span}; diff --git a/clippy_lints/src/inconsistent_struct_constructor.rs b/clippy_lints/src/inconsistent_struct_constructor.rs index 4555af85c2d2..39be16b947a4 100644 --- a/clippy_lints/src/inconsistent_struct_constructor.rs +++ b/clippy_lints/src/inconsistent_struct_constructor.rs @@ -5,9 +5,8 @@ use clippy_utils::source::snippet; use rustc_data_structures::fx::FxHashMap; use rustc_errors::Applicability; use rustc_hir::{self as hir, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::symbol::Symbol; diff --git a/clippy_lints/src/index_refutable_slice.rs b/clippy_lints/src/index_refutable_slice.rs index 406445ff1f0a..f99ae0c8ad80 100644 --- a/clippy_lints/src/index_refutable_slice.rs +++ b/clippy_lints/src/index_refutable_slice.rs @@ -11,9 +11,8 @@ use rustc_errors::Applicability; use rustc_hir as hir; use rustc_hir::HirId; use rustc_hir::intravisit::{self, Visitor}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::hir::nested_filter; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::symbol::Ident; diff --git a/clippy_lints/src/indexing_slicing.rs b/clippy_lints/src/indexing_slicing.rs index 6fd1e833ede3..107ab36741b2 100644 --- a/clippy_lints/src/indexing_slicing.rs +++ b/clippy_lints/src/indexing_slicing.rs @@ -5,9 +5,8 @@ use clippy_utils::ty::{deref_chain, get_adt_inherent_method}; use clippy_utils::{higher, is_from_proc_macro, is_in_test, sym}; use rustc_ast::ast::RangeLimits; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/ineffective_open_options.rs b/clippy_lints/src/ineffective_open_options.rs index 7c52b4b9e364..a78e08a10057 100644 --- a/clippy_lints/src/ineffective_open_options.rs +++ b/clippy_lints/src/ineffective_open_options.rs @@ -5,8 +5,7 @@ use clippy_utils::{peel_blocks, peel_hir_expr_while, sym}; use rustc_ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/infallible_try_from.rs b/clippy_lints/src/infallible_try_from.rs index 3a5c83383773..56f2c9c39af5 100644 --- a/clippy_lints/src/infallible_try_from.rs +++ b/clippy_lints/src/infallible_try_from.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::sym; use rustc_errors::MultiSpan; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::AssocTag; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/infinite_iter.rs b/clippy_lints/src/infinite_iter.rs index 93372747ce7c..e9b30ab93b9b 100644 --- a/clippy_lints/src/infinite_iter.rs +++ b/clippy_lints/src/infinite_iter.rs @@ -3,8 +3,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::ty::implements_trait; use clippy_utils::{higher, sym}; use rustc_hir::{BorrowKind, Closure, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/inherent_impl.rs b/clippy_lints/src/inherent_impl.rs index 7f653d08a66f..5790c3cce260 100644 --- a/clippy_lints/src/inherent_impl.rs +++ b/clippy_lints/src/inherent_impl.rs @@ -5,8 +5,7 @@ use clippy_utils::{fulfill_or_allowed, is_cfg_test, is_in_cfg_test}; use rustc_data_structures::fx::FxHashMap; use rustc_hir::def_id::{LocalDefId, LocalModId}; use rustc_hir::{Item, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{FileName, Span}; use std::collections::hash_map::Entry; diff --git a/clippy_lints/src/inherent_to_string.rs b/clippy_lints/src/inherent_to_string.rs index 0e0e3645459a..95bc10bc3855 100644 --- a/clippy_lints/src/inherent_to_string.rs +++ b/clippy_lints/src/inherent_to_string.rs @@ -5,8 +5,7 @@ use clippy_utils::{return_ty, trait_ref_of_method}; use rustc_abi::ExternAbi; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{GenericParamKind, ImplItem, ImplItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/init_numbered_fields.rs b/clippy_lints/src/init_numbered_fields.rs index 7a14bbfb9e8b..ed9c2da30b63 100644 --- a/clippy_lints/src/init_numbered_fields.rs +++ b/clippy_lints/src/init_numbered_fields.rs @@ -3,8 +3,7 @@ use clippy_utils::source::{snippet_with_applicability, snippet_with_context}; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Expr, ExprKind, StructTailExpr}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::SyntaxContext; use std::borrow::Cow; diff --git a/clippy_lints/src/inline_fn_without_body.rs b/clippy_lints/src/inline_fn_without_body.rs index f2370a339279..c2e8618a8ff0 100644 --- a/clippy_lints/src/inline_fn_without_body.rs +++ b/clippy_lints/src/inline_fn_without_body.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::sugg::DiagExt as _; use rustc_errors::Applicability; use rustc_hir::{TraitFn, TraitItem, TraitItemKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/inline_trait_bounds.rs b/clippy_lints/src/inline_trait_bounds.rs index 4babe0ce3fc9..9b77d3dc138b 100644 --- a/clippy_lints/src/inline_trait_bounds.rs +++ b/clippy_lints/src/inline_trait_bounds.rs @@ -5,8 +5,7 @@ use rustc_ast::ast::{Fn, FnRetTy, GenericParam, GenericParamKind}; use rustc_ast::visit::{FnCtxt, FnKind}; use rustc_ast::{HasAttrs as _, NodeId}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/int_plus_one.rs b/clippy_lints/src/int_plus_one.rs index 524cb6bf7536..779be48f42f1 100644 --- a/clippy_lints/src/int_plus_one.rs +++ b/clippy_lints/src/int_plus_one.rs @@ -4,8 +4,7 @@ use rustc_ast::ast::{BinOpKind, Expr, ExprKind, LitKind, UnOp}; use rustc_ast::util::parser::AssocOp; use rustc_data_structures::packed::Pu128; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/item_name_repetitions.rs b/clippy_lints/src/item_name_repetitions.rs index 9569b50a3207..a78faf0be976 100644 --- a/clippy_lints/src/item_name_repetitions.rs +++ b/clippy_lints/src/item_name_repetitions.rs @@ -4,8 +4,7 @@ use clippy_utils::str_utils::{camel_case_split, count_match_end, count_match_sta use clippy_utils::{is_bool, is_from_proc_macro}; use rustc_data_structures::fx::FxHashSet; use rustc_hir::{Body, EnumDef, FieldDef, Item, ItemKind, QPath, TyKind, UseKind, Variant, VariantData}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::symbol::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/items_after_statements.rs b/clippy_lints/src/items_after_statements.rs index afb8863f1b94..c5ac4fd05f3e 100644 --- a/clippy_lints/src/items_after_statements.rs +++ b/clippy_lints/src/items_after_statements.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_hir; use rustc_hir::{Block, ItemKind, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/items_after_test_module.rs b/clippy_lints/src/items_after_test_module.rs index 979fa0c16600..9cd71c62eb32 100644 --- a/clippy_lints/src/items_after_test_module.rs +++ b/clippy_lints/src/items_after_test_module.rs @@ -3,8 +3,7 @@ use clippy_utils::source::SpanExt as _; use clippy_utils::{fulfill_or_allowed, is_cfg_test, is_from_proc_macro}; use rustc_errors::{Applicability, SuggestionStyle}; use rustc_hir::{HirId, Item, ItemKind, Mod}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::hygiene::AstPass; use rustc_span::{ExpnKind, sym}; diff --git a/clippy_lints/src/iter_not_returning_iterator.rs b/clippy_lints/src/iter_not_returning_iterator.rs index 06ad45316811..fcae20576895 100644 --- a/clippy_lints/src/iter_not_returning_iterator.rs +++ b/clippy_lints/src/iter_not_returning_iterator.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::ty::implements_trait; use rustc_hir::def_id::LocalDefId; use rustc_hir::{FnSig, ImplItem, ImplItemKind, Item, ItemKind, Node, TraitItem, TraitItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::Unnormalized; -use rustc_session::declare_lint_pass; use rustc_span::{Symbol, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/iter_over_hash_type.rs b/clippy_lints/src/iter_over_hash_type.rs index 1813d682dde5..3dba739e6827 100644 --- a/clippy_lints/src/iter_over_hash_type.rs +++ b/clippy_lints/src/iter_over_hash_type.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::higher::ForLoop; use clippy_utils::res::MaybeDef as _; use clippy_utils::sym; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/iter_without_into_iter.rs b/clippy_lints/src/iter_without_into_iter.rs index a7ba9755dba7..3c49595f8321 100644 --- a/clippy_lints/src/iter_without_into_iter.rs +++ b/clippy_lints/src/iter_without_into_iter.rs @@ -5,9 +5,8 @@ use clippy_utils::{get_parent_as_impl, sym}; use rustc_ast::Mutability; use rustc_errors::Applicability; use rustc_hir::{FnRetTy, ImplItemKind, ImplicitSelfKind, ItemKind, TyKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/large_const_arrays.rs b/clippy_lints/src/large_const_arrays.rs index a2acd54ba44f..4d8ef09d17da 100644 --- a/clippy_lints/src/large_const_arrays.rs +++ b/clippy_lints/src/large_const_arrays.rs @@ -2,10 +2,9 @@ use clippy_config::Conf; use clippy_utils::diagnostics::span_lint_and_then; use rustc_errors::Applicability; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::layout::LayoutOf as _; use rustc_middle::ty::{self, Ty, Unnormalized}; -use rustc_session::impl_lint_pass; use rustc_span::{BytePos, Pos as _, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/large_enum_variant.rs b/clippy_lints/src/large_enum_variant.rs index f5af7acdcf51..947657bef5da 100644 --- a/clippy_lints/src/large_enum_variant.rs +++ b/clippy_lints/src/large_enum_variant.rs @@ -5,9 +5,8 @@ use clippy_utils::source::snippet_with_applicability; use clippy_utils::ty::{AdtVariantInfo, approx_ty_size, is_copy}; use rustc_errors::Applicability; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/large_futures.rs b/clippy_lints/src/large_futures.rs index 7f39f23b362a..a3ced258e227 100644 --- a/clippy_lints/src/large_futures.rs +++ b/clippy_lints/src/large_futures.rs @@ -6,9 +6,8 @@ use rustc_abi::Size; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind, MatchSource}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/large_include_file.rs b/clippy_lints/src/large_include_file.rs index 3c35c2fc9c82..4b53714e4f1e 100644 --- a/clippy_lints/src/large_include_file.rs +++ b/clippy_lints/src/large_include_file.rs @@ -5,8 +5,7 @@ use clippy_utils::source::snippet_opt; use clippy_utils::sym; use rustc_ast::{AttrArgs, AttrKind, Attribute, LitKind}; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/large_stack_arrays.rs b/clippy_lints/src/large_stack_arrays.rs index f304673ccecd..49d4fe478cdf 100644 --- a/clippy_lints/src/large_stack_arrays.rs +++ b/clippy_lints/src/large_stack_arrays.rs @@ -6,10 +6,9 @@ use clippy_utils::macros::macro_backtrace; use clippy_utils::source::snippet; use clippy_utils::{is_from_proc_macro, sym}; use rustc_hir::{Expr, ExprKind, Item, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; use rustc_middle::ty::layout::LayoutOf as _; -use rustc_session::impl_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/large_stack_frames.rs b/clippy_lints/src/large_stack_frames.rs index 70c2ff94e08e..3d3539bc7045 100644 --- a/clippy_lints/src/large_stack_frames.rs +++ b/clippy_lints/src/large_stack_frames.rs @@ -9,8 +9,7 @@ use rustc_hir::def_id::LocalDefId; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl}; use rustc_lexer::is_ident; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Span, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/legacy_numeric_constants.rs b/clippy_lints/src/legacy_numeric_constants.rs index 0b7aaa707eec..7f83149a222c 100644 --- a/clippy_lints/src/legacy_numeric_constants.rs +++ b/clippy_lints/src/legacy_numeric_constants.rs @@ -7,8 +7,7 @@ use hir::def_id::DefId; use rustc_errors::Applicability; use rustc_hir as hir; use rustc_hir::{ExprKind, Item, ItemKind, QPath, UseKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Symbol; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/len_without_is_empty.rs b/clippy_lints/src/len_without_is_empty.rs index 0e80fc324280..f05967188bdd 100644 --- a/clippy_lints/src/len_without_is_empty.rs +++ b/clippy_lints/src/len_without_is_empty.rs @@ -8,9 +8,8 @@ use rustc_hir::{ FnRetTy, GenericArg, GenericBound, HirId, ImplItem, ImplItemKind, ImplicitSelfKind, Item, ItemKind, Mutability, Node, OpaqueTyOrigin, PathSegment, PrimTy, QPath, TraitItemId, TyKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, FnSig, Ty}; -use rustc_session::declare_lint_pass; use rustc_span::symbol::kw; use rustc_span::{Ident, Span, Symbol}; use rustc_trait_selection::traits::supertrait_def_ids; diff --git a/clippy_lints/src/len_zero.rs b/clippy_lints/src/len_zero.rs index 7718740eee36..28b9c45a8dea 100644 --- a/clippy_lints/src/len_zero.rs +++ b/clippy_lints/src/len_zero.rs @@ -10,9 +10,8 @@ use rustc_ast::ast::LitKind; use rustc_errors::Applicability; use rustc_hir::def_id::DefId; use rustc_hir::{BinOpKind, Expr, ExprKind, PatExprKind, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::{Span, Spanned, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/let_if_seq.rs b/clippy_lints/src/let_if_seq.rs index be65eaac3b5b..c965a6f70990 100644 --- a/clippy_lints/src/let_if_seq.rs +++ b/clippy_lints/src/let_if_seq.rs @@ -5,8 +5,7 @@ use clippy_utils::visitors::is_local_used; use rustc_errors::Applicability; use rustc_hir as hir; use rustc_hir::{BindingMode, Mutability}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/let_underscore.rs b/clippy_lints/src/let_underscore.rs index 97a79cfccb9e..38e1f8c01176 100644 --- a/clippy_lints/src/let_underscore.rs +++ b/clippy_lints/src/let_underscore.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::ty::{describe_must_use_type, implements_trait, opt_must_use_path}; use clippy_utils::{is_from_proc_macro, is_must_use_func_call, paths}; use rustc_hir::{LetStmt, LocalSource, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{GenericArgKind, IsSuggestable as _}; -use rustc_session::declare_lint_pass; use rustc_span::{BytePos, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/let_with_type_underscore.rs b/clippy_lints/src/let_with_type_underscore.rs index 99d9b5d6011a..d92086986e35 100644 --- a/clippy_lints/src/let_with_type_underscore.rs +++ b/clippy_lints/src/let_with_type_underscore.rs @@ -3,8 +3,7 @@ use clippy_utils::is_from_proc_macro; use clippy_utils::source::{IntoSpan as _, SpanExt as _}; use rustc_ast::{Local, TyKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/lib.rs b/clippy_lints/src/lib.rs index cb37d8b58d1d..f7f534177262 100644 --- a/clippy_lints/src/lib.rs +++ b/clippy_lints/src/lib.rs @@ -39,8 +39,8 @@ extern crate rustc_lint; extern crate rustc_middle; extern crate rustc_parse_format; extern crate rustc_resolve; -extern crate rustc_session; extern crate rustc_span; +extern crate rustc_structures; extern crate rustc_target; extern crate rustc_trait_selection; diff --git a/clippy_lints/src/lifetimes.rs b/clippy_lints/src/lifetimes.rs index 9fe12ead9ab6..cdc8d8e9a45f 100644 --- a/clippy_lints/src/lifetimes.rs +++ b/clippy_lints/src/lifetimes.rs @@ -19,10 +19,9 @@ use rustc_hir::{ PolyTraitRef, PredicateOrigin, TraitFn, TraitItem, TraitItemKind, TraitRef, Ty, TyKind, WhereBoundPredicate, WherePredicate, WherePredicateKind, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::hir::nested_filter as middle_nested_filter; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; use rustc_span::symbol::{Ident, kw}; diff --git a/clippy_lints/src/literal_representation.rs b/clippy_lints/src/literal_representation.rs index f6e0fa784baa..2babe3c4f642 100644 --- a/clippy_lints/src/literal_representation.rs +++ b/clippy_lints/src/literal_representation.rs @@ -5,8 +5,7 @@ use clippy_utils::source::SpanExt as _; use rustc_ast::ast::{Expr, ExprKind, LitKind}; use rustc_ast::token; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, Lint, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, Lint, LintContext as _, impl_lint_pass}; use rustc_span::Span; use std::iter; diff --git a/clippy_lints/src/literal_string_with_formatting_args.rs b/clippy_lints/src/literal_string_with_formatting_args.rs index 2751a7edc1ae..c9b278599d77 100644 --- a/clippy_lints/src/literal_string_with_formatting_args.rs +++ b/clippy_lints/src/literal_string_with_formatting_args.rs @@ -1,9 +1,8 @@ use rustc_ast::{LitKind, StrStyle}; use rustc_hir::{Expr, ExprKind}; use rustc_lexer::is_ident; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_parse_format::{ParseMode, Parser, Piece}; -use rustc_session::declare_lint_pass; use rustc_span::{BytePos, Span}; use clippy_utils::diagnostics::span_lint; diff --git a/clippy_lints/src/loops/mod.rs b/clippy_lints/src/loops/mod.rs index 64970ee87d03..a4d3fe9e2296 100644 --- a/clippy_lints/src/loops/mod.rs +++ b/clippy_lints/src/loops/mod.rs @@ -31,8 +31,7 @@ use clippy_utils::res::{MaybeDef as _, MaybeTypeckRes as _}; use clippy_utils::{higher, sym}; use rustc_ast::Label; use rustc_hir::{Expr, ExprKind, LoopSource, Pat}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; use utils::{IncrementVisitor, InitializeVisitor, make_iterator_snippet}; diff --git a/clippy_lints/src/macro_metavars_in_unsafe.rs b/clippy_lints/src/macro_metavars_in_unsafe.rs index 2a68c582effc..0c62b4e5897f 100644 --- a/clippy_lints/src/macro_metavars_in_unsafe.rs +++ b/clippy_lints/src/macro_metavars_in_unsafe.rs @@ -5,8 +5,7 @@ use itertools::Itertools as _; use rustc_hir::def_id::LocalDefId; use rustc_hir::intravisit::{Visitor, walk_block, walk_expr, walk_stmt}; use rustc_hir::{BlockCheckMode, Expr, ExprKind, HirId, Stmt, UnsafeSource, find_attr}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{Span, SyntaxContext}; use std::collections::BTreeMap; use std::collections::btree_map::Entry; diff --git a/clippy_lints/src/macro_use.rs b/clippy_lints/src/macro_use.rs index e746ea9cbfc7..af33d1f7a8aa 100644 --- a/clippy_lints/src/macro_use.rs +++ b/clippy_lints/src/macro_use.rs @@ -4,8 +4,7 @@ use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{self as hir, AmbigArg, find_attr}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; use rustc_span::edition::Edition; use std::collections::BTreeMap; diff --git a/clippy_lints/src/main_recursion.rs b/clippy_lints/src/main_recursion.rs index ecdeedc955a9..26576693a072 100644 --- a/clippy_lints/src/main_recursion.rs +++ b/clippy_lints/src/main_recursion.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::source::snippet; use clippy_utils::{is_entrypoint_fn, is_no_std_crate}; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_abs_diff.rs b/clippy_lints/src/manual_abs_diff.rs index d55a0d8fa86e..0696d04e5117 100644 --- a/clippy_lints/src/manual_abs_diff.rs +++ b/clippy_lints/src/manual_abs_diff.rs @@ -8,9 +8,8 @@ use clippy_utils::ty::peel_and_count_ty_refs; use clippy_utils::{eq_expr_value, peel_blocks, span_contains_comment, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_assert.rs b/clippy_lints/src/manual_assert.rs index 2a0711d8ebbc..5b5f55124725 100644 --- a/clippy_lints/src/manual_assert.rs +++ b/clippy_lints/src/manual_assert.rs @@ -4,8 +4,7 @@ use clippy_utils::source::{indent_of, reindent_multiline}; use clippy_utils::{higher, is_else_clause, is_parent_stmt, peel_blocks_with_stmt, span_extract_comment, sugg}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_assert_eq.rs b/clippy_lints/src/manual_assert_eq.rs index fc61912ec3d4..324976632d8f 100644 --- a/clippy_lints/src/manual_assert_eq.rs +++ b/clippy_lints/src/manual_assert_eq.rs @@ -6,9 +6,8 @@ use clippy_utils::ty::{deref_chain, implements_trait}; use clippy_utils::{is_in_const_context, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_async_fn.rs b/clippy_lints/src/manual_async_fn.rs index de07cea28bf5..91d8a4b98d38 100644 --- a/clippy_lints/src/manual_async_fn.rs +++ b/clippy_lints/src/manual_async_fn.rs @@ -6,10 +6,9 @@ use rustc_hir::{ Block, Body, Closure, ClosureKind, CoroutineDesugaring, CoroutineKind, CoroutineSource, Expr, ExprKind, FnDecl, FnRetTy, GenericBound, Node, OpaqueTy, TraitRef, Ty, TyKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::middle::resolve_bound_vars::ResolvedArg; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, sym}; diff --git a/clippy_lints/src/manual_bits.rs b/clippy_lints/src/manual_bits.rs index da0d9be1cb7f..0ec519edb76e 100644 --- a/clippy_lints/src/manual_bits.rs +++ b/clippy_lints/src/manual_bits.rs @@ -7,9 +7,8 @@ use rustc_ast::ast::LitKind; use rustc_data_structures::packed::Pu128; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, GenericArg, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::Span; declare_clippy_lint! { @@ -101,8 +100,9 @@ fn get_size_of_ty<'tcx>(cx: &LateContext<'tcx>, expr: &'tcx Expr<'_>) -> Option< { cx.typeck_results() .node_args(count_func.hir_id) - .types() - .next() + .iter() + .next() // the `T` in `size_of::` + .and_then(ty::GenericArg::as_type) .map(|resolved_ty| (real_ty_span, resolved_ty)) } else { None diff --git a/clippy_lints/src/manual_checked_ops.rs b/clippy_lints/src/manual_checked_ops.rs index 0bc1c192b571..44e84915e3a7 100644 --- a/clippy_lints/src/manual_checked_ops.rs +++ b/clippy_lints/src/manual_checked_ops.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::visitors::{Descend, for_each_expr_without_closures}; use clippy_utils::{SpanlessEq, is_integer_literal}; use rustc_hir::{AssignOpKind, BinOpKind, Block, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::SyntaxContext; use std::ops::ControlFlow; diff --git a/clippy_lints/src/manual_clamp.rs b/clippy_lints/src/manual_clamp.rs index 5f0414e4a269..6af05ad0ad76 100644 --- a/clippy_lints/src/manual_clamp.rs +++ b/clippy_lints/src/manual_clamp.rs @@ -12,9 +12,8 @@ use itertools::Itertools as _; use rustc_errors::{Applicability, Diag}; use rustc_hir::def::Res; use rustc_hir::{Arm, BinOpKind, Block, Expr, ExprKind, HirId, PatKind, PathSegment, PrimTy, QPath, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::impl_lint_pass; use rustc_span::{Span, SyntaxContext}; use std::cmp::Ordering; use std::ops::Deref; diff --git a/clippy_lints/src/manual_float_methods.rs b/clippy_lints/src/manual_float_methods.rs index a7e79293738c..383595004349 100644 --- a/clippy_lints/src/manual_float_methods.rs +++ b/clippy_lints/src/manual_float_methods.rs @@ -9,9 +9,8 @@ use rustc_errors::Applicability; use rustc_hir::def::DefKind; use rustc_hir::def_id::DefId; use rustc_hir::{BinOpKind, Constness, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, Lint, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, Lint, LintContext as _, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_hash_one.rs b/clippy_lints/src/manual_hash_one.rs index c8d220fa81fb..07e943f82f8e 100644 --- a/clippy_lints/src/manual_hash_one.rs +++ b/clippy_lints/src/manual_hash_one.rs @@ -7,8 +7,7 @@ use clippy_utils::sym; use clippy_utils::visitors::{is_local_used, local_used_once}; use rustc_errors::Applicability; use rustc_hir::{BindingMode, ExprKind, LetStmt, Node, PatKind, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_ignore_case_cmp.rs b/clippy_lints/src/manual_ignore_case_cmp.rs index 5e761eedb3c9..2173617bd5aa 100644 --- a/clippy_lints/src/manual_ignore_case_cmp.rs +++ b/clippy_lints/src/manual_ignore_case_cmp.rs @@ -8,10 +8,9 @@ use rustc_errors::Applicability; use rustc_hir::ExprKind::{Binary, Lit, MethodCall}; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{BinOpKind, Expr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; use rustc_middle::ty::{Ty, UintTy}; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_ilog2.rs b/clippy_lints/src/manual_ilog2.rs index 6aba53670529..9a95f9239873 100644 --- a/clippy_lints/src/manual_ilog2.rs +++ b/clippy_lints/src/manual_ilog2.rs @@ -7,9 +7,8 @@ use rustc_ast::LitKind; use rustc_data_structures::packed::Pu128; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_is_ascii_check.rs b/clippy_lints/src/manual_is_ascii_check.rs index 8f8492c2676e..a20e2f1d44c1 100644 --- a/clippy_lints/src/manual_is_ascii_check.rs +++ b/clippy_lints/src/manual_is_ascii_check.rs @@ -9,9 +9,8 @@ use rustc_ast::LitKind::{Byte, Char}; use rustc_ast::ast::RangeLimits; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, Lit, Node, Param, PatExpr, PatExprKind, PatKind, RangeEnd}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_is_power_of_two.rs b/clippy_lints/src/manual_is_power_of_two.rs index 96942eb29b62..d9205a437b89 100644 --- a/clippy_lints/src/manual_is_power_of_two.rs +++ b/clippy_lints/src/manual_is_power_of_two.rs @@ -6,9 +6,8 @@ use clippy_utils::ty::ty_from_hir_ty; use clippy_utils::{SpanlessEq, is_in_const_context, is_integer_literal, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_main_separator_str.rs b/clippy_lints/src/manual_main_separator_str.rs index 1db07ba04201..c209083a0b2a 100644 --- a/clippy_lints/src/manual_main_separator_str.rs +++ b/clippy_lints/src/manual_main_separator_str.rs @@ -6,9 +6,8 @@ use clippy_utils::{peel_hir_expr_refs, sym}; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Expr, ExprKind, Mutability, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_non_exhaustive.rs b/clippy_lints/src/manual_non_exhaustive.rs index b916a1f127d9..d4f20fa15c69 100644 --- a/clippy_lints/src/manual_non_exhaustive.rs +++ b/clippy_lints/src/manual_non_exhaustive.rs @@ -8,8 +8,7 @@ use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::def::{CtorKind, CtorOf, DefKind, Res}; use rustc_hir::{Expr, ExprKind, Item, ItemKind, QPath, TyKind, VariantData, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/manual_noop_waker.rs b/clippy_lints/src/manual_noop_waker.rs index f6d119488cb6..deedde8cdc30 100644 --- a/clippy_lints/src/manual_noop_waker.rs +++ b/clippy_lints/src/manual_noop_waker.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::msrvs::{self, Msrv}; use clippy_utils::{is_empty_block, sym}; use rustc_hir::{ImplItemKind, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_option_as_slice.rs b/clippy_lints/src/manual_option_as_slice.rs index d88bb232ac61..c4a3ac96b1f8 100644 --- a/clippy_lints/src/manual_option_as_slice.rs +++ b/clippy_lints/src/manual_option_as_slice.rs @@ -6,8 +6,7 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::{as_some_pattern, is_none_pattern, msrvs, peel_hir_expr_refs, sym}; use rustc_errors::Applicability; use rustc_hir::{Arm, Expr, ExprKind, Pat, PatKind, QPath, is_range_literal}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_pop_if.rs b/clippy_lints/src/manual_pop_if.rs index 0b6f2002e9a4..0fb7d0123dd2 100644 --- a/clippy_lints/src/manual_pop_if.rs +++ b/clippy_lints/src/manual_pop_if.rs @@ -9,9 +9,8 @@ use rustc_ast::LitKind; use rustc_errors::{Applicability, MultiSpan}; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{BlockCheckMode, Expr, ExprKind, PatKind, StmtKind, UnsafeSource}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::{BytePos, Span, Symbol}; use std::fmt; use std::ops::ControlFlow; diff --git a/clippy_lints/src/manual_range_patterns.rs b/clippy_lints/src/manual_range_patterns.rs index 00b5a194a4aa..7fcd42c60e3a 100644 --- a/clippy_lints/src/manual_range_patterns.rs +++ b/clippy_lints/src/manual_range_patterns.rs @@ -4,8 +4,7 @@ use rustc_ast::LitKind; use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::{PatExpr, PatExprKind, PatKind, RangeEnd}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::{DUMMY_SP, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_rem_euclid.rs b/clippy_lints/src/manual_rem_euclid.rs index eea2553615a6..4eaf0ad55d85 100644 --- a/clippy_lints/src/manual_rem_euclid.rs +++ b/clippy_lints/src/manual_rem_euclid.rs @@ -7,8 +7,7 @@ use clippy_utils::res::MaybeResPath as _; use clippy_utils::source::snippet_with_context; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, Node, TyKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_retain.rs b/clippy_lints/src/manual_retain.rs index c8a1968266e3..cf8d8857841e 100644 --- a/clippy_lints/src/manual_retain.rs +++ b/clippy_lints/src/manual_retain.rs @@ -9,8 +9,7 @@ use rustc_hir as hir; use rustc_hir::ExprKind::Assign; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::def_id::DefId; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; use rustc_span::symbol::Symbol; diff --git a/clippy_lints/src/manual_rotate.rs b/clippy_lints/src/manual_rotate.rs index a3a937ad713d..7d5f41b2bcf1 100644 --- a/clippy_lints/src/manual_rotate.rs +++ b/clippy_lints/src/manual_rotate.rs @@ -5,9 +5,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::sugg; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_slice_size_calculation.rs b/clippy_lints/src/manual_slice_size_calculation.rs index f7aadff342bb..dbd25d75e4d7 100644 --- a/clippy_lints/src/manual_slice_size_calculation.rs +++ b/clippy_lints/src/manual_slice_size_calculation.rs @@ -6,9 +6,8 @@ use clippy_utils::ty::peel_and_count_ty_refs; use clippy_utils::{expr_or_init, is_in_const_context, std_or_core, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/manual_string_new.rs b/clippy_lints/src/manual_string_new.rs index a3ff19d34316..35f2ee87baab 100644 --- a/clippy_lints/src/manual_string_new.rs +++ b/clippy_lints/src/manual_string_new.rs @@ -3,9 +3,8 @@ use clippy_utils::sym; use rustc_ast::LitKind; use rustc_errors::Applicability::MachineApplicable; use rustc_hir::{Expr, ExprKind, PathSegment, QPath, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/manual_strip.rs b/clippy_lints/src/manual_strip.rs index 953ff9f4b396..a573c3da8779 100644 --- a/clippy_lints/src/manual_strip.rs +++ b/clippy_lints/src/manual_strip.rs @@ -12,9 +12,8 @@ use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::intravisit::{Visitor, walk_expr, walk_pat}; use rustc_hir::{BinOpKind, BorrowKind, Expr, ExprKind, Node, PatKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::{Spanned, Symbol, SyntaxContext}; use std::iter; diff --git a/clippy_lints/src/manual_take.rs b/clippy_lints/src/manual_take.rs index b1eef9dd23c5..b71ffeabcc5b 100644 --- a/clippy_lints/src/manual_take.rs +++ b/clippy_lints/src/manual_take.rs @@ -6,8 +6,7 @@ use clippy_utils::source::snippet_with_context; use rustc_ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{Block, Expr, ExprKind, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/map_unit_fn.rs b/clippy_lints/src/map_unit_fn.rs index 86a175aa2a64..9187cb6fc98c 100644 --- a/clippy_lints/src/map_unit_fn.rs +++ b/clippy_lints/src/map_unit_fn.rs @@ -4,9 +4,8 @@ use clippy_utils::source::{snippet, snippet_with_applicability, snippet_with_con use clippy_utils::{iter_input_pats, method_chain_args}; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; use rustc_span::{Span, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/match_result_ok.rs b/clippy_lints/src/match_result_ok.rs index ad4bc210463d..a25766e2ba17 100644 --- a/clippy_lints/src/match_result_ok.rs +++ b/clippy_lints/src/match_result_ok.rs @@ -4,8 +4,7 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::{as_some_pattern, higher, sym}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/matches/mod.rs b/clippy_lints/src/matches/mod.rs index ef4fff32bb81..f1c50b55f9ee 100644 --- a/clippy_lints/src/matches/mod.rs +++ b/clippy_lints/src/matches/mod.rs @@ -32,8 +32,7 @@ use clippy_utils::{ }; use rustc_hir::{Arm, Expr, ExprKind, LetStmt, MatchSource, Pat, PatKind}; use rustc_lexer::{TokenKind, is_whitespace}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/mem_replace.rs b/clippy_lints/src/mem_replace.rs index d189d1d8c868..5083d0422c59 100644 --- a/clippy_lints/src/mem_replace.rs +++ b/clippy_lints/src/mem_replace.rs @@ -10,8 +10,7 @@ use clippy_utils::{ }; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/methods/lib.rs b/clippy_lints/src/methods/lib.rs index 84038283bcf8..9246ed331ee9 100644 --- a/clippy_lints/src/methods/lib.rs +++ b/clippy_lints/src/methods/lib.rs @@ -22,7 +22,7 @@ impl SelfKind { } else if let ty::Adt(adt_def, args) = ty.kind() && matches!(cx.tcx.get_diagnostic_name(adt_def.did()), Some(sym::Rc | sym::Arc)) { - args.types().next() == Some(parent_ty) + args.iter().next().and_then(ty::GenericArg::as_type) == Some(parent_ty) } else { false } diff --git a/clippy_lints/src/methods/map_collect_result_unit.rs b/clippy_lints/src/methods/map_collect_result_unit.rs index 6f556fe592af..155f31d6528c 100644 --- a/clippy_lints/src/methods/map_collect_result_unit.rs +++ b/clippy_lints/src/methods/map_collect_result_unit.rs @@ -14,7 +14,7 @@ pub(super) fn check(cx: &LateContext<'_>, expr: &hir::Expr<'_>, iter: &hir::Expr let collect_ret_ty = cx.typeck_results().expr_ty(expr); if collect_ret_ty.is_diag_item(cx, sym::Result) && let ty::Adt(_, args) = collect_ret_ty.kind() - && let Some(result_t) = args.types().next() + && let Some(result_t) = args.iter().next().and_then(ty::GenericArg::as_type) && result_t.is_unit() // get parts for snippet { diff --git a/clippy_lints/src/methods/mod.rs b/clippy_lints/src/methods/mod.rs index 4a3983b5b9ae..84decf478295 100644 --- a/clippy_lints/src/methods/mod.rs +++ b/clippy_lints/src/methods/mod.rs @@ -163,9 +163,8 @@ use clippy_utils::res::{MaybeDef as _, MaybeTypeckRes as _}; use clippy_utils::{contains_return, iter_input_pats, peel_blocks, sym}; use rustc_data_structures::fx::FxHashSet; use rustc_hir::{self as hir, Expr, ExprKind, Node, Stmt, StmtKind, TraitItem, TraitItemKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::TraitRef; -use rustc_session::impl_lint_pass; use rustc_span::{Span, Symbol}; use crate::matches::manual_filter; diff --git a/clippy_lints/src/methods/ok_expect.rs b/clippy_lints/src/methods/ok_expect.rs index 4982506036ef..182757f347d8 100644 --- a/clippy_lints/src/methods/ok_expect.rs +++ b/clippy_lints/src/methods/ok_expect.rs @@ -37,7 +37,7 @@ pub(super) fn check(cx: &LateContext<'_>, expr: &hir::Expr<'_>, recv: &hir::Expr /// Given a `Result` type, return its error type (`E`). fn get_error_type<'a>(cx: &LateContext<'_>, ty: Ty<'a>) -> Option> { match ty.kind() { - ty::Adt(adt, args) if cx.tcx.is_diagnostic_item(sym::Result, adt.did()) => args.types().nth(1), + ty::Adt(adt, args) if cx.tcx.is_diagnostic_item(sym::Result, adt.did()) => args.iter().nth(1)?.as_type(), _ => None, } } diff --git a/clippy_lints/src/methods/unnecessary_to_owned.rs b/clippy_lints/src/methods/unnecessary_to_owned.rs index 8ae27b2342d1..cd0bc5a67f0c 100644 --- a/clippy_lints/src/methods/unnecessary_to_owned.rs +++ b/clippy_lints/src/methods/unnecessary_to_owned.rs @@ -17,7 +17,7 @@ use rustc_lint::LateContext; use rustc_middle::mir::Mutability; use rustc_middle::ty::adjustment::{Adjust, Adjustment, DerefAdjustKind, OverloadedDeref}; use rustc_middle::ty::{ - self, ClauseKind, GenericArg, GenericArgKind, GenericArgsRef, ParamTy, ProjectionPredicate, TraitPredicate, Ty, + self, ClauseKind, GenericArg, GenericArgKind, GenericArgsRef, ParamTy, ProjectionClause, TraitClause, Ty, }; use rustc_span::Symbol; use rustc_trait_selection::traits::query::evaluate_obligation::InferCtxtExt as _; @@ -473,12 +473,12 @@ fn get_callee_generic_args_and_args<'tcx>( None } -/// Returns the `TraitPredicate`s and `ProjectionPredicate`s for a function's input type. +/// Returns the `TraitClause`s and `ProjectionClause`s for a function's input type. fn get_input_traits_and_projections<'tcx>( cx: &LateContext<'tcx>, callee_def_id: DefId, input: Ty<'tcx>, -) -> (Vec>, Vec>) { +) -> (Vec>, Vec>) { let mut trait_predicates = Vec::new(); let mut projection_predicates = Vec::new(); for clause in cx.tcx.param_env(callee_def_id).caller_bounds() { @@ -740,7 +740,7 @@ fn check_borrow_predicate<'tcx>(cx: &LateContext<'tcx>, expr: &Expr<'tcx>) { && let Some(borrow_id) = cx.tcx.get_diagnostic_item(sym::Borrow) && cx.tcx.clauses_of(method_def_id).clauses.iter().any(|(clause, _)| { if let ClauseKind::Trait(trait_pred) = clause.kind().skip_binder() - && trait_pred.polarity == ty::PredicatePolarity::Positive + && trait_pred.polarity == ty::ClausePolarity::Positive && trait_pred.trait_ref.def_id == borrow_id { true diff --git a/clippy_lints/src/min_ident_chars.rs b/clippy_lints/src/min_ident_chars.rs index b127eb14413f..28fd8b33b710 100644 --- a/clippy_lints/src/min_ident_chars.rs +++ b/clippy_lints/src/min_ident_chars.rs @@ -9,8 +9,7 @@ use rustc_hir::{ FieldDef, HirId, ImplItem, ImplItemImplKind, ImplItemKind, Item, ItemKind, Node, Pat, PatKind, TraitFn, TraitItem, TraitItemKind, UseKind, Variant, }; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Ident, Symbol}; use std::borrow::Cow::{self, Borrowed, Owned}; diff --git a/clippy_lints/src/minmax.rs b/clippy_lints/src/minmax.rs index 97dabf4fb5a6..338838903365 100644 --- a/clippy_lints/src/minmax.rs +++ b/clippy_lints/src/minmax.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::res::{MaybeDef as _, MaybeTypeckRes as _}; use clippy_utils::sym; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::SyntaxContext; use std::cmp::Ordering::{Equal, Greater, Less}; diff --git a/clippy_lints/src/misc.rs b/clippy_lints/src/misc.rs index c46fc7fda202..ddc61b244982 100644 --- a/clippy_lints/src/misc.rs +++ b/clippy_lints/src/misc.rs @@ -5,9 +5,8 @@ use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::def_id::LocalDefId; use rustc_hir::{BinOpKind, Expr, ExprKind, HirId, Node, QPath, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/misc_early/mod.rs b/clippy_lints/src/misc_early/mod.rs index cdc78af6737b..c47402f72add 100644 --- a/clippy_lints/src/misc_early/mod.rs +++ b/clippy_lints/src/misc_early/mod.rs @@ -10,8 +10,7 @@ mod zero_prefixed_literal; use clippy_utils::source::snippet_opt; use rustc_ast::ast::{Expr, ExprKind, Generics, LitFloatType, LitIntType, LitKind, Pat}; use rustc_ast::token; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/mismatching_type_param_order.rs b/clippy_lints/src/mismatching_type_param_order.rs index 70eab98bd067..dfff0024f85e 100644 --- a/clippy_lints/src/mismatching_type_param_order.rs +++ b/clippy_lints/src/mismatching_type_param_order.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_help; use rustc_data_structures::fx::FxHashMap; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{GenericArg, Item, ItemKind, QPath, Ty, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::GenericParamDefKind; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/missing_assert_message.rs b/clippy_lints/src/missing_assert_message.rs index dcb185b51a09..5b6226b797f4 100644 --- a/clippy_lints/src/missing_assert_message.rs +++ b/clippy_lints/src/missing_assert_message.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::is_in_test; use clippy_utils::macros::{find_assert_args, find_assert_eq_args, root_macro_call_first_node}; use rustc_hir::Expr; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/missing_asserts_for_indexing.rs b/clippy_lints/src/missing_asserts_for_indexing.rs index 005f1c929a9a..98f8b63532cc 100644 --- a/clippy_lints/src/missing_asserts_for_indexing.rs +++ b/clippy_lints/src/missing_asserts_for_indexing.rs @@ -13,8 +13,7 @@ use rustc_data_structures::packed::Pu128; use rustc_data_structures::unhash::UnindexMap; use rustc_errors::{Applicability, Diag}; use rustc_hir::{Block, Body, Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{Span, Spanned, Symbol, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/missing_const_for_fn.rs b/clippy_lints/src/missing_const_for_fn.rs index f590f708b580..682d5bb12f6b 100644 --- a/clippy_lints/src/missing_const_for_fn.rs +++ b/clippy_lints/src/missing_const_for_fn.rs @@ -10,9 +10,8 @@ use rustc_errors::Applicability; use rustc_hir::def_id::CRATE_DEF_ID; use rustc_hir::intravisit::FnKind; use rustc_hir::{self as hir, Body, Constness, FnDecl, GenericParamKind, OwnerId}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/missing_const_for_thread_local.rs b/clippy_lints/src/missing_const_for_thread_local.rs index 6c5124ad21de..81a48f9a92a1 100644 --- a/clippy_lints/src/missing_const_for_thread_local.rs +++ b/clippy_lints/src/missing_const_for_thread_local.rs @@ -7,8 +7,7 @@ use clippy_utils::source::snippet; use clippy_utils::{fn_has_unsatisfiable_clauses, peel_blocks, sym}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, intravisit}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/missing_doc.rs b/clippy_lints/src/missing_doc.rs index 694a473ff5a9..30d88207b863 100644 --- a/clippy_lints/src/missing_doc.rs +++ b/clippy_lints/src/missing_doc.rs @@ -6,10 +6,9 @@ use rustc_hir::def_id::LocalDefId; use rustc_hir::{ AttrArgs, Attribute, Body, BodyId, FieldDef, HirId, ImplItem, Item, ItemKind, Node, TraitItem, Variant, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::middle::privacy::Level; use rustc_middle::ty::Visibility; -use rustc_session::impl_lint_pass; use rustc_span::def_id::CRATE_DEF_ID; use rustc_span::sym; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/missing_enforced_import_rename.rs b/clippy_lints/src/missing_enforced_import_rename.rs index c8e3226ea22e..bb40f50bef09 100644 --- a/clippy_lints/src/missing_enforced_import_rename.rs +++ b/clippy_lints/src/missing_enforced_import_rename.rs @@ -6,9 +6,8 @@ use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::def_id::DefIdMap; use rustc_hir::{Item, ItemKind, UseKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::TyCtxt; -use rustc_session::impl_lint_pass; use rustc_span::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/missing_fields_in_debug.rs b/clippy_lints/src/missing_fields_in_debug.rs index 8019dbd60e82..a5d8caaf2baa 100644 --- a/clippy_lints/src/missing_fields_in_debug.rs +++ b/clippy_lints/src/missing_fields_in_debug.rs @@ -9,9 +9,8 @@ use rustc_data_structures::fx::FxHashSet; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Block, Expr, ExprKind, Impl, Item, ItemKind, Node, QPath, TyKind, VariantData}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{Ty, TypeckResults}; -use rustc_session::declare_lint_pass; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/missing_inline.rs b/clippy_lints/src/missing_inline.rs index 32a86db67c19..8b8a471cffbc 100644 --- a/clippy_lints/src/missing_inline.rs +++ b/clippy_lints/src/missing_inline.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint; use rustc_hir::{ImplItem, ImplItemKind, Item, ItemKind, OwnerId, TraitFn, TraitItem, TraitItemKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::config::CrateType; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; +use rustc_structures::CrateType; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/missing_trait_methods.rs b/clippy_lints/src/missing_trait_methods.rs index 218c7da2a03b..383bc7db8d3e 100644 --- a/clippy_lints/src/missing_trait_methods.rs +++ b/clippy_lints/src/missing_trait_methods.rs @@ -6,8 +6,7 @@ use clippy_utils::msrvs::Msrv; use clippy_utils::source::snippet_opt; use rustc_hir::def_id::DefIdSet; use rustc_hir::{Impl, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/mixed_read_write_in_expression.rs b/clippy_lints/src/mixed_read_write_in_expression.rs index 466537df8914..6b3f38565bed 100644 --- a/clippy_lints/src/mixed_read_write_in_expression.rs +++ b/clippy_lints/src/mixed_read_write_in_expression.rs @@ -4,9 +4,8 @@ use clippy_utils::res::MaybeResPath as _; use clippy_utils::{get_parent_expr, sym}; use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_hir::{BinOpKind, Block, Expr, ExprKind, HirId, LetStmt, Node, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/module_style.rs b/clippy_lints/src/module_style.rs index 27f48cbf789c..c588376764fd 100644 --- a/clippy_lints/src/module_style.rs +++ b/clippy_lints/src/module_style.rs @@ -2,8 +2,7 @@ use clippy_utils::ast_utils::is_cfg_test; use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::snippet; use rustc_ast::ast::{self, Inline, ItemKind, ModKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::def_id::LOCAL_CRATE; use rustc_span::{FileName, Ident, SourceFile, Span, SyntaxContext, sym}; use std::path::{Component, Path, PathBuf}; diff --git a/clippy_lints/src/multi_assignments.rs b/clippy_lints/src/multi_assignments.rs index 4383f28717dc..e4848d127dc1 100644 --- a/clippy_lints/src/multi_assignments.rs +++ b/clippy_lints/src/multi_assignments.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint; use rustc_ast::ast::{Expr, ExprKind, Stmt, StmtKind}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/multiple_bound_locations.rs b/clippy_lints/src/multiple_bound_locations.rs index 2f0e404ad1a3..0b9fb14c3f5e 100644 --- a/clippy_lints/src/multiple_bound_locations.rs +++ b/clippy_lints/src/multiple_bound_locations.rs @@ -1,8 +1,7 @@ use rustc_ast::visit::FnKind; use rustc_ast::{Fn, NodeId, WherePredicateKind}; use rustc_data_structures::fx::FxHashMap; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::Span; use clippy_utils::diagnostics::span_lint; diff --git a/clippy_lints/src/multiple_unsafe_ops_per_block.rs b/clippy_lints/src/multiple_unsafe_ops_per_block.rs index 4e36e677dcea..bf649ff5e249 100644 --- a/clippy_lints/src/multiple_unsafe_ops_per_block.rs +++ b/clippy_lints/src/multiple_unsafe_ops_per_block.rs @@ -6,10 +6,9 @@ use rustc_ast::{BorrowKind, Mutability}; use rustc_data_structures::fx::FxHashMap; use rustc_hir as hir; use rustc_hir::intravisit::{Visitor, walk_body, walk_expr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::hir::nested_filter; use rustc_middle::ty::{self, TyCtxt, TypeckResults}; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/mut_key.rs b/clippy_lints/src/mut_key.rs index 93282545bf2a..7e413f8b6a35 100644 --- a/clippy_lints/src/mut_key.rs +++ b/clippy_lints/src/mut_key.rs @@ -3,10 +3,9 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::ty::InteriorMut; use clippy_utils::{sym, trait_ref_of_method}; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::print::with_forced_trimmed_paths; use rustc_middle::ty::{self, Ty, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; use std::iter; diff --git a/clippy_lints/src/mut_mut.rs b/clippy_lints/src/mut_mut.rs index a4750a271ff7..3b83a9ecd55c 100644 --- a/clippy_lints/src/mut_mut.rs +++ b/clippy_lints/src/mut_mut.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::walk_span_to_context; use rustc_errors::Applicability; use rustc_hir::{self as hir, AmbigArg, BorrowKind, Expr, ExprKind, HirId, Mutability, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::ExpnKind; declare_clippy_lint! { diff --git a/clippy_lints/src/mutable_debug_assertion.rs b/clippy_lints/src/mutable_debug_assertion.rs index 1a1a912b7823..fca8a4a85101 100644 --- a/clippy_lints/src/mutable_debug_assertion.rs +++ b/clippy_lints/src/mutable_debug_assertion.rs @@ -3,10 +3,9 @@ use clippy_utils::macros::{MacroCall, find_assert_args, find_assert_eq_args, roo use clippy_utils::sym; use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_hir::{BorrowKind, Expr, ExprKind, MatchSource, Mutability}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::hir::nested_filter; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/mutex_atomic.rs b/clippy_lints/src/mutex_atomic.rs index fb9b60c25f78..52797d43a045 100644 --- a/clippy_lints/src/mutex_atomic.rs +++ b/clippy_lints/src/mutex_atomic.rs @@ -5,10 +5,9 @@ use clippy_utils::sugg::Sugg; use clippy_utils::ty::ty_from_hir_ty; use rustc_errors::{Applicability, Diag}; use rustc_hir::{self as hir, Expr, ExprKind, Item, ItemKind, LetStmt, QPath}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::mir::Mutability; use rustc_middle::ty::{self, IntTy, Ty, UintTy}; -use rustc_session::declare_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/needless_arbitrary_self_type.rs b/clippy_lints/src/needless_arbitrary_self_type.rs index 0d9e0bcff48e..5517228b6ef2 100644 --- a/clippy_lints/src/needless_arbitrary_self_type.rs +++ b/clippy_lints/src/needless_arbitrary_self_type.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::snippet_with_applicability; use rustc_ast::ast::{BindingMode, ByRef, Lifetime, Param, PatKind, TyKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::symbol::kw; declare_clippy_lint! { diff --git a/clippy_lints/src/needless_bool.rs b/clippy_lints/src/needless_bool.rs index e3c7588ebb4e..6a1680420090 100644 --- a/clippy_lints/src/needless_bool.rs +++ b/clippy_lints/src/needless_bool.rs @@ -10,8 +10,7 @@ use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::DefId; use rustc_hir::{Block, Expr, ExprKind, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/needless_borrowed_ref.rs b/clippy_lints/src/needless_borrowed_ref.rs index 29b4da93b7fb..dad198a90342 100644 --- a/clippy_lints/src/needless_borrowed_ref.rs +++ b/clippy_lints/src/needless_borrowed_ref.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_errors::Applicability; use rustc_hir::{BindingMode, Mutability, Node, Pat, PatKind, Pinnedness}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/needless_borrows_for_generic_args.rs b/clippy_lints/src/needless_borrows_for_generic_args.rs index 6fec895e32c8..953c6d507bff 100644 --- a/clippy_lints/src/needless_borrows_for_generic_args.rs +++ b/clippy_lints/src/needless_borrows_for_generic_args.rs @@ -11,12 +11,11 @@ use rustc_hir::def_id::{DefId, LocalDefId}; use rustc_hir::{Body, Expr, ExprKind, Mutability, Path, QPath}; use rustc_index::bit_set::DenseBitSet; use rustc_infer::infer::TyCtxtInferExt as _; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::mir::{Rvalue, StatementKind}; use rustc_middle::ty::{ - self, ClauseKind, EarlyBinder, FnSig, GenericArg, GenericArgKind, ParamTy, ProjectionPredicate, Ty, Unnormalized, + self, ClauseKind, EarlyBinder, FnSig, GenericArg, GenericArgKind, ParamTy, ProjectionClause, Ty, Unnormalized, }; -use rustc_session::impl_lint_pass; use rustc_span::SyntaxContext; use rustc_trait_selection::traits::query::evaluate_obligation::InferCtxtExt as _; use rustc_trait_selection::traits::{Obligation, ObligationCause}; @@ -328,7 +327,7 @@ fn has_ref_mut_self_method(cx: &LateContext<'_>, trait_def_id: DefId) -> bool { fn is_mixed_projection_predicate<'tcx>( cx: &LateContext<'tcx>, callee_def_id: DefId, - projection_predicate: &ProjectionPredicate<'tcx>, + projection_predicate: &ProjectionClause<'tcx>, ) -> bool { let generics = cx.tcx.generics_of(callee_def_id); // The predicate requires the projected type to equal a type parameter from the parent context. @@ -402,7 +401,7 @@ fn replace_types<'tcx>( new_ty: Ty<'tcx>, fn_sig: FnSig<'tcx>, arg_index: usize, - projection_predicates: &[ProjectionPredicate<'tcx>], + projection_predicates: &[ProjectionClause<'tcx>], args: &mut [GenericArg<'tcx>], ) -> bool { let mut replaced = DenseBitSet::new_empty(args.len()); diff --git a/clippy_lints/src/needless_continue.rs b/clippy_lints/src/needless_continue.rs index 0cdde66c69ca..91ac043a7584 100644 --- a/clippy_lints/src/needless_continue.rs +++ b/clippy_lints/src/needless_continue.rs @@ -4,8 +4,7 @@ use clippy_utils::source::{indent_of, snippet_block, snippet_with_context}; use rustc_ast::Label; use rustc_errors::Applicability; use rustc_hir::{Block, Expr, ExprKind, HirId, LoopSource, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::{ExpnKind, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/needless_else.rs b/clippy_lints/src/needless_else.rs index 69975618d3d8..a5bc8a268634 100644 --- a/clippy_lints/src/needless_else.rs +++ b/clippy_lints/src/needless_else.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_sugg; use clippy_utils::source::{IntoSpan as _, SpanExt as _}; use rustc_ast::ast::{Expr, ExprKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/needless_for_each.rs b/clippy_lints/src/needless_for_each.rs index d20add9f5740..995bd2304280 100644 --- a/clippy_lints/src/needless_for_each.rs +++ b/clippy_lints/src/needless_for_each.rs @@ -2,8 +2,7 @@ use clippy_utils::res::{MaybeDef as _, MaybeTypeckRes as _}; use rustc_errors::Applicability; use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_hir::{Block, BlockCheckMode, Closure, Expr, ExprKind, Stmt, StmtKind, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; use clippy_utils::diagnostics::span_lint_and_then; diff --git a/clippy_lints/src/needless_ifs.rs b/clippy_lints/src/needless_ifs.rs index b7dcd7a784f7..83bb077c0fb4 100644 --- a/clippy_lints/src/needless_ifs.rs +++ b/clippy_lints/src/needless_ifs.rs @@ -4,8 +4,7 @@ use clippy_utils::is_from_proc_macro; use clippy_utils::source::{SpanExt as _, walk_span_to_context}; use rustc_errors::Applicability; use rustc_hir::{ExprKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/needless_late_init.rs b/clippy_lints/src/needless_late_init.rs index 874ff8410989..58e9408e38a2 100644 --- a/clippy_lints/src/needless_late_init.rs +++ b/clippy_lints/src/needless_late_init.rs @@ -10,8 +10,7 @@ use rustc_hir::{ BindingMode, Block, Expr, ExprKind, HirId, HirIdMap, HirIdSet, LetStmt, LocalSource, MatchSource, Node, Pat, PatKind, Stmt, StmtKind, }; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; use std::borrow::Cow; diff --git a/clippy_lints/src/needless_maybe_sized.rs b/clippy_lints/src/needless_maybe_sized.rs index 079f5a4929dc..6c3f7177274c 100644 --- a/clippy_lints/src/needless_maybe_sized.rs +++ b/clippy_lints/src/needless_maybe_sized.rs @@ -3,9 +3,8 @@ use clippy_utils::is_from_proc_macro; use rustc_errors::Applicability; use rustc_hir::def_id::{DefId, DefIdMap}; use rustc_hir::{BoundPolarity, GenericBound, Generics, PolyTraitRef, TraitBoundModifiers, WherePredicateKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_middle::ty::{ClauseKind, PredicatePolarity, Unnormalized}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; +use rustc_middle::ty::{ClauseKind, ClausePolarity, Unnormalized}; use rustc_span::symbol::Ident; declare_clippy_lint! { @@ -99,7 +98,7 @@ fn path_to_sized_bound(cx: &LateContext<'_>, trait_bound: &PolyTraitRef<'_>) -> .map(Unnormalized::skip_norm_wip) { if let ClauseKind::Trait(trait_predicate) = clause.kind().skip_binder() - && trait_predicate.polarity == PredicatePolarity::Positive + && trait_predicate.polarity == ClausePolarity::Positive && !path.contains(&trait_predicate.def_id()) { path.push(trait_predicate.def_id()); diff --git a/clippy_lints/src/needless_nonzero_get.rs b/clippy_lints/src/needless_nonzero_get.rs index 9823965bb055..ee55cbebd522 100644 --- a/clippy_lints/src/needless_nonzero_get.rs +++ b/clippy_lints/src/needless_nonzero_get.rs @@ -6,9 +6,8 @@ use clippy_utils::{binop_traits, is_from_proc_macro, span_contains_comment, sym} use rustc_errors::Applicability; use rustc_hir::def_id::DefId; use rustc_hir::{AssignOpKind, BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/needless_parens_on_range_literals.rs b/clippy_lints/src/needless_parens_on_range_literals.rs index 0c23bd6b1f96..1ee87f3f4f2f 100644 --- a/clippy_lints/src/needless_parens_on_range_literals.rs +++ b/clippy_lints/src/needless_parens_on_range_literals.rs @@ -5,8 +5,7 @@ use clippy_utils::source::{snippet, snippet_with_applicability}; use rustc_ast::ast; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/needless_pass_by_ref_mut.rs b/clippy_lints/src/needless_pass_by_ref_mut.rs index 0d5b2ee6ba29..5c6030d61f5f 100644 --- a/clippy_lints/src/needless_pass_by_ref_mut.rs +++ b/clippy_lints/src/needless_pass_by_ref_mut.rs @@ -13,10 +13,9 @@ use rustc_hir::{ PatKind, }; use rustc_hir_typeck::expr_use_visitor as euv; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::mir::FakeReadCause; use rustc_middle::ty::{self, Ty, TyCtxt, UpvarId, UpvarPath}; -use rustc_session::impl_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::symbol::kw; use rustc_span::{BytePos, Span}; diff --git a/clippy_lints/src/needless_pass_by_value.rs b/clippy_lints/src/needless_pass_by_value.rs index 31e8e0bff15d..c0b2298e3bda 100644 --- a/clippy_lints/src/needless_pass_by_value.rs +++ b/clippy_lints/src/needless_pass_by_value.rs @@ -13,10 +13,9 @@ use rustc_hir::{ PatKind, QPath, TyKind, }; use rustc_hir_typeck::expr_use_visitor as euv; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::mir::FakeReadCause; use rustc_middle::ty::{self, Ty, TypeVisitableExt as _}; -use rustc_session::declare_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::symbol::kw; use rustc_span::{Span, Symbol}; diff --git a/clippy_lints/src/needless_question_mark.rs b/clippy_lints/src/needless_question_mark.rs index a1a9fa30960c..91817f945766 100644 --- a/clippy_lints/src/needless_question_mark.rs +++ b/clippy_lints/src/needless_question_mark.rs @@ -4,8 +4,7 @@ use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Block, Body, Expr, ExprKind, MatchSource}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/needless_update.rs b/clippy_lints/src/needless_update.rs index ed1f9ad194bc..d15a4d091be9 100644 --- a/clippy_lints/src/needless_update.rs +++ b/clippy_lints/src/needless_update.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint; use rustc_hir::{Expr, ExprKind, StructTailExpr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/neg_cmp_op_on_partial_ord.rs b/clippy_lints/src/neg_cmp_op_on_partial_ord.rs index cfe9fd284e45..bfa709bdac74 100644 --- a/clippy_lints/src/neg_cmp_op_on_partial_ord.rs +++ b/clippy_lints/src/neg_cmp_op_on_partial_ord.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::ty::implements_trait; use rustc_hir::{BinOpKind, Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/neg_multiply.rs b/clippy_lints/src/neg_multiply.rs index 946114e10419..db25d86bc748 100644 --- a/clippy_lints/src/neg_multiply.rs +++ b/clippy_lints/src/neg_multiply.rs @@ -6,8 +6,7 @@ use clippy_utils::sugg::has_enclosing_paren; use rustc_ast::util::parser::ExprPrecedence; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/new_without_default.rs b/clippy_lints/src/new_without_default.rs index 31479a4d08df..96eef0412cf4 100644 --- a/clippy_lints/src/new_without_default.rs +++ b/clippy_lints/src/new_without_default.rs @@ -6,9 +6,8 @@ use rustc_errors::Applicability; use rustc_hir as hir; use rustc_hir::attrs::AttributeKind; use rustc_hir::{Attribute, HirIdSet}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::AssocKind; -use rustc_session::impl_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/no_effect.rs b/clippy_lints/src/no_effect.rs index 6afae7ac9850..b89bfe25ee49 100644 --- a/clippy_lints/src/no_effect.rs +++ b/clippy_lints/src/no_effect.rs @@ -11,8 +11,7 @@ use rustc_hir::{ BinOpKind, BlockCheckMode, Expr, ExprKind, HirId, HirIdMap, ItemKind, LocalSource, Node, PatKind, Stmt, StmtKind, StructTailExpr, UnsafeSource, is_range_literal, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; use std::ops::Deref; diff --git a/clippy_lints/src/no_mangle_with_rust_abi.rs b/clippy_lints/src/no_mangle_with_rust_abi.rs index e03ea557b84f..f1d492089cdd 100644 --- a/clippy_lints/src/no_mangle_with_rust_abi.rs +++ b/clippy_lints/src/no_mangle_with_rust_abi.rs @@ -4,8 +4,7 @@ use rustc_abi::ExternAbi; use rustc_errors::Applicability; use rustc_hir::attrs::AttributeKind; use rustc_hir::{Attribute, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{BytePos, Pos as _}; declare_clippy_lint! { diff --git a/clippy_lints/src/non_canonical_impls.rs b/clippy_lints/src/non_canonical_impls.rs index 6e3787b5f312..a9b601bbf46a 100644 --- a/clippy_lints/src/non_canonical_impls.rs +++ b/clippy_lints/src/non_canonical_impls.rs @@ -7,9 +7,8 @@ use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::def_id::DefId; use rustc_hir::{Block, Body, Expr, ExprKind, ImplItem, ImplItemKind, Item, ItemKind, Stmt, StmtKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty::{TyCtxt, TypeckResults}; -use rustc_session::impl_lint_pass; use rustc_span::sym; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/non_copy_const.rs b/clippy_lints/src/non_copy_const.rs index a15a52bdd4e9..ad68f818eabc 100644 --- a/clippy_lints/src/non_copy_const.rs +++ b/clippy_lints/src/non_copy_const.rs @@ -31,14 +31,13 @@ use rustc_hir::{ ConstArgKind, ConstItemRhs, Expr, ExprKind, ImplItem, ImplItemKind, Item, ItemKind, Node, StructTailExpr, TraitItem, TraitItemKind, UnOp, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::mir::{ConstValue, UnevaluatedConst}; use rustc_middle::ty::adjustment::{Adjust, Adjustment, DerefAdjustKind}; use rustc_middle::ty::{ self, EarlyBinder, GenericArgs, GenericArgsRef, Instance, Ty, TyCtxt, TypeFolder, TypeSuperFoldable as _, TypeckResults, TypingEnv, Unnormalized, }; -use rustc_session::impl_lint_pass; use rustc_span::DUMMY_SP; use std::collections::hash_map::Entry; diff --git a/clippy_lints/src/non_expressive_names.rs b/clippy_lints/src/non_expressive_names.rs index fec432a210af..0f59c7696bf5 100644 --- a/clippy_lints/src/non_expressive_names.rs +++ b/clippy_lints/src/non_expressive_names.rs @@ -4,8 +4,7 @@ use rustc_ast::ast::{ self, Arm, AssocItem, AssocItemKind, Attribute, Block, FnDecl, Item, ItemKind, Local, Pat, PatKind, }; use rustc_ast::visit::{Visitor, walk_block, walk_expr, walk_pat}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::symbol::{Ident, Symbol}; use rustc_span::{Span, sym}; use std::cmp::Ordering; diff --git a/clippy_lints/src/non_octal_unix_permissions.rs b/clippy_lints/src/non_octal_unix_permissions.rs index f726a7bc9ef6..2019f16fb7d8 100644 --- a/clippy_lints/src/non_octal_unix_permissions.rs +++ b/clippy_lints/src/non_octal_unix_permissions.rs @@ -3,8 +3,7 @@ use clippy_utils::source::{SpanExt as _, snippet_with_applicability}; use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/non_send_fields_in_send_ty.rs b/clippy_lints/src/non_send_fields_in_send_ty.rs index 0e4bedf15548..ea3b93c07152 100644 --- a/clippy_lints/src/non_send_fields_in_send_ty.rs +++ b/clippy_lints/src/non_send_fields_in_send_ty.rs @@ -7,9 +7,8 @@ use rustc_ast::ImplPolarity; use rustc_hir::attrs::LangItem; use rustc_hir::def_id::DefId; use rustc_hir::{FieldDef, Item, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, GenericArgKind, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/non_std_lazy_statics.rs b/clippy_lints/src/non_std_lazy_statics.rs index 44c7ab4d226c..8f1e13c14d36 100644 --- a/clippy_lints/src/non_std_lazy_statics.rs +++ b/clippy_lints/src/non_std_lazy_statics.rs @@ -10,8 +10,7 @@ use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::{CrateNum, DefId}; use rustc_hir::{self as hir, BodyId, Expr, ExprKind, HirId, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/non_zero_suggestions.rs b/clippy_lints/src/non_zero_suggestions.rs index b8d1147baeb7..0e20347491aa 100644 --- a/clippy_lints/src/non_zero_suggestions.rs +++ b/clippy_lints/src/non_zero_suggestions.rs @@ -4,9 +4,8 @@ use clippy_utils::sym; use rustc_ast::ast::BinOpKind; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/nonnull_unchecked_on_box_ptr.rs b/clippy_lints/src/nonnull_unchecked_on_box_ptr.rs index 4339dc427d5a..34c8074ecd11 100644 --- a/clippy_lints/src/nonnull_unchecked_on_box_ptr.rs +++ b/clippy_lints/src/nonnull_unchecked_on_box_ptr.rs @@ -8,8 +8,7 @@ use clippy_utils::visitors::is_expr_unsafe; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Block, BlockCheckMode, Expr, ExprKind, Node, UnsafeSource}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/nonstandard_macro_braces.rs b/clippy_lints/src/nonstandard_macro_braces.rs index 1052f13cd3b0..46a251b7b727 100644 --- a/clippy_lints/src/nonstandard_macro_braces.rs +++ b/clippy_lints/src/nonstandard_macro_braces.rs @@ -6,8 +6,7 @@ use rustc_ast::token::{Delimiter, Token, TokenKind}; use rustc_ast::tokenstream::{TokenStream, TokenTree}; use rustc_data_structures::fx::FxHashMap; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, impl_lint_pass}; use rustc_span::Span; use crate::rustc_lint::LintContext as _; diff --git a/clippy_lints/src/octal_escapes.rs b/clippy_lints/src/octal_escapes.rs index a7c22dbefd06..69c9fe2a70b3 100644 --- a/clippy_lints/src/octal_escapes.rs +++ b/clippy_lints/src/octal_escapes.rs @@ -3,8 +3,7 @@ use clippy_utils::source::SpanExt as _; use rustc_ast::token::LitKind; use rustc_ast::{Expr, ExprKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; use rustc_span::{BytePos, Pos as _, SpanData}; declare_clippy_lint! { diff --git a/clippy_lints/src/only_used_in_recursion.rs b/clippy_lints/src/only_used_in_recursion.rs index 1b80649eb580..744b521a5612 100644 --- a/clippy_lints/src/only_used_in_recursion.rs +++ b/clippy_lints/src/only_used_in_recursion.rs @@ -9,9 +9,8 @@ use rustc_hir::{ Body, Expr, ExprKind, HirId, HirIdMap, ImplItem, ImplItemImplKind, ImplItemKind, Node, PatKind, TraitItem, TraitItemKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, ConstKind, GenericArgKind, GenericArgsRef}; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::symbol::{Ident, kw}; use std::iter; diff --git a/clippy_lints/src/operators/arithmetic_side_effects.rs b/clippy_lints/src/operators/arithmetic_side_effects.rs index 8728122414f0..12703722afae 100644 --- a/clippy_lints/src/operators/arithmetic_side_effects.rs +++ b/clippy_lints/src/operators/arithmetic_side_effects.rs @@ -8,9 +8,8 @@ use clippy_utils::{expr_or_init, is_from_proc_macro, is_lint_allowed, peel_hir_e use rustc_ast as ast; use rustc_data_structures::fx::{FxHashMap, FxHashSet}; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty, UintTy}; -use rustc_session::impl_lint_pass; use rustc_span::{Span, Symbol}; pub struct ArithmeticSideEffects { diff --git a/clippy_lints/src/operators/mod.rs b/clippy_lints/src/operators/mod.rs index 47938c7da392..1bd954bf1421 100644 --- a/clippy_lints/src/operators/mod.rs +++ b/clippy_lints/src/operators/mod.rs @@ -32,8 +32,7 @@ pub(crate) mod arithmetic_side_effects; use clippy_config::Conf; use clippy_utils::msrvs::Msrv; use rustc_hir::{Body, Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/option_env_unwrap.rs b/clippy_lints/src/option_env_unwrap.rs index c5410feee971..4220ed9b5f50 100644 --- a/clippy_lints/src/option_env_unwrap.rs +++ b/clippy_lints/src/option_env_unwrap.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::is_direct_expn_of; use rustc_ast::ast::{Expr, ExprKind, MethodCall}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/option_if_let_else.rs b/clippy_lints/src/option_if_let_else.rs index b3dedbc0127b..e39dbc3b51a7 100644 --- a/clippy_lints/src/option_if_let_else.rs +++ b/clippy_lints/src/option_if_let_else.rs @@ -16,9 +16,8 @@ use rustc_hir::intravisit::{Visitor, walk_expr, walk_path}; use rustc_hir::{ Arm, BindingMode, Expr, ExprKind, HirId, MatchSource, Mutability, Node, Pat, PatKind, Path, QPath, UnOp, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::hir::nested_filter; -use rustc_session::declare_lint_pass; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/panic_in_result_fn.rs b/clippy_lints/src/panic_in_result_fn.rs index 08c316af42b0..185acc53fa52 100644 --- a/clippy_lints/src/panic_in_result_fn.rs +++ b/clippy_lints/src/panic_in_result_fn.rs @@ -6,8 +6,7 @@ use clippy_utils::{is_inside_always_const_context, return_ty}; use core::ops::ControlFlow; use rustc_hir as hir; use rustc_hir::intravisit::FnKind; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, sym}; diff --git a/clippy_lints/src/panic_unimplemented.rs b/clippy_lints/src/panic_unimplemented.rs index a5cb5cf3f5e3..4924ab5cd64e 100644 --- a/clippy_lints/src/panic_unimplemented.rs +++ b/clippy_lints/src/panic_unimplemented.rs @@ -4,8 +4,7 @@ use clippy_utils::macros::{is_panic, root_macro_call_first_node}; use clippy_utils::{is_in_test, is_inside_always_const_context, sym}; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; pub struct PanicUnimplemented { allow_panic_in_tests: bool, diff --git a/clippy_lints/src/panicking_overflow_checks.rs b/clippy_lints/src/panicking_overflow_checks.rs index 7e75e0affc72..34d274412e4f 100644 --- a/clippy_lints/src/panicking_overflow_checks.rs +++ b/clippy_lints/src/panicking_overflow_checks.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::eq_expr_value; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/partial_pub_fields.rs b/clippy_lints/src/partial_pub_fields.rs index 4428e07f7995..9d094dc9c217 100644 --- a/clippy_lints/src/partial_pub_fields.rs +++ b/clippy_lints/src/partial_pub_fields.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::ast::{Item, ItemKind}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/partialeq_ne_impl.rs b/clippy_lints/src/partialeq_ne_impl.rs index 77751e75a8e1..f66da34be255 100644 --- a/clippy_lints/src/partialeq_ne_impl.rs +++ b/clippy_lints/src/partialeq_ne_impl.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_hir; use rustc_hir::{Impl, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/partialeq_to_none.rs b/clippy_lints/src/partialeq_to_none.rs index f219cd89d7e6..54e30e2d13dc 100644 --- a/clippy_lints/src/partialeq_to_none.rs +++ b/clippy_lints/src/partialeq_to_none.rs @@ -3,8 +3,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::{is_none_expr, peel_hir_expr_refs, peel_ref_operators, sugg}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/pass_by_ref_or_value.rs b/clippy_lints/src/pass_by_ref_or_value.rs index fba3d43600df..9498e18e2d35 100644 --- a/clippy_lints/src/pass_by_ref_or_value.rs +++ b/clippy_lints/src/pass_by_ref_or_value.rs @@ -12,11 +12,10 @@ use rustc_hir as hir; use rustc_hir::attrs::InlineAttr; use rustc_hir::intravisit::FnKind; use rustc_hir::{BindingMode, Body, FnDecl, Impl, ItemKind, MutTy, Mutability, Node, PatKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, PointerCoercion}; use rustc_middle::ty::layout::LayoutOf as _; use rustc_middle::ty::{self, BoundVarIndexKind, RegionKind, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, sym}; use std::iter; diff --git a/clippy_lints/src/pathbuf_init_then_push.rs b/clippy_lints/src/pathbuf_init_then_push.rs index 4b8a3a5ef554..9384320b67e7 100644 --- a/clippy_lints/src/pathbuf_init_then_push.rs +++ b/clippy_lints/src/pathbuf_init_then_push.rs @@ -6,8 +6,7 @@ use rustc_ast::{LitKind, StrStyle}; use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::{BindingMode, Block, Expr, ExprKind, HirId, LetStmt, PatKind, QPath, Stmt, StmtKind, TyKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/pattern_type_mismatch.rs b/clippy_lints/src/pattern_type_mismatch.rs index e328de609e8c..84a3cd781650 100644 --- a/clippy_lints/src/pattern_type_mismatch.rs +++ b/clippy_lints/src/pattern_type_mismatch.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_hir::{ Body, Expr, ExprKind, FnDecl, LetExpr, LocalSource, Mutability, Pat, PatKind, Stmt, StmtKind, intravisit, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/permissions_set_readonly_false.rs b/clippy_lints/src/permissions_set_readonly_false.rs index 00e6df84a51d..70ff22e5c259 100644 --- a/clippy_lints/src/permissions_set_readonly_false.rs +++ b/clippy_lints/src/permissions_set_readonly_false.rs @@ -3,8 +3,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::sym; use rustc_ast::ast::LitKind; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/pointers_in_nomem_asm_block.rs b/clippy_lints/src/pointers_in_nomem_asm_block.rs index 385f634a1505..58d6fa24ce13 100644 --- a/clippy_lints/src/pointers_in_nomem_asm_block.rs +++ b/clippy_lints/src/pointers_in_nomem_asm_block.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::InlineAsmOptions; use rustc_hir::{Expr, ExprKind, InlineAsm, InlineAsmOperand}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/precedence.rs b/clippy_lints/src/precedence.rs index 1f0371c78200..dfd800c186f6 100644 --- a/clippy_lints/src/precedence.rs +++ b/clippy_lints/src/precedence.rs @@ -3,8 +3,7 @@ use clippy_utils::source::snippet_with_applicability; use rustc_ast::ast::BinOpKind::{Add, BitAnd, BitOr, BitXor, Div, Mul, Rem, Shl, Shr, Sub}; use rustc_ast::ast::{BinOpKind, Expr, ExprKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, Lint}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, Lint, declare_lint_pass}; use rustc_span::Spanned; declare_clippy_lint! { diff --git a/clippy_lints/src/ptr/mod.rs b/clippy_lints/src/ptr/mod.rs index f1e422d436bd..04393dcf60d5 100644 --- a/clippy_lints/src/ptr/mod.rs +++ b/clippy_lints/src/ptr/mod.rs @@ -1,6 +1,5 @@ use rustc_hir::{BinOpKind, Body, Expr, ExprKind, ImplItemKind, ItemKind, Node, TraitFn, TraitItem, TraitItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; mod cmp_null; mod mut_from_ref; diff --git a/clippy_lints/src/pub_underscore_fields.rs b/clippy_lints/src/pub_underscore_fields.rs index 7067340e6f03..ee468f1b3fd8 100644 --- a/clippy_lints/src/pub_underscore_fields.rs +++ b/clippy_lints/src/pub_underscore_fields.rs @@ -6,8 +6,7 @@ use clippy_utils::res::{MaybeDef as _, MaybeResPath as _}; use clippy_utils::sym::PhantomPinned; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{FieldDef, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/pub_use.rs b/clippy_lints/src/pub_use.rs index f3d6ed268bda..ee5e0dd1a163 100644 --- a/clippy_lints/src/pub_use.rs +++ b/clippy_lints/src/pub_use.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::ast::{Item, ItemKind, VisibilityKind}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/question_mark.rs b/clippy_lints/src/question_mark.rs index 872355837b8a..ea8dc36b992e 100644 --- a/clippy_lints/src/question_mark.rs +++ b/clippy_lints/src/question_mark.rs @@ -21,9 +21,8 @@ use rustc_hir::{ Arm, BindingMode, Block, Body, ByRef, Expr, ExprKind, FnRetTy, HirId, LetStmt, MatchSource, Mutability, Node, Pat, PatKind, PathSegment, QPath, Stmt, StmtKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::symbol::Symbol; diff --git a/clippy_lints/src/question_mark_used.rs b/clippy_lints/src/question_mark_used.rs index 7bbbd0d25acf..071f80b2342b 100644 --- a/clippy_lints/src/question_mark_used.rs +++ b/clippy_lints/src/question_mark_used.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::macros::span_is_local; use rustc_hir::{Expr, ExprKind, MatchSource}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/ranges.rs b/clippy_lints/src/ranges.rs index d0a448d95b53..21e0d94d673e 100644 --- a/clippy_lints/src/ranges.rs +++ b/clippy_lints/src/ranges.rs @@ -14,9 +14,8 @@ use rustc_ast::ast::RangeLimits; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{BinOpKind, Expr, ExprKind, HirId, Node}; -use rustc_lint::{LateContext, LateLintPass, Lint}; -use rustc_middle::ty::{self, ClauseKind, GenericArgKind, PredicatePolarity, Ty}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, Lint, impl_lint_pass}; +use rustc_middle::ty::{self, ClauseKind, ClausePolarity, GenericArgKind, Ty}; use rustc_span::{DesugaringKind, Span, Spanned, SyntaxContext}; use std::cmp::Ordering; @@ -434,9 +433,9 @@ fn can_switch_ranges<'tcx>( .param_env(id) .caller_bounds() .into_iter() - .any(|p| { - if let ClauseKind::Trait(t) = p.kind().skip_binder() - && t.polarity == PredicatePolarity::Positive + .any(|c| { + if let ClauseKind::Trait(t) = c.kind().skip_binder() + && t.polarity == ClausePolarity::Positive && matches!( cx.tcx.get_diagnostic_name(t.trait_ref.def_id), Some(sym::Iterator | sym::IntoIterator | sym::RangeBounds) diff --git a/clippy_lints/src/raw_strings.rs b/clippy_lints/src/raw_strings.rs index 889dcc1fbc77..78be2acaa416 100644 --- a/clippy_lints/src/raw_strings.rs +++ b/clippy_lints/src/raw_strings.rs @@ -4,8 +4,7 @@ use clippy_utils::source::{SpanExt as _, snippet_opt}; use rustc_ast::ast::{Expr, ExprKind}; use rustc_ast::token::LitKind; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{BytePos, Pos as _, Span}; use std::iter::once; use std::ops::ControlFlow; diff --git a/clippy_lints/src/rc_clone_in_vec_init.rs b/clippy_lints/src/rc_clone_in_vec_init.rs index e3f718cb2d7d..d11455b3942b 100644 --- a/clippy_lints/src/rc_clone_in_vec_init.rs +++ b/clippy_lints/src/rc_clone_in_vec_init.rs @@ -5,9 +5,8 @@ use clippy_utils::source::{indent_of, snippet}; use clippy_utils::{last_path_segment, sym}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, QPath, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/read_zero_byte_vec.rs b/clippy_lints/src/read_zero_byte_vec.rs index 6d8b26d93f83..c29621740c41 100644 --- a/clippy_lints/src/read_zero_byte_vec.rs +++ b/clippy_lints/src/read_zero_byte_vec.rs @@ -7,8 +7,7 @@ use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_hir::{self as hir, Expr, ExprKind, HirId, LetStmt, PatKind, PathSegment, QPath, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/redundant_async_block.rs b/clippy_lints/src/redundant_async_block.rs index ba1e1cfbdeab..d69629630189 100644 --- a/clippy_lints/src/redundant_async_block.rs +++ b/clippy_lints/src/redundant_async_block.rs @@ -4,9 +4,8 @@ use clippy_utils::ty::implements_trait; use clippy_utils::{desugar_await, peel_blocks}; use rustc_errors::Applicability; use rustc_hir::{Closure, ClosureKind, CoroutineDesugaring, CoroutineKind, CoroutineSource, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::UpvarCapture; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/redundant_clone.rs b/clippy_lints/src/redundant_clone.rs index d4ba520f1f9d..c48c7f25f352 100644 --- a/clippy_lints/src/redundant_clone.rs +++ b/clippy_lints/src/redundant_clone.rs @@ -8,10 +8,9 @@ use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl, def_id}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::mir; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::{BytePos, Span}; diff --git a/clippy_lints/src/redundant_closure_call.rs b/clippy_lints/src/redundant_closure_call.rs index 28f23cc0dabd..25c137dec737 100644 --- a/clippy_lints/src/redundant_closure_call.rs +++ b/clippy_lints/src/redundant_closure_call.rs @@ -8,10 +8,9 @@ use rustc_hir::intravisit::Visitor; use rustc_hir::{ CaptureBy, ClosureKind, CoroutineDesugaring, CoroutineKind, CoroutineSource, ExprKind, intravisit as hir_visit, }; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::hir::nested_filter; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::ExpnKind; use std::ops::ControlFlow; diff --git a/clippy_lints/src/redundant_else.rs b/clippy_lints/src/redundant_else.rs index cb7d7cfafa2d..8b0abfb79662 100644 --- a/clippy_lints/src/redundant_else.rs +++ b/clippy_lints/src/redundant_else.rs @@ -3,9 +3,8 @@ use clippy_utils::is_from_proc_macro; use clippy_utils::source::{SpanExt as _, indent_of, reindent_multiline}; use rustc_errors::Applicability; use rustc_hir::{Block, Expr, ExprKind, MatchSource, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::TypeckResults; -use rustc_session::declare_lint_pass; use rustc_span::{ExpnKind, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/redundant_field_names.rs b/clippy_lints/src/redundant_field_names.rs index 69195ab28e48..cfcbdffdd8b3 100644 --- a/clippy_lints/src/redundant_field_names.rs +++ b/clippy_lints/src/redundant_field_names.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint_and_sugg; use clippy_utils::msrvs::{self, MsrvStack}; use rustc_ast::ast::{Expr, ExprKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/redundant_locals.rs b/clippy_lints/src/redundant_locals.rs index 93f583f36e2e..ea21ee0e5c77 100644 --- a/clippy_lints/src/redundant_locals.rs +++ b/clippy_lints/src/redundant_locals.rs @@ -5,9 +5,8 @@ use rustc_ast::Mutability; use rustc_hir::def::Res; use rustc_hir::{BindingMode, ByRef, ExprKind, HirId, LetStmt, Node, Pat, PatKind, QPath}; use rustc_hir_typeck::expr_use_visitor::PlaceBase; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty::UpvarCapture; -use rustc_session::declare_lint_pass; use rustc_span::DesugaringKind; use rustc_span::symbol::Ident; diff --git a/clippy_lints/src/redundant_pub_crate.rs b/clippy_lints/src/redundant_pub_crate.rs index 8abb5159f90e..5bc73d0a5d2d 100644 --- a/clippy_lints/src/redundant_pub_crate.rs +++ b/clippy_lints/src/redundant_pub_crate.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Item, ItemKind, UseKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::def_id::CRATE_MOD_ID; declare_clippy_lint! { diff --git a/clippy_lints/src/redundant_slicing.rs b/clippy_lints/src/redundant_slicing.rs index 8780b420dcff..f68554b743b0 100644 --- a/clippy_lints/src/redundant_slicing.rs +++ b/clippy_lints/src/redundant_slicing.rs @@ -7,10 +7,9 @@ use rustc_ast::util::parser::ExprPrecedence; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{BorrowKind, Expr, ExprKind, Mutability}; -use rustc_lint::{LateContext, LateLintPass, Lint}; +use rustc_lint::{LateContext, LateLintPass, Lint, declare_lint_pass}; use rustc_middle::ty::adjustment::{Adjust, AutoBorrow, AutoBorrowMutability}; use rustc_middle::ty::{self, GenericArg, Ty, Unnormalized}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/redundant_static_lifetimes.rs b/clippy_lints/src/redundant_static_lifetimes.rs index 028c1d26fa8a..273ea7506431 100644 --- a/clippy_lints/src/redundant_static_lifetimes.rs +++ b/clippy_lints/src/redundant_static_lifetimes.rs @@ -4,8 +4,7 @@ use clippy_utils::msrvs::{self, MsrvStack}; use clippy_utils::source::snippet; use rustc_ast::ast::{ConstItem, Item, ItemKind, StaticItem, Ty, TyKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, impl_lint_pass}; use rustc_span::symbol::kw; declare_clippy_lint! { diff --git a/clippy_lints/src/redundant_test_prefix.rs b/clippy_lints/src/redundant_test_prefix.rs index 2dc03328fef8..6f7750939fd9 100644 --- a/clippy_lints/src/redundant_test_prefix.rs +++ b/clippy_lints/src/redundant_test_prefix.rs @@ -5,8 +5,7 @@ use rustc_errors::Applicability; use rustc_hir::intravisit::FnKind; use rustc_hir::{self as hir, Body, ExprKind, FnDecl}; use rustc_lexer::is_ident; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, Symbol, edition}; use std::borrow::Cow; diff --git a/clippy_lints/src/redundant_type_annotations.rs b/clippy_lints/src/redundant_type_annotations.rs index 3c89761d821f..b98a4c6b8b9c 100644 --- a/clippy_lints/src/redundant_type_annotations.rs +++ b/clippy_lints/src/redundant_type_annotations.rs @@ -3,9 +3,8 @@ use clippy_utils::is_lint_allowed; use rustc_ast::LitKind; use rustc_hir as hir; use rustc_hir::def::DefKind; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/ref_option_ref.rs b/clippy_lints/src/ref_option_ref.rs index f1cf505482e4..013225da010d 100644 --- a/clippy_lints/src/ref_option_ref.rs +++ b/clippy_lints/src/ref_option_ref.rs @@ -3,8 +3,7 @@ use clippy_utils::last_path_segment; use clippy_utils::source::snippet; use rustc_errors::Applicability; use rustc_hir::{AmbigArg, GenericArg, GenericArgsParentheses, Mutability, Ty, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::symbol::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/ref_patterns.rs b/clippy_lints/src/ref_patterns.rs index 22d1c21aa43b..0474d050f79b 100644 --- a/clippy_lints/src/ref_patterns.rs +++ b/clippy_lints/src/ref_patterns.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::in_automatically_derived; use rustc_hir::{BindingMode, Pat, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/reference.rs b/clippy_lints/src/reference.rs index 3bbcad12a319..bb22a35ca32d 100644 --- a/clippy_lints/src/reference.rs +++ b/clippy_lints/src/reference.rs @@ -4,8 +4,7 @@ use clippy_utils::sugg::{Sugg, has_enclosing_paren}; use clippy_utils::ty::adjust_derefs_manually_drop; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, HirId, Node, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/regex.rs b/clippy_lints/src/regex.rs index 9f929bb6d2b5..26ffaafb3f19 100644 --- a/clippy_lints/src/regex.rs +++ b/clippy_lints/src/regex.rs @@ -9,8 +9,7 @@ use clippy_utils::source::SpanExt as _; use rustc_ast::ast::{LitKind, StrStyle}; use rustc_hir::def_id::DefIdMap; use rustc_hir::{BorrowKind, Expr, ExprKind, OwnerId}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{BytePos, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/repeat_vec_with_capacity.rs b/clippy_lints/src/repeat_vec_with_capacity.rs index 294c6d0bc1e8..9fe17ff2fa6f 100644 --- a/clippy_lints/src/repeat_vec_with_capacity.rs +++ b/clippy_lints/src/repeat_vec_with_capacity.rs @@ -8,8 +8,7 @@ use clippy_utils::source::snippet; use clippy_utils::{expr_or_init, fn_def_id, std_or_core, sym}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; pub struct RepeatVecWithCapacity { diff --git a/clippy_lints/src/replace_box.rs b/clippy_lints/src/replace_box.rs index fbc81a1f8177..e49a766acc26 100644 --- a/clippy_lints/src/replace_box.rs +++ b/clippy_lints/src/replace_box.rs @@ -9,11 +9,10 @@ use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Body, BodyId, Expr, ExprKind, HirId, QPath}; use rustc_hir_typeck::expr_use_visitor::{Delegate, ExprUseVisitor, PlaceBase, PlaceWithHirId}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::hir::place::ProjectionKind; use rustc_middle::mir::FakeReadCause; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::{Symbol, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/reserve_after_initialization.rs b/clippy_lints/src/reserve_after_initialization.rs index 475b350047e7..cdd037ca7a2b 100644 --- a/clippy_lints/src/reserve_after_initialization.rs +++ b/clippy_lints/src/reserve_after_initialization.rs @@ -6,8 +6,7 @@ use clippy_utils::{is_from_proc_macro, sym}; use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::{BindingMode, Block, Expr, ExprKind, HirId, LetStmt, PatKind, QPath, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/rest_when_destructuring_struct.rs b/clippy_lints/src/rest_when_destructuring_struct.rs index a9b4f54edf9e..89af7a520ce3 100644 --- a/clippy_lints/src/rest_when_destructuring_struct.rs +++ b/clippy_lints/src/rest_when_destructuring_struct.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::is_from_proc_macro; use rustc_errors::Applicability; -use rustc_lint::LateLintPass; +use rustc_lint::{LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use std::fmt::Write as _; diff --git a/clippy_lints/src/return_self_not_must_use.rs b/clippy_lints/src/return_self_not_must_use.rs index 1bbef1115d0c..ca6486578e1c 100644 --- a/clippy_lints/src/return_self_not_must_use.rs +++ b/clippy_lints/src/return_self_not_must_use.rs @@ -4,8 +4,7 @@ use clippy_utils::{nth_arg, return_ty}; use rustc_hir::def_id::LocalDefId; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl, OwnerId, TraitItem, TraitItemKind, find_attr}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/returns/mod.rs b/clippy_lints/src/returns/mod.rs index eb84582593a4..5eac2fbb3670 100644 --- a/clippy_lints/src/returns/mod.rs +++ b/clippy_lints/src/returns/mod.rs @@ -1,7 +1,6 @@ use rustc_hir::intravisit::FnKind; use rustc_hir::{Block, Body, FnDecl, Stmt}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/same_length_and_capacity.rs b/clippy_lints/src/same_length_and_capacity.rs index c5f226bd2d6a..2339e6e2e0c4 100644 --- a/clippy_lints/src/same_length_and_capacity.rs +++ b/clippy_lints/src/same_length_and_capacity.rs @@ -3,8 +3,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::{eq_expr_value, sym}; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::symbol::sym as rustc_sym; declare_clippy_lint! { diff --git a/clippy_lints/src/same_name_method.rs b/clippy_lints/src/same_name_method.rs index b87751f49864..56b48f573550 100644 --- a/clippy_lints/src/same_name_method.rs +++ b/clippy_lints/src/same_name_method.rs @@ -2,9 +2,8 @@ use clippy_utils::diagnostics::span_lint_hir_and_then; use rustc_data_structures::fx::FxHashMap; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{HirId, Impl, ItemKind, Node, Path, QPath, TraitRef, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{AssocItem, AssocKind}; -use rustc_session::declare_lint_pass; use rustc_span::Span; use rustc_span::symbol::Symbol; use std::collections::{BTreeMap, BTreeSet}; diff --git a/clippy_lints/src/self_named_constructors.rs b/clippy_lints/src/self_named_constructors.rs index c51959778b20..83f57ad41295 100644 --- a/clippy_lints/src/self_named_constructors.rs +++ b/clippy_lints/src/self_named_constructors.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::return_ty; use clippy_utils::ty::contains_adt_constructor; use rustc_hir::{Impl, ImplItem, ImplItemKind, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/semicolon_block.rs b/clippy_lints/src/semicolon_block.rs index 583585282ac9..897925b97efb 100644 --- a/clippy_lints/src/semicolon_block.rs +++ b/clippy_lints/src/semicolon_block.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::SpanExt as _; use rustc_errors::Applicability; use rustc_hir::{Block, Expr, ExprKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/semicolon_if_nothing_returned.rs b/clippy_lints/src/semicolon_if_nothing_returned.rs index fd66ec1b1f10..45eca1f95fb4 100644 --- a/clippy_lints/src/semicolon_if_nothing_returned.rs +++ b/clippy_lints/src/semicolon_if_nothing_returned.rs @@ -3,8 +3,7 @@ use clippy_utils::in_automatically_derived; use clippy_utils::source::snippet_with_context; use rustc_errors::Applicability; use rustc_hir::{Block, ExprKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_span::{ExpnKind, MacroKind, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/serde_api.rs b/clippy_lints/src/serde_api.rs index 01c7f394b9ad..80f442c60caf 100644 --- a/clippy_lints/src/serde_api.rs +++ b/clippy_lints/src/serde_api.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::{paths, sym}; use rustc_hir::{Impl, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/set_contains_or_insert.rs b/clippy_lints/src/set_contains_or_insert.rs index e3057e72f9ea..85dd0308b828 100644 --- a/clippy_lints/src/set_contains_or_insert.rs +++ b/clippy_lints/src/set_contains_or_insert.rs @@ -5,8 +5,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::visitors::for_each_expr; use clippy_utils::{SpanlessEq, higher, peel_hir_expr_while, sym}; use rustc_hir::{Expr, ExprKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::symbol::Symbol; use rustc_span::{Span, SyntaxContext}; diff --git a/clippy_lints/src/shadow.rs b/clippy_lints/src/shadow.rs index 892c29f7fbf7..427cf180adf2 100644 --- a/clippy_lints/src/shadow.rs +++ b/clippy_lints/src/shadow.rs @@ -11,8 +11,7 @@ use rustc_hir::{ Block, Body, BodyOwnerKind, Expr, ExprKind, HirId, ItemLocalId, LetExpr, LocalSource, Node, Pat, PatKind, QPath, UnOp, }; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/significant_drop_tightening.rs b/clippy_lints/src/significant_drop_tightening.rs index 0e762a795c7b..064c78d9d1ee 100644 --- a/clippy_lints/src/significant_drop_tightening.rs +++ b/clippy_lints/src/significant_drop_tightening.rs @@ -8,9 +8,8 @@ use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_hir::{self as hir, HirId}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{GenericArgKind, Ty, Unnormalized}; -use rustc_session::impl_lint_pass; use rustc_span::symbol::Ident; use rustc_span::{DUMMY_SP, Span}; use std::borrow::Cow; diff --git a/clippy_lints/src/single_call_fn.rs b/clippy_lints/src/single_call_fn.rs index 8f0fed4d7d27..d0845e5b3f84 100644 --- a/clippy_lints/src/single_call_fn.rs +++ b/clippy_lints/src/single_call_fn.rs @@ -5,8 +5,7 @@ use rustc_data_structures::fx::{FxIndexMap, IndexEntry}; use rustc_hir::def::DefKind; use rustc_hir::def_id::LocalDefId; use rustc_hir::{Expr, ExprKind, HirId, Node}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/single_char_lifetime_names.rs b/clippy_lints/src/single_char_lifetime_names.rs index d30b3fb2c692..1eb153f19b21 100644 --- a/clippy_lints/src/single_char_lifetime_names.rs +++ b/clippy_lints/src/single_char_lifetime_names.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::ast::{GenericParam, GenericParamKind}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/single_component_path_imports.rs b/clippy_lints/src/single_component_path_imports.rs index c1365d299ed2..837aefc767c8 100644 --- a/clippy_lints/src/single_component_path_imports.rs +++ b/clippy_lints/src/single_component_path_imports.rs @@ -3,8 +3,7 @@ use rustc_ast::node_id::{NodeId, NodeMap}; use rustc_ast::visit::{Visitor, walk_expr}; use rustc_ast::{Crate, Expr, ExprKind, Item, ItemKind, MacroDef, ModKind, Ty, TyKind, UseTreeKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::edition::Edition; use rustc_span::symbol::kw; use rustc_span::{Span, Symbol}; diff --git a/clippy_lints/src/single_option_map.rs b/clippy_lints/src/single_option_map.rs index ba9a8368621f..3ecb389fec89 100644 --- a/clippy_lints/src/single_option_map.rs +++ b/clippy_lints/src/single_option_map.rs @@ -5,8 +5,7 @@ use rustc_hir::def::Res; use rustc_hir::def_id::LocalDefId; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, ExprKind, FnDecl, FnRetTy}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{Span, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/single_range_in_vec_init.rs b/clippy_lints/src/single_range_in_vec_init.rs index 1de96df06baf..7ef1e9125dca 100644 --- a/clippy_lints/src/single_range_in_vec_init.rs +++ b/clippy_lints/src/single_range_in_vec_init.rs @@ -7,8 +7,7 @@ use clippy_utils::{is_no_std_crate, sym}; use rustc_ast::{LitIntType, LitKind, RangeLimits, UintTy}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use std::fmt::{self, Display, Formatter}; declare_clippy_lint! { diff --git a/clippy_lints/src/size_of_in_element_count.rs b/clippy_lints/src/size_of_in_element_count.rs index 3623039aece1..d8c30bb1d33e 100644 --- a/clippy_lints/src/size_of_in_element_count.rs +++ b/clippy_lints/src/size_of_in_element_count.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::sym; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; use rustc_span::Symbol; declare_clippy_lint! { @@ -43,7 +42,11 @@ fn get_size_of_ty<'tcx>(cx: &LateContext<'tcx>, expr: &'tcx Expr<'_>, inverted: Some(sym::mem_size_of | sym::mem_size_of_val) ) { - cx.typeck_results().node_args(count_func.hir_id).types().next() + cx.typeck_results() + .node_args(count_func.hir_id) + .iter() + .next() + .and_then(ty::GenericArg::as_type) } else { None } diff --git a/clippy_lints/src/size_of_ref.rs b/clippy_lints/src/size_of_ref.rs index 20ac31847056..72b31fbb10c9 100644 --- a/clippy_lints/src/size_of_ref.rs +++ b/clippy_lints/src/size_of_ref.rs @@ -3,8 +3,7 @@ use clippy_utils::res::{MaybeDef as _, MaybeResPath as _}; use clippy_utils::sym; use clippy_utils::ty::peel_and_count_ty_refs; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/slow_vector_initialization.rs b/clippy_lints/src/slow_vector_initialization.rs index 445c39fa5727..418056edbea8 100644 --- a/clippy_lints/src/slow_vector_initialization.rs +++ b/clippy_lints/src/slow_vector_initialization.rs @@ -6,8 +6,7 @@ use clippy_utils::{SpanlessEq, get_enclosing_block, is_integer_literal, span_con use rustc_errors::Applicability; use rustc_hir::intravisit::{Visitor, walk_block, walk_expr, walk_stmt}; use rustc_hir::{BindingMode, Block, Expr, ExprKind, HirId, PatKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/std_instead_of_core.rs b/clippy_lints/src/std_instead_of_core.rs index 3f4ba4724e94..1c7a6e407cc0 100644 --- a/clippy_lints/src/std_instead_of_core.rs +++ b/clippy_lints/src/std_instead_of_core.rs @@ -6,8 +6,7 @@ use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::DefId; use rustc_hir::{Block, Body, HirId, Path, PathSegment, StabilityLevel, StableSince}; -use rustc_lint::{LateContext, LateLintPass, Lint, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, Lint, LintContext as _, impl_lint_pass}; use rustc_span::symbol::kw; use rustc_span::{Span, sym}; diff --git a/clippy_lints/src/string_patterns.rs b/clippy_lints/src/string_patterns.rs index 7d4461f03095..5f29ea35beaf 100644 --- a/clippy_lints/src/string_patterns.rs +++ b/clippy_lints/src/string_patterns.rs @@ -13,9 +13,8 @@ use itertools::Itertools as _; use rustc_ast::{BinOpKind, LitKind}; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, PatExprKind, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/strings.rs b/clippy_lints/src/strings.rs index 4c60189e06bf..d97a1205d437 100644 --- a/clippy_lints/src/strings.rs +++ b/clippy_lints/src/strings.rs @@ -7,9 +7,8 @@ use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::DefId; use rustc_hir::{BinOpKind, BorrowKind, Expr, ExprKind, Node}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/strlen_on_c_strings.rs b/clippy_lints/src/strlen_on_c_strings.rs index b995f1d84c6e..95f19a133241 100644 --- a/clippy_lints/src/strlen_on_c_strings.rs +++ b/clippy_lints/src/strlen_on_c_strings.rs @@ -8,8 +8,7 @@ use clippy_utils::{match_libc_symbol, sym}; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Block, BlockCheckMode, Expr, ExprKind, Node, UnsafeSource}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/suspicious_operation_groupings.rs b/clippy_lints/src/suspicious_operation_groupings.rs index 57f5fc903956..454271540eee 100644 --- a/clippy_lints/src/suspicious_operation_groupings.rs +++ b/clippy_lints/src/suspicious_operation_groupings.rs @@ -5,8 +5,7 @@ use core::ops::{Add, AddAssign}; use rustc_ast::ast::{BinOpKind, Expr, ExprKind, StmtKind}; use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, impl_lint_pass}; use rustc_span::symbol::Ident; use rustc_span::{Span, Spanned}; diff --git a/clippy_lints/src/suspicious_trait_impl.rs b/clippy_lints/src/suspicious_trait_impl.rs index 694f1896a4d2..74cd87c7cc93 100644 --- a/clippy_lints/src/suspicious_trait_impl.rs +++ b/clippy_lints/src/suspicious_trait_impl.rs @@ -3,8 +3,7 @@ use clippy_utils::visitors::for_each_expr_without_closures; use clippy_utils::{BINOP_TRAITS, OP_ASSIGN_TRAITS, binop_traits, trait_ref_of_method}; use core::ops::ControlFlow; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/suspicious_xor_used_as_pow.rs b/clippy_lints/src/suspicious_xor_used_as_pow.rs index 7ef7b1bc1d23..617fe0082ebf 100644 --- a/clippy_lints/src/suspicious_xor_used_as_pow.rs +++ b/clippy_lints/src/suspicious_xor_used_as_pow.rs @@ -4,8 +4,7 @@ use rustc_ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind}; use rustc_lexer::is_whitespace; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/swap.rs b/clippy_lints/src/swap.rs index 7abf78908985..1a3cb836867d 100644 --- a/clippy_lints/src/swap.rs +++ b/clippy_lints/src/swap.rs @@ -11,9 +11,8 @@ use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_errors::Applicability; use rustc_hir::{AssignOpKind, Block, Expr, ExprKind, LetStmt, PatKind, QPath, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::symbol::Ident; use rustc_span::{Span, Spanned, SyntaxContext}; diff --git a/clippy_lints/src/swap_ptr_to_ref.rs b/clippy_lints/src/swap_ptr_to_ref.rs index e1b5e57432a7..e475f96bba97 100644 --- a/clippy_lints/src/swap_ptr_to_ref.rs +++ b/clippy_lints/src/swap_ptr_to_ref.rs @@ -3,8 +3,7 @@ use clippy_utils::res::{MaybeDef as _, MaybeResPath as _}; use clippy_utils::source::snippet_with_context; use rustc_errors::Applicability; use rustc_hir::{BorrowKind, Expr, ExprKind, Mutability, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{Span, SyntaxContext, sym}; declare_clippy_lint! { diff --git a/clippy_lints/src/tabs_in_doc_comments.rs b/clippy_lints/src/tabs_in_doc_comments.rs index 4b928f33be67..c76f4af37f97 100644 --- a/clippy_lints/src/tabs_in_doc_comments.rs +++ b/clippy_lints/src/tabs_in_doc_comments.rs @@ -3,8 +3,7 @@ use std::iter; use clippy_utils::diagnostics::span_lint_and_sugg; use rustc_ast::ast; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::{BytePos, Span}; declare_clippy_lint! { diff --git a/clippy_lints/src/temporary_assignment.rs b/clippy_lints/src/temporary_assignment.rs index bc242ba73a63..7c85388fc196 100644 --- a/clippy_lints/src/temporary_assignment.rs +++ b/clippy_lints/src/temporary_assignment.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::is_adjusted; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/tests_outside_test_module.rs b/clippy_lints/src/tests_outside_test_module.rs index 229b14ce4112..1d60ede605a0 100644 --- a/clippy_lints/src/tests_outside_test_module.rs +++ b/clippy_lints/src/tests_outside_test_module.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::{is_in_cfg_test, is_in_test_function}; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/time_subtraction.rs b/clippy_lints/src/time_subtraction.rs index 163abd3a630b..ed1e21bbea0d 100644 --- a/clippy_lints/src/time_subtraction.rs +++ b/clippy_lints/src/time_subtraction.rs @@ -9,9 +9,8 @@ use clippy_utils::sugg::Sugg; use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::impl_lint_pass; use rustc_span::SyntaxContext; declare_clippy_lint! { diff --git a/clippy_lints/src/to_digit_is_some.rs b/clippy_lints/src/to_digit_is_some.rs index 0a96a123c959..bf716cde4668 100644 --- a/clippy_lints/src/to_digit_is_some.rs +++ b/clippy_lints/src/to_digit_is_some.rs @@ -6,8 +6,7 @@ use clippy_utils::source::snippet_with_applicability; use clippy_utils::{is_in_const_context, sym}; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/to_string_trait_impl.rs b/clippy_lints/src/to_string_trait_impl.rs index 337b9b8b8220..b2d78cae44f4 100644 --- a/clippy_lints/src/to_string_trait_impl.rs +++ b/clippy_lints/src/to_string_trait_impl.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::sym; use rustc_hir::{Impl, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/toplevel_ref_arg.rs b/clippy_lints/src/toplevel_ref_arg.rs index bce2ede6589b..d4a91de3af04 100644 --- a/clippy_lints/src/toplevel_ref_arg.rs +++ b/clippy_lints/src/toplevel_ref_arg.rs @@ -5,8 +5,7 @@ use clippy_utils::{is_lint_allowed, iter_input_pats}; use rustc_errors::Applicability; use rustc_hir::intravisit::FnKind; use rustc_hir::{BindingMode, Body, ByRef, FnDecl, Mutability, PatKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/trailing_empty_array.rs b/clippy_lints/src/trailing_empty_array.rs index 8bac517682db..9fa66fc86c30 100644 --- a/clippy_lints/src/trailing_empty_array.rs +++ b/clippy_lints/src/trailing_empty_array.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::{has_repr_attr, is_in_test}; use rustc_hir::{Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/trait_bounds.rs b/clippy_lints/src/trait_bounds.rs index 0d8818978fd5..324d451ba5a0 100644 --- a/clippy_lints/src/trait_bounds.rs +++ b/clippy_lints/src/trait_bounds.rs @@ -14,8 +14,7 @@ use rustc_hir::{ AmbigArg, BoundPolarity, GenericBound, Generics, Item, ItemKind, Node, Path, PathSegment, PredicateOrigin, QPath, TraitBoundModifiers, TraitItem, TraitRef, Ty, TyKind, WherePredicateKind, }; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::{Span, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/transmute/mod.rs b/clippy_lints/src/transmute/mod.rs index 77e9558dee42..89beedcfe362 100644 --- a/clippy_lints/src/transmute/mod.rs +++ b/clippy_lints/src/transmute/mod.rs @@ -21,9 +21,8 @@ use clippy_utils::msrvs::Msrv; use clippy_utils::sugg::Sugg; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::impl_lint_pass; use rustc_span::symbol::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/transmute/transmute_undefined_repr.rs b/clippy_lints/src/transmute/transmute_undefined_repr.rs index 05f407140647..83eca2026668 100644 --- a/clippy_lints/src/transmute/transmute_undefined_repr.rs +++ b/clippy_lints/src/transmute/transmute_undefined_repr.rs @@ -323,12 +323,16 @@ fn is_size_pair(ty: Ty<'_>) -> bool { } fn same_except_params<'tcx>(subs1: GenericArgsRef<'tcx>, subs2: GenericArgsRef<'tcx>) -> bool { - // TODO: check const parameters as well. Currently this will consider `Array<5>` the same as - // `Array<6>` - for (ty1, ty2) in subs1.types().zip(subs2.types()).filter(|(ty1, ty2)| ty1 != ty2) { - match (ty1.kind(), ty2.kind()) { - (ty::Param(_), _) | (_, ty::Param(_)) => (), - (ty::Adt(adt1, subs1), ty::Adt(adt2, subs2)) if adt1 == adt2 && same_except_params(subs1, subs2) => (), + for (t1, t2) in subs1.terms().zip(subs2.terms()).filter(|(t1, t2)| t1 != t2) { + match (t1.kind(), t2.kind()) { + (ty::TermKind::Ty(ty1), ty::TermKind::Ty(ty2)) => match (ty1.kind(), ty2.kind()) { + (ty::Param(_), _) | (_, ty::Param(_)) => (), + (ty::Adt(adt1, subs1), ty::Adt(adt2, subs2)) if adt1 == adt2 && same_except_params(subs1, subs2) => (), + _ => return false, + }, + // FIXME: check const parameters better as well. Currently this will consider `Array<5>` the same as + // `Array<6>` + (ty::TermKind::Const(_), ty::TermKind::Const(_)) => {}, _ => return false, } } diff --git a/clippy_lints/src/tuple_array_conversions.rs b/clippy_lints/src/tuple_array_conversions.rs index f496082302fb..c339affc3e8b 100644 --- a/clippy_lints/src/tuple_array_conversions.rs +++ b/clippy_lints/src/tuple_array_conversions.rs @@ -12,9 +12,8 @@ use rustc_ast::visit::{VisitorResult, try_visit, visit_opt, walk_list}; use rustc_data_structures::packed::Pu128; use rustc_hir::intravisit::Visitor; use rustc_hir::{Arm, Expr, ExprKind, HirId, ImplItemKind, ItemKind, Node, PatKind, Stmt, TraitFn, TraitItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::{self, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/types/mod.rs b/clippy_lints/src/types/mod.rs index f6c6e3848a4c..45388800be4b 100644 --- a/clippy_lints/src/types/mod.rs +++ b/clippy_lints/src/types/mod.rs @@ -17,8 +17,7 @@ use rustc_hir::{ Body, FnDecl, FnRetTy, GenericArg, ImplItem, ImplItemKind, Item, ItemKind, LetStmt, MutTy, QPath, TraitFn, TraitItem, TraitItemKind, TyKind, }; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/unconditional_recursion.rs b/clippy_lints/src/unconditional_recursion.rs index d375758e45e8..e3b76b2b8345 100644 --- a/clippy_lints/src/unconditional_recursion.rs +++ b/clippy_lints/src/unconditional_recursion.rs @@ -9,10 +9,9 @@ use rustc_hir::def_id::{DefId, LocalDefId}; use rustc_hir::intravisit::{FnKind, Visitor, walk_body, walk_expr}; use rustc_hir::{Body, Expr, ExprKind, FnDecl, HirId, Item, ItemKind, Node, QPath, TyKind}; use rustc_hir_analysis::lower_ty; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::hir::nested_filter; use rustc_middle::ty::{self, Ty, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::symbol::{Ident, kw}; use rustc_trait_selection::error_reporting::traits::suggestions::ReturnsVisitor; diff --git a/clippy_lints/src/undocumented_unsafe_blocks.rs b/clippy_lints/src/undocumented_unsafe_blocks.rs index 273ec4c824b5..0680f5f56bff 100644 --- a/clippy_lints/src/undocumented_unsafe_blocks.rs +++ b/clippy_lints/src/undocumented_unsafe_blocks.rs @@ -11,8 +11,7 @@ use hir::HirId; use rustc_errors::Applicability; use rustc_hir::{self as hir, Block, BlockCheckMode, FnSig, Impl, ItemKind, Node, UnsafeSource}; use rustc_lexer::{FrontmatterAllowed, TokenKind, tokenize}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{BytePos, Pos as _, RelativeBytePos, Span, SyntaxContext}; declare_clippy_lint! { diff --git a/clippy_lints/src/unicode.rs b/clippy_lints/src/unicode.rs index 3128bf1cc975..84ddef3298a6 100644 --- a/clippy_lints/src/unicode.rs +++ b/clippy_lints/src/unicode.rs @@ -5,8 +5,7 @@ use clippy_utils::source::snippet; use rustc_ast::ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind, HirId}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; use unicode_normalization::UnicodeNormalization as _; diff --git a/clippy_lints/src/uninhabited_references.rs b/clippy_lints/src/uninhabited_references.rs index 96d385ff5323..075dc3633deb 100644 --- a/clippy_lints/src/uninhabited_references.rs +++ b/clippy_lints/src/uninhabited_references.rs @@ -1,9 +1,8 @@ use clippy_utils::diagnostics::span_lint; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, Expr, ExprKind, FnDecl, FnRetTy, TyKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/uninit_vec.rs b/clippy_lints/src/uninit_vec.rs index 4408e40c2478..48ca1e8f3f51 100644 --- a/clippy_lints/src/uninit_vec.rs +++ b/clippy_lints/src/uninit_vec.rs @@ -4,9 +4,8 @@ use clippy_utils::res::{MaybeDef as _, MaybeResPath as _}; use clippy_utils::ty::is_uninit_value_valid_for_ty; use clippy_utils::{SpanlessEq, is_integer_literal, is_lint_allowed, peel_hir_expr_while, sym}; use rustc_hir::{Block, Expr, ExprKind, HirId, PatKind, PathSegment, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; use rustc_span::{Span, SyntaxContext}; // TODO: add `ReadBuf` (RFC 2930) in "How to fix" once it is available in std diff --git a/clippy_lints/src/unit_return_expecting_ord.rs b/clippy_lints/src/unit_return_expecting_ord.rs index 49488c9da34a..2225a85b0948 100644 --- a/clippy_lints/src/unit_return_expecting_ord.rs +++ b/clippy_lints/src/unit_return_expecting_ord.rs @@ -1,10 +1,9 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_hir::def_id::DefId; use rustc_hir::{Closure, Expr, ExprKind, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_middle::ty::{ClauseKind, GenericClauses, ProjectionPredicate, TraitPredicate}; -use rustc_session::declare_lint_pass; +use rustc_middle::ty::{ClauseKind, GenericClauses, ProjectionClause, TraitClause}; use rustc_span::{BytePos, Span, Symbol, sym}; declare_clippy_lint! { @@ -40,7 +39,7 @@ fn get_trait_predicates_for_trait_ids<'tcx>( cx: &LateContext<'tcx>, generics: GenericClauses<'tcx>, trait_ids: &[Option], // At least 2 ids -) -> [Vec>; 3] { +) -> [Vec>; 3] { debug_assert!(trait_ids.len() >= 2); let mut preds = [Vec::new(), Vec::new(), Vec::new()]; for (clause, _) in generics.clauses { @@ -63,8 +62,8 @@ fn get_trait_predicates_for_trait_ids<'tcx>( fn get_projection_pred<'tcx>( cx: &LateContext<'tcx>, generics: GenericClauses<'tcx>, - trait_pred: TraitPredicate<'tcx>, -) -> Option> { + trait_pred: TraitClause<'tcx>, +) -> Option> { generics.clauses.iter().find_map(|(clause, _)| { if let ClauseKind::Projection(pred) = clause.kind().skip_binder() { let projection_pred = cx.tcx.instantiate_bound_regions_with_erased(clause.kind().rebind(pred)); diff --git a/clippy_lints/src/unit_types/mod.rs b/clippy_lints/src/unit_types/mod.rs index ca29975392de..11c04a20f902 100644 --- a/clippy_lints/src/unit_types/mod.rs +++ b/clippy_lints/src/unit_types/mod.rs @@ -5,8 +5,7 @@ mod utils; use clippy_utils::macros::FormatArgsStorage; use rustc_hir::{Expr, LetStmt}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/unnecessary_box_returns.rs b/clippy_lints/src/unnecessary_box_returns.rs index fd40c607c50a..6705309c9e01 100644 --- a/clippy_lints/src/unnecessary_box_returns.rs +++ b/clippy_lints/src/unnecessary_box_returns.rs @@ -3,9 +3,8 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_errors::Applicability; use rustc_hir::def_id::LocalDefId; use rustc_hir::{FnDecl, FnRetTy, ImplItemKind, Item, ItemKind, Node, TraitItem, TraitItemKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::layout::LayoutOf as _; -use rustc_session::impl_lint_pass; use rustc_span::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/unnecessary_literal_bound.rs b/clippy_lints/src/unnecessary_literal_bound.rs index 2ad86ace56e1..db920fad53b4 100644 --- a/clippy_lints/src/unnecessary_literal_bound.rs +++ b/clippy_lints/src/unnecessary_literal_bound.rs @@ -5,8 +5,7 @@ use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::intravisit::{FnKind, Visitor}; use rustc_hir::{Body, Expr, ExprKind, FnDecl, FnRetTy, Lit, MutTy, Mutability, PrimTy, Ty, TyKind, intravisit}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; use rustc_span::def_id::LocalDefId; diff --git a/clippy_lints/src/unnecessary_map_on_constructor.rs b/clippy_lints/src/unnecessary_map_on_constructor.rs index 9f6212ebc16c..eac575f7cb4d 100644 --- a/clippy_lints/src/unnecessary_map_on_constructor.rs +++ b/clippy_lints/src/unnecessary_map_on_constructor.rs @@ -3,8 +3,7 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::source::snippet_with_applicability; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/unnecessary_mut_passed.rs b/clippy_lints/src/unnecessary_mut_passed.rs index c75801583cd3..9f067a1adef8 100644 --- a/clippy_lints/src/unnecessary_mut_passed.rs +++ b/clippy_lints/src/unnecessary_mut_passed.rs @@ -3,9 +3,8 @@ use clippy_utils::source::SpanExt as _; use rustc_errors::Applicability; use rustc_hir::{BorrowKind, Expr, ExprKind, Mutability, intravisit}; use rustc_hir_pretty::PpAnn; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{self, Ty}; -use rustc_session::declare_lint_pass; use std::iter; declare_clippy_lint! { diff --git a/clippy_lints/src/unnecessary_owned_empty_strings.rs b/clippy_lints/src/unnecessary_owned_empty_strings.rs index 22f0a2d62b13..68790482e585 100644 --- a/clippy_lints/src/unnecessary_owned_empty_strings.rs +++ b/clippy_lints/src/unnecessary_owned_empty_strings.rs @@ -5,9 +5,8 @@ use rustc_ast::ast::LitKind; use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{BorrowKind, Expr, ExprKind, Mutability}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/unnecessary_self_imports.rs b/clippy_lints/src/unnecessary_self_imports.rs index 93dff1b85796..a89f10e4fa0c 100644 --- a/clippy_lints/src/unnecessary_self_imports.rs +++ b/clippy_lints/src/unnecessary_self_imports.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use rustc_ast::{Item, ItemKind, UseTreeKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::symbol::kw; declare_clippy_lint! { diff --git a/clippy_lints/src/unnecessary_semicolon.rs b/clippy_lints/src/unnecessary_semicolon.rs index 8a76fdecc0a6..d9c46dfe449b 100644 --- a/clippy_lints/src/unnecessary_semicolon.rs +++ b/clippy_lints/src/unnecessary_semicolon.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_sugg; use clippy_utils::leaks_droppable_temporary_with_limited_lifetime; use rustc_errors::Applicability; use rustc_hir::{Block, ExprKind, HirId, MatchSource, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_span::edition::Edition::Edition2021; declare_clippy_lint! { diff --git a/clippy_lints/src/unnecessary_struct_initialization.rs b/clippy_lints/src/unnecessary_struct_initialization.rs index 2d1df64a22c1..1b4e846127f8 100644 --- a/clippy_lints/src/unnecessary_struct_initialization.rs +++ b/clippy_lints/src/unnecessary_struct_initialization.rs @@ -4,8 +4,7 @@ use clippy_utils::source::snippet; use clippy_utils::ty::is_copy; use clippy_utils::{get_parent_expr, is_mutable}; use rustc_hir::{Expr, ExprField, ExprKind, Path, QPath, StructTailExpr, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::{DesugaringKind, Ident}; declare_clippy_lint! { diff --git a/clippy_lints/src/unnecessary_wraps.rs b/clippy_lints/src/unnecessary_wraps.rs index a4283fa01836..1bf5208524f8 100644 --- a/clippy_lints/src/unnecessary_wraps.rs +++ b/clippy_lints/src/unnecessary_wraps.rs @@ -10,9 +10,8 @@ use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem::{OptionSome, ResultOk}; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, ExprKind, FnDecl, Impl, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::LocalDefId; use rustc_span::symbol::sym; diff --git a/clippy_lints/src/unneeded_struct_pattern.rs b/clippy_lints/src/unneeded_struct_pattern.rs index 3326dea8c5df..687fbdac2e2b 100644 --- a/clippy_lints/src/unneeded_struct_pattern.rs +++ b/clippy_lints/src/unneeded_struct_pattern.rs @@ -3,8 +3,7 @@ use clippy_utils::is_from_proc_macro; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Pat, PatKind, QPath}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/unnested_or_patterns.rs b/clippy_lints/src/unnested_or_patterns.rs index 47dddb961392..23c137c25f82 100644 --- a/clippy_lints/src/unnested_or_patterns.rs +++ b/clippy_lints/src/unnested_or_patterns.rs @@ -11,8 +11,7 @@ use rustc_ast::{self as ast, DUMMY_NODE_ID, Mutability, Pat, PatKind, Pinnedness use rustc_ast_pretty::pprust; use rustc_data_structures::thin_vec::{ThinVec, thin_vec}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, impl_lint_pass}; use rustc_span::DUMMY_SP; // import needed to shadow `PatKind::Box` glob-imported above use std::boxed::Box; diff --git a/clippy_lints/src/unsafe_removed_from_name.rs b/clippy_lints/src/unsafe_removed_from_name.rs index d92e98d04de8..8756a09d56b4 100644 --- a/clippy_lints/src/unsafe_removed_from_name.rs +++ b/clippy_lints/src/unsafe_removed_from_name.rs @@ -1,7 +1,6 @@ use clippy_utils::diagnostics::span_lint; use rustc_ast::ast::{Item, ItemKind, UseTree, UseTreeKind}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::Span; use rustc_span::symbol::Ident; diff --git a/clippy_lints/src/unused_async.rs b/clippy_lints/src/unused_async.rs index 0a6f3f5992ec..4067cc65d754 100644 --- a/clippy_lints/src/unused_async.rs +++ b/clippy_lints/src/unused_async.rs @@ -9,9 +9,8 @@ use rustc_hir::{ Body, Closure, ClosureKind, CoroutineDesugaring, CoroutineKind, Defaultness, Expr, ExprKind, FnDecl, HirId, ImplItem, ImplItemKind, IsAsync, Node, TraitItem, YieldSource, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::hir::nested_filter; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_span::def_id::{LocalDefId, LocalDefIdSet}; diff --git a/clippy_lints/src/unused_io_amount.rs b/clippy_lints/src/unused_io_amount.rs index 5fd1cf509689..dcd82e29a0be 100644 --- a/clippy_lints/src/unused_io_amount.rs +++ b/clippy_lints/src/unused_io_amount.rs @@ -5,8 +5,7 @@ use clippy_utils::{paths, peel_blocks, sym}; use hir::{ExprKind, HirId, PatKind}; use rustc_hir as hir; use rustc_hir::attrs::lang_items::LangItem; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/unused_peekable.rs b/clippy_lints/src/unused_peekable.rs index f8827b916635..faaa22a8d9d8 100644 --- a/clippy_lints/src/unused_peekable.rs +++ b/clippy_lints/src/unused_peekable.rs @@ -5,9 +5,8 @@ use clippy_utils::{fn_def_id, peel_ref_operators, sym}; use rustc_ast::Mutability; use rustc_hir::intravisit::{Visitor, walk_expr}; use rustc_hir::{Block, Expr, ExprKind, HirId, LetStmt, Node, PatKind, PathSegment, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::hir::nested_filter::OnlyBodies; -use rustc_session::declare_lint_pass; use std::ops::ControlFlow; declare_clippy_lint! { diff --git a/clippy_lints/src/unused_result_ok.rs b/clippy_lints/src/unused_result_ok.rs index f33cd7f82ce4..5035ac268da6 100644 --- a/clippy_lints/src/unused_result_ok.rs +++ b/clippy_lints/src/unused_result_ok.rs @@ -4,8 +4,7 @@ use clippy_utils::source::snippet_with_context; use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir::{ExprKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/unused_rounding.rs b/clippy_lints/src/unused_rounding.rs index 4cdf4201139f..3f7055d8674c 100644 --- a/clippy_lints/src/unused_rounding.rs +++ b/clippy_lints/src/unused_rounding.rs @@ -3,8 +3,7 @@ use clippy_utils::source::snippet; use clippy_utils::sym; use rustc_ast::ast::{Expr, ExprKind, MethodCall}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass}; use rustc_span::Symbol; declare_clippy_lint! { diff --git a/clippy_lints/src/unused_self.rs b/clippy_lints/src/unused_self.rs index 587cc8631d02..1e2d9ab27c3e 100644 --- a/clippy_lints/src/unused_self.rs +++ b/clippy_lints/src/unused_self.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::usage::is_todo_unimplemented_stub; use clippy_utils::visitors::is_local_used; use rustc_hir::{Impl, ImplItem, ImplItemKind, ItemKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/unused_trait_names.rs b/clippy_lints/src/unused_trait_names.rs index 8f6bacdd70ec..12508cdce2fc 100644 --- a/clippy_lints/src/unused_trait_names.rs +++ b/clippy_lints/src/unused_trait_names.rs @@ -6,9 +6,8 @@ use clippy_utils::source::snippet_opt; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Item, ItemKind, UseKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::Visibility; -use rustc_session::impl_lint_pass; use rustc_span::symbol::kw; declare_clippy_lint! { diff --git a/clippy_lints/src/unused_unit.rs b/clippy_lints/src/unused_unit.rs index c84a24a28e93..56ad879b27c7 100644 --- a/clippy_lints/src/unused_unit.rs +++ b/clippy_lints/src/unused_unit.rs @@ -9,8 +9,7 @@ use rustc_hir::{ AssocItemConstraintKind, Body, Expr, ExprKind, FnDecl, FnRetTy, GenericArgsParentheses, PolyTraitRef, Term, Ty, TyKind, }; -use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LateContext, LateLintPass, declare_lint_pass}; use rustc_span::edition::Edition; use rustc_span::{BytePos, Pos as _, Span, sym}; diff --git a/clippy_lints/src/unwrap.rs b/clippy_lints/src/unwrap.rs index 0e8939bc2d28..9266fe4fe89a 100644 --- a/clippy_lints/src/unwrap.rs +++ b/clippy_lints/src/unwrap.rs @@ -13,12 +13,11 @@ use rustc_errors::Applicability; use rustc_hir::intravisit::{FnKind, Visitor, walk_expr, walk_fn}; use rustc_hir::{BinOpKind, Body, Expr, ExprKind, FnDecl, HirId, Node, UnOp}; use rustc_hir_typeck::expr_use_visitor::{Delegate, ExprUseVisitor, Place, PlaceWithHirId}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::hir::nested_filter; use rustc_middle::hir::place::ProjectionKind; use rustc_middle::mir::FakeReadCause; use rustc_middle::ty::{self, Ty, TyCtxt}; -use rustc_session::impl_lint_pass; use rustc_span::def_id::LocalDefId; use rustc_span::{Span, Symbol}; diff --git a/clippy_lints/src/unwrap_in_result.rs b/clippy_lints/src/unwrap_in_result.rs index aafd1153f933..34dc7a03cad4 100644 --- a/clippy_lints/src/unwrap_in_result.rs +++ b/clippy_lints/src/unwrap_in_result.rs @@ -3,9 +3,8 @@ use clippy_utils::{return_ty, sym}; use rustc_hir::{ Body, BodyOwnerKind, Expr, ExprKind, FnSig, ImplItem, ImplItemKind, Item, ItemKind, OwnerId, PathSegment, QPath, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::impl_lint_pass; use rustc_span::{Ident, Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/upper_case_acronyms.rs b/clippy_lints/src/upper_case_acronyms.rs index d1df36911b89..fe3c4bbc7548 100644 --- a/clippy_lints/src/upper_case_acronyms.rs +++ b/clippy_lints/src/upper_case_acronyms.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint_hir_and_then; use core::mem::replace; use rustc_errors::Applicability; use rustc_hir::{HirId, Item, ItemKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::symbol::Ident; declare_clippy_lint! { diff --git a/clippy_lints/src/use_self.rs b/clippy_lints/src/use_self.rs index c9340c2a0e61..82f30d48d97d 100644 --- a/clippy_lints/src/use_self.rs +++ b/clippy_lints/src/use_self.rs @@ -12,9 +12,8 @@ use rustc_hir::{ self as hir, AmbigArg, Expr, ExprKind, FnRetTy, FnSig, GenericArgsParentheses, GenericParamKind, HirId, Impl, ImplItemImplKind, ImplItemKind, Item, ItemKind, Node, Pat, PatExpr, PatExprKind, PatKind, Path, QPath, Ty, TyKind, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty::Ty as MiddleTy; -use rustc_session::impl_lint_pass; use rustc_span::Span; use std::iter; use std::ops::ControlFlow; diff --git a/clippy_lints/src/useless_concat.rs b/clippy_lints/src/useless_concat.rs index 96845adb04a2..3a569d99f4d7 100644 --- a/clippy_lints/src/useless_concat.rs +++ b/clippy_lints/src/useless_concat.rs @@ -6,8 +6,7 @@ use rustc_ast::LitKind; use rustc_errors::Applicability; use rustc_hir::{Expr, ExprKind}; use rustc_lexer::TokenKind; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/useless_conversion.rs b/clippy_lints/src/useless_conversion.rs index ed9bf1e86e69..deb679a6aaa2 100644 --- a/clippy_lints/src/useless_conversion.rs +++ b/clippy_lints/src/useless_conversion.rs @@ -10,11 +10,10 @@ use rustc_hir::def_id::DefId; use rustc_hir::{BindingMode, Expr, ExprKind, HirId, MatchSource, Mutability, Node, PatKind}; use rustc_infer::infer::TyCtxtInferExt as _; use rustc_infer::traits::Obligation; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::traits::ObligationCause; use rustc_middle::ty::adjustment::{Adjust, AutoBorrow, AutoBorrowMutability}; use rustc_middle::ty::{self, EarlyBinder, GenericArg, GenericArgsRef, Ty, TypeVisitableExt as _}; -use rustc_session::impl_lint_pass; use rustc_span::Span; use rustc_trait_selection::traits::query::evaluate_obligation::InferCtxtExt as _; @@ -400,7 +399,7 @@ impl<'tcx> LateLintPass<'tcx> for UselessConversion { && let b = cx.typeck_results().expr_ty(recv) && a.is_diag_item(cx, sym::Result) && let ty::Adt(_, args) = a.kind() - && let Some(a_type) = args.types().next() + && let Some(a_type) = args.iter().next().and_then(GenericArg::as_type) && same_type_modulo_regions(a_type, b) { span_lint_and_help( @@ -425,7 +424,7 @@ impl<'tcx> LateLintPass<'tcx> for UselessConversion { if name == sym::try_from_fn && a.is_diag_item(cx, sym::Result) && let ty::Adt(_, args) = a.kind() - && let Some(a_type) = args.types().next() + && let Some(a_type) = args.iter().next().and_then(GenericArg::as_type) && same_type_modulo_regions(a_type, b) { let hint = format!("consider removing `{}()`", snippet(cx, path.span, "TryFrom::try_from")); diff --git a/clippy_lints/src/useless_vec.rs b/clippy_lints/src/useless_vec.rs index f1a3881be2fe..ddfb761af4fc 100644 --- a/clippy_lints/src/useless_vec.rs +++ b/clippy_lints/src/useless_vec.rs @@ -13,10 +13,9 @@ use clippy_utils::visitors::for_each_local_use_after_expr; use clippy_utils::{VEC_METHODS_SHADOWING_SLICE_METHODS, get_parent_expr, higher, is_in_test, span_contains_comment}; use rustc_errors::Applicability; use rustc_hir::{BorrowKind, Expr, ExprKind, HirId, LetStmt, Mutability, Node, Pat, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, impl_lint_pass}; use rustc_middle::ty; use rustc_middle::ty::layout::LayoutOf as _; -use rustc_session::impl_lint_pass; use rustc_span::{DesugaringKind, Span}; pub struct UselessVec { diff --git a/clippy_lints/src/utils/attr_collector.rs b/clippy_lints/src/utils/attr_collector.rs index 169429811d32..7408384a963b 100644 --- a/clippy_lints/src/utils/attr_collector.rs +++ b/clippy_lints/src/utils/attr_collector.rs @@ -2,8 +2,7 @@ use std::mem; use std::sync::{Arc, OnceLock}; use rustc_ast::{Attribute, Crate}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, impl_lint_pass}; use rustc_span::Span; #[derive(Clone, Default)] diff --git a/clippy_lints/src/utils/author.rs b/clippy_lints/src/utils/author.rs index f82edb813d88..0619fafb798c 100644 --- a/clippy_lints/src/utils/author.rs +++ b/clippy_lints/src/utils/author.rs @@ -9,9 +9,8 @@ use rustc_hir::{ self as hir, BindingMode, Body, CaptureBy, Closure, ClosureKind, ConstArg, ConstArgKind, CoroutineKind, ExprKind, FnRetTy, HirId, Lit, PatExprKind, PatKind, QPath, StmtKind, StructTailExpr, }; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{FloatTy, IntTy, TypeckResults, UintTy}; -use rustc_session::declare_lint_pass; use rustc_span::symbol::{Ident, Symbol}; use std::cell::Cell; use std::fmt::{Display, Formatter}; diff --git a/clippy_lints/src/utils/dump_hir.rs b/clippy_lints/src/utils/dump_hir.rs index 4d9691314f1b..9b6447f6e215 100644 --- a/clippy_lints/src/utils/dump_hir.rs +++ b/clippy_lints/src/utils/dump_hir.rs @@ -1,8 +1,7 @@ use clippy_utils::{get_builtin_attr, sym}; use hir::TraitItem; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_lint_pass!( /// ### What it does diff --git a/clippy_lints/src/utils/format_args_collector.rs b/clippy_lints/src/utils/format_args_collector.rs index 3cc06f40c236..f5e07cc5c1d8 100644 --- a/clippy_lints/src/utils/format_args_collector.rs +++ b/clippy_lints/src/utils/format_args_collector.rs @@ -3,8 +3,7 @@ use clippy_utils::source::{SpanExt as _, walk_span_to_context}; use rustc_ast::{Crate, Expr, ExprKind, FormatArgs}; use rustc_data_structures::fx::FxHashMap; use rustc_lexer::{FrontmatterAllowed, TokenKind, tokenize}; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, impl_lint_pass}; use rustc_span::source_map::SourceMap; use rustc_span::{Span, SpanData}; use std::mem; diff --git a/clippy_lints/src/vec_init_then_push.rs b/clippy_lints/src/vec_init_then_push.rs index 18c9499b26f3..ef3504d33540 100644 --- a/clippy_lints/src/vec_init_then_push.rs +++ b/clippy_lints/src/vec_init_then_push.rs @@ -8,8 +8,7 @@ use core::ops::ControlFlow; use rustc_errors::Applicability; use rustc_hir::def::Res; use rustc_hir::{BindingMode, Block, Expr, ExprKind, HirId, LetStmt, Mutability, PatKind, QPath, Stmt, StmtKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_span::{Span, Symbol}; declare_clippy_lint! { diff --git a/clippy_lints/src/visibility.rs b/clippy_lints/src/visibility.rs index d1051b4498cc..7bbdb7af75eb 100644 --- a/clippy_lints/src/visibility.rs +++ b/clippy_lints/src/visibility.rs @@ -2,8 +2,7 @@ use clippy_utils::diagnostics::span_lint_and_then; use clippy_utils::source::SpanExt as _; use rustc_ast::ast::{Item, VisibilityKind}; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::declare_lint_pass; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass}; use rustc_span::Span; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/volatile_composites.rs b/clippy_lints/src/volatile_composites.rs index 7600fab1048c..ac74a0ca54ca 100644 --- a/clippy_lints/src/volatile_composites.rs +++ b/clippy_lints/src/volatile_composites.rs @@ -3,10 +3,9 @@ use clippy_utils::res::MaybeDef as _; use clippy_utils::sym; use rustc_hir::attrs::LangItem; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::layout::LayoutOf as _; use rustc_middle::ty::{self, Ty, TypeVisitableExt as _}; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/wildcard_imports.rs b/clippy_lints/src/wildcard_imports.rs index 57a2c1e667cb..16721fbe77a4 100644 --- a/clippy_lints/src/wildcard_imports.rs +++ b/clippy_lints/src/wildcard_imports.rs @@ -6,9 +6,8 @@ use rustc_data_structures::fx::FxHashSet; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Item, ItemKind, PathSegment, UseKind}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; use rustc_middle::ty; -use rustc_session::impl_lint_pass; use rustc_span::BytePos; use rustc_span::symbol::kw; diff --git a/clippy_lints/src/with_capacity_zero.rs b/clippy_lints/src/with_capacity_zero.rs index 4f58cb107fd3..ae6bb75bedc3 100644 --- a/clippy_lints/src/with_capacity_zero.rs +++ b/clippy_lints/src/with_capacity_zero.rs @@ -4,9 +4,8 @@ use clippy_utils::{fn_def_id, is_integer_literal, last_path_segment, span_contai use rustc_errors::Applicability; use rustc_hir::attrs::lang_items::LangItem; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::Ty; -use rustc_session::declare_lint_pass; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/write/mod.rs b/clippy_lints/src/write/mod.rs index 9937d1e0cad2..ac8ddd3653e5 100644 --- a/clippy_lints/src/write/mod.rs +++ b/clippy_lints/src/write/mod.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::macros::{FormatArgsStorage, root_macro_call_first_node}; use clippy_utils::{is_in_test, sym}; use rustc_hir::{Expr, Impl, Item, ItemKind, OwnerId}; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; -use rustc_session::impl_lint_pass; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, impl_lint_pass}; mod empty_string; mod literal; diff --git a/clippy_lints/src/zero_div_zero.rs b/clippy_lints/src/zero_div_zero.rs index e44c4dc9776e..a215636d41cf 100644 --- a/clippy_lints/src/zero_div_zero.rs +++ b/clippy_lints/src/zero_div_zero.rs @@ -1,8 +1,7 @@ use clippy_utils::consts::{ConstEvalCtxt, Constant}; use clippy_utils::diagnostics::span_lint_and_help; use rustc_hir::{BinOpKind, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; declare_clippy_lint! { /// ### What it does diff --git a/clippy_lints/src/zero_repeat_side_effects.rs b/clippy_lints/src/zero_repeat_side_effects.rs index c1a701382720..1c5e26a59061 100644 --- a/clippy_lints/src/zero_repeat_side_effects.rs +++ b/clippy_lints/src/zero_repeat_side_effects.rs @@ -5,9 +5,8 @@ use rustc_ast::LitKind; use rustc_data_structures::packed::Pu128; use rustc_errors::Applicability; use rustc_hir::{ConstArgKind, Expr, ExprKind, LetStmt, LocalSource, Node}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::{IsSuggestable as _, Ty}; -use rustc_session::declare_lint_pass; use rustc_span::Span; declare_clippy_lint! { diff --git a/clippy_lints/src/zero_sized_map_values.rs b/clippy_lints/src/zero_sized_map_values.rs index bfbb6cc85129..e3c2f92b9ed7 100644 --- a/clippy_lints/src/zero_sized_map_values.rs +++ b/clippy_lints/src/zero_sized_map_values.rs @@ -2,10 +2,9 @@ use clippy_utils::diagnostics::span_lint_and_help; use clippy_utils::res::MaybeDef as _; use clippy_utils::ty::ty_from_hir_ty; use rustc_hir::{self as hir, AmbigArg, HirId, ItemKind, Node}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::ty::layout::LayoutOf as _; use rustc_middle::ty::{self, TypeVisitableExt as _}; -use rustc_session::declare_lint_pass; use rustc_span::sym; declare_clippy_lint! { diff --git a/clippy_lints/src/zombie_processes.rs b/clippy_lints/src/zombie_processes.rs index 68023209b34b..ff65110b7697 100644 --- a/clippy_lints/src/zombie_processes.rs +++ b/clippy_lints/src/zombie_processes.rs @@ -8,9 +8,8 @@ use rustc_errors::Applicability; use rustc_hir::def_id::LocalDefId; use rustc_hir::intravisit::{Visitor, walk_block, walk_expr}; use rustc_hir::{Expr, ExprKind, HirId, LetStmt, Node, PatKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass}; use rustc_middle::hir::nested_filter; -use rustc_session::declare_lint_pass; use rustc_span::Span; use std::ops::ControlFlow; diff --git a/clippy_lints_internal/src/almost_standard_lint_formulation.rs b/clippy_lints_internal/src/almost_standard_lint_formulation.rs index b5a12606fb3e..1d6b95808463 100644 --- a/clippy_lints_internal/src/almost_standard_lint_formulation.rs +++ b/clippy_lints_internal/src/almost_standard_lint_formulation.rs @@ -3,8 +3,7 @@ use clippy_utils::diagnostics::span_lint_and_help; use regex::Regex; use rustc_ast::token::DocFragmentKind; use rustc_hir::{Attribute, Item, ItemKind, Mutability}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::{declare_tool_lint, impl_lint_pass}; +use rustc_lint::{LateContext, LateLintPass, declare_tool_lint, impl_lint_pass}; use rustc_span::{Span, Symbol}; declare_tool_lint! { diff --git a/clippy_lints_internal/src/collapsible_span_lint_calls.rs b/clippy_lints_internal/src/collapsible_span_lint_calls.rs index 77a17110bf81..14fb62e467db 100644 --- a/clippy_lints_internal/src/collapsible_span_lint_calls.rs +++ b/clippy_lints_internal/src/collapsible_span_lint_calls.rs @@ -3,8 +3,7 @@ use clippy_utils::source::{snippet_with_applicability, snippet_with_context}; use clippy_utils::{SpanlessEq, is_lint_allowed, peel_blocks_with_stmt, sym}; use rustc_errors::Applicability; use rustc_hir::{Closure, Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_session::{declare_lint_pass, declare_tool_lint}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass, declare_tool_lint}; use rustc_span::{Span, SyntaxContext}; use std::borrow::{Borrow as _, Cow}; diff --git a/clippy_lints_internal/src/internal_paths.rs b/clippy_lints_internal/src/internal_paths.rs index 14d4139a0065..7548466129f9 100644 --- a/clippy_lints_internal/src/internal_paths.rs +++ b/clippy_lints_internal/src/internal_paths.rs @@ -7,7 +7,7 @@ pub static EARLY_CONTEXT: PathLookup = type_path!(rustc_lint::EarlyContext); pub static EARLY_LINT_PASS: PathLookup = type_path!(rustc_lint::passes::EarlyLintPass); pub static KW_MODULE: PathLookup = type_path!(rustc_span::symbol::kw); pub static LATE_CONTEXT: PathLookup = type_path!(rustc_lint::LateContext); -pub static LINT: PathLookup = type_path!(rustc_lint_defs::Lint); +pub static LINT: PathLookup = type_path!(rustc_lint::Lint); pub static SYMBOL: PathLookup = type_path!(rustc_span::symbol::Symbol); pub static SYMBOL_AS_STR: PathLookup = value_path!(rustc_span::symbol::Symbol::as_str); pub static SYM_MODULE: PathLookup = type_path!(rustc_span::symbol::sym); diff --git a/clippy_lints_internal/src/lib.rs b/clippy_lints_internal/src/lib.rs index cda5d9df3f4b..2d0694098179 100644 --- a/clippy_lints_internal/src/lib.rs +++ b/clippy_lints_internal/src/lib.rs @@ -20,9 +20,7 @@ extern crate rustc_data_structures; extern crate rustc_errors; extern crate rustc_hir; extern crate rustc_lint; -extern crate rustc_lint_defs; extern crate rustc_middle; -extern crate rustc_session; extern crate rustc_span; mod almost_standard_lint_formulation; diff --git a/clippy_lints_internal/src/lint_without_lint_pass.rs b/clippy_lints_internal/src/lint_without_lint_pass.rs index c944dead678b..5cf5d5a85bf1 100644 --- a/clippy_lints_internal/src/lint_without_lint_pass.rs +++ b/clippy_lints_internal/src/lint_without_lint_pass.rs @@ -8,9 +8,8 @@ use rustc_hir as hir; use rustc_hir::def::{DefKind, Res}; use rustc_hir::intravisit::Visitor; use rustc_hir::{CRATE_HIR_ID, ExprKind, HirId, Item, MutTy, Mutability, Path, TyKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_tool_lint, impl_lint_pass}; use rustc_middle::hir::nested_filter; -use rustc_session::{declare_tool_lint, impl_lint_pass}; use rustc_span::symbol::Symbol; use rustc_span::{Span, Spanned}; diff --git a/clippy_lints_internal/src/msrv_attr_impl.rs b/clippy_lints_internal/src/msrv_attr_impl.rs index 52f911b494fb..1c0cf79b4c48 100644 --- a/clippy_lints_internal/src/msrv_attr_impl.rs +++ b/clippy_lints_internal/src/msrv_attr_impl.rs @@ -4,9 +4,8 @@ use clippy_utils::source::snippet; use clippy_utils::sym; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass, LintContext as _}; +use rustc_lint::{LateContext, LateLintPass, LintContext as _, declare_lint_pass, declare_tool_lint}; use rustc_middle::ty::{self, GenericArgKind}; -use rustc_session::{declare_lint_pass, declare_tool_lint}; declare_tool_lint! { /// ### What it does diff --git a/clippy_lints_internal/src/outer_expn_data_pass.rs b/clippy_lints_internal/src/outer_expn_data_pass.rs index 5cdc66ae9053..a53c9b12e41e 100644 --- a/clippy_lints_internal/src/outer_expn_data_pass.rs +++ b/clippy_lints_internal/src/outer_expn_data_pass.rs @@ -3,9 +3,7 @@ use clippy_utils::diagnostics::span_lint_and_sugg; use clippy_utils::{is_lint_allowed, method_calls, sym}; use rustc_errors::Applicability; use rustc_hir as hir; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_lint_defs::declare_tool_lint; -use rustc_session::declare_lint_pass; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass, declare_tool_lint}; declare_tool_lint! { /// ### What it does diff --git a/clippy_lints_internal/src/produce_ice.rs b/clippy_lints_internal/src/produce_ice.rs index 9beab9568abb..82a6bcdf36af 100644 --- a/clippy_lints_internal/src/produce_ice.rs +++ b/clippy_lints_internal/src/produce_ice.rs @@ -1,7 +1,6 @@ use rustc_ast::ast::NodeId; use rustc_ast::visit::FnKind; -use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _}; -use rustc_session::{declare_lint_pass, declare_tool_lint}; +use rustc_lint::{EarlyContext, EarlyLintPass, LintContext as _, declare_lint_pass, declare_tool_lint}; use rustc_span::Span; declare_tool_lint! { diff --git a/clippy_lints_internal/src/repeated_is_diagnostic_item.rs b/clippy_lints_internal/src/repeated_is_diagnostic_item.rs index a7599ae21350..a2d85c056d3f 100644 --- a/clippy_lints_internal/src/repeated_is_diagnostic_item.rs +++ b/clippy_lints_internal/src/repeated_is_diagnostic_item.rs @@ -9,9 +9,8 @@ use clippy_utils::visitors::for_each_expr; use clippy_utils::{eq_expr_value, if_sequence, sym}; use rustc_errors::Applicability; use rustc_hir::{BinOpKind, Block, Expr, ExprKind, Node, StmtKind, UnOp}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass, declare_tool_lint}; use rustc_middle::ty::print::with_forced_trimmed_paths; -use rustc_session::{declare_lint_pass, declare_tool_lint}; use rustc_span::Span; declare_tool_lint! { diff --git a/clippy_lints_internal/src/symbols.rs b/clippy_lints_internal/src/symbols.rs index ae74186ea90c..d0a5b3590fba 100644 --- a/clippy_lints_internal/src/symbols.rs +++ b/clippy_lints_internal/src/symbols.rs @@ -5,10 +5,9 @@ use rustc_data_structures::fx::FxHashMap; use rustc_errors::Applicability; use rustc_hir::def::{DefKind, Res}; use rustc_hir::{Expr, ExprKind, Lit, Node, Pat, PatExprKind, PatKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_tool_lint, impl_lint_pass}; use rustc_middle::mir::ConstValue; use rustc_middle::ty; -use rustc_session::{declare_tool_lint, impl_lint_pass}; use rustc_span::symbol::Symbol; use rustc_span::{Span, sym}; diff --git a/clippy_lints_internal/src/unnecessary_def_path.rs b/clippy_lints_internal/src/unnecessary_def_path.rs index 07bbe6aad645..7cac000447ec 100644 --- a/clippy_lints_internal/src/unnecessary_def_path.rs +++ b/clippy_lints_internal/src/unnecessary_def_path.rs @@ -5,8 +5,7 @@ use clippy_utils::peel_ref_operators; use clippy_utils::res::MaybeQPath as _; use rustc_hir::def_id::DefId; use rustc_hir::{Expr, ExprKind}; -use rustc_lint::{LateContext, LateLintPass}; -use rustc_lint_defs::{declare_lint_pass, declare_tool_lint}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass, declare_tool_lint}; use rustc_middle::mir::ConstValue; use rustc_span::symbol::Symbol; diff --git a/clippy_lints_internal/src/unsorted_clippy_utils_paths.rs b/clippy_lints_internal/src/unsorted_clippy_utils_paths.rs index 9ca4ae31d455..8e4a83b7be4e 100644 --- a/clippy_lints_internal/src/unsorted_clippy_utils_paths.rs +++ b/clippy_lints_internal/src/unsorted_clippy_utils_paths.rs @@ -1,8 +1,7 @@ use clippy_utils::diagnostics::span_lint; use clippy_utils::sym; use rustc_ast::ast::{Crate, ItemKind, ModKind}; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::{declare_lint_pass, declare_tool_lint}; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass, declare_tool_lint}; declare_tool_lint! { /// ### What it does diff --git a/clippy_lints_internal/src/unusual_names.rs b/clippy_lints_internal/src/unusual_names.rs index 4f2dd8cfc809..f7a5b1e59103 100644 --- a/clippy_lints_internal/src/unusual_names.rs +++ b/clippy_lints_internal/src/unusual_names.rs @@ -5,9 +5,8 @@ use itertools::Itertools as _; use rustc_hir::def_id::LocalDefId; use rustc_hir::intravisit::FnKind; use rustc_hir::{Body, FnDecl, Pat, PatKind, Stmt, StmtKind}; -use rustc_lint::{LateContext, LateLintPass}; +use rustc_lint::{LateContext, LateLintPass, declare_lint_pass, declare_tool_lint}; use rustc_middle::ty::Ty; -use rustc_session::{declare_lint_pass, declare_tool_lint}; use rustc_span::symbol::kw; use rustc_span::{Span, Symbol}; diff --git a/clippy_utils/README.md b/clippy_utils/README.md index 55db48e273fd..95fd1bd0ee7f 100644 --- a/clippy_utils/README.md +++ b/clippy_utils/README.md @@ -8,7 +8,7 @@ This crate is only guaranteed to build with this `nightly` toolchain: ``` -nightly-2026-08-20 +nightly-2026-08-23 ``` diff --git a/clippy_utils/src/sym.rs b/clippy_utils/src/sym.rs index aaaf91f363ab..eff08caa695e 100644 --- a/clippy_utils/src/sym.rs +++ b/clippy_utils/src/sym.rs @@ -530,7 +530,6 @@ generate! { rsplitn_mut, rustc_errors, rustc_lint, - rustc_lint_defs, rustc_middle, rustc_span, rustfmt_skip, diff --git a/declare_clippy_lint/src/lib.rs b/declare_clippy_lint/src/lib.rs index f7d9c64bfbd0..6b1e46404b10 100644 --- a/declare_clippy_lint/src/lib.rs +++ b/declare_clippy_lint/src/lib.rs @@ -1,12 +1,10 @@ #![feature(macro_metavar_expr_concat, rustc_private)] -extern crate rustc_lint; +// Needed by `declare_clippy_lint!`. +pub extern crate rustc_lint; use rustc_lint::{Lint, LintId, LintStore}; -// Needed by `declare_clippy_lint!`. -pub extern crate rustc_session; - #[derive(Default)] pub struct LintListBuilder { lints: Vec<&'static Lint>, @@ -129,7 +127,7 @@ macro_rules! declare_clippy_lint_inner { $desc:literal $(, @eval_always = $eval_always:literal)? ) => { - $crate::rustc_session::declare_tool_lint! { + $crate::rustc_lint::declare_tool_lint! { $(#[doc = $docs])* #[clippy::version = $version] $vis clippy::$lint_name, diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 01fc7605fa77..76a1a2abfb52 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,6 +1,6 @@ [toolchain] # begin autogenerated nightly -channel = "nightly-2026-08-20" +channel = "nightly-2026-08-23" # end autogenerated nightly components = ["cargo", "llvm-tools", "rust-src", "rust-std", "rustc", "rustc-dev", "rustfmt"] profile = "minimal" diff --git a/tests/compile-test.rs b/tests/compile-test.rs index e298754d0476..03a74f0b3325 100644 --- a/tests/compile-test.rs +++ b/tests/compile-test.rs @@ -235,6 +235,9 @@ impl TestContext { "-Ainternal_features", "-Zui-testing", "-Zdeduplicate-diagnostics=no", + // FIXME(#160895): While the new solver is enabled by default on nightly, + // we don't want to use it in our tests for now. + "-Znext-solver=coherence", "-Dwarnings", ] .map(OsString::from), @@ -341,7 +344,9 @@ fn run_ui_cargo(cx: &TestContext) { config.program.out_dir_flag = CommandBuilder::cargo().out_dir_flag; config.program.args = vec!["clippy".into(), "--color".into(), "never".into(), "--quiet".into()]; config.program.envs.extend([ - ("RUSTFLAGS".into(), Some("-Dwarnings".into())), + // FIXME(#160895): While the new solver is enabled by default on nightly, + // we don't want to use it in our tests for now. + ("RUSTFLAGS".into(), Some("-Dwarnings -Znext-solver=coherence".into())), ("CARGO_INCREMENTAL".into(), Some("0".into())), ]); // We need to do this while we still have a rustc in the `program` field. diff --git a/tests/ui-internal/check_clippy_version_attribute.rs b/tests/ui-internal/check_clippy_version_attribute.rs index 897002949e67..681b42516a2d 100644 --- a/tests/ui-internal/check_clippy_version_attribute.rs +++ b/tests/ui-internal/check_clippy_version_attribute.rs @@ -4,7 +4,6 @@ #[macro_use] extern crate rustc_middle; #[macro_use] -extern crate rustc_session; extern crate rustc_lint; /////////////////////// diff --git a/tests/ui-internal/check_clippy_version_attribute.stderr b/tests/ui-internal/check_clippy_version_attribute.stderr index 952bc9440303..357b3d5119ff 100644 --- a/tests/ui-internal/check_clippy_version_attribute.stderr +++ b/tests/ui-internal/check_clippy_version_attribute.stderr @@ -1,5 +1,5 @@ error: this item has an invalid `clippy::version` attribute - --> tests/ui-internal/check_clippy_version_attribute.rs:40:1 + --> tests/ui-internal/check_clippy_version_attribute.rs:39:1 | LL | / declare_tool_lint! { LL | | @@ -19,7 +19,7 @@ LL | #![deny(clippy::invalid_clippy_version_attribute, clippy::missing_clippy_ve = note: this error originates in the macro `$crate::declare_tool_lint` which comes from the expansion of the macro `declare_tool_lint` (in Nightly builds, run with -Z macro-backtrace for more info) error: this item has an invalid `clippy::version` attribute - --> tests/ui-internal/check_clippy_version_attribute.rs:49:1 + --> tests/ui-internal/check_clippy_version_attribute.rs:48:1 | LL | / declare_tool_lint! { LL | | @@ -34,7 +34,7 @@ LL | | } = note: this error originates in the macro `$crate::declare_tool_lint` which comes from the expansion of the macro `declare_tool_lint` (in Nightly builds, run with -Z macro-backtrace for more info) error: this lint is missing the `clippy::version` attribute or version value - --> tests/ui-internal/check_clippy_version_attribute.rs:61:1 + --> tests/ui-internal/check_clippy_version_attribute.rs:60:1 | LL | / declare_tool_lint! { LL | | @@ -54,7 +54,7 @@ LL | #![deny(clippy::invalid_clippy_version_attribute, clippy::missing_clippy_ve = note: this error originates in the macro `$crate::declare_tool_lint` which comes from the expansion of the macro `declare_tool_lint` (in Nightly builds, run with -Z macro-backtrace for more info) error: this lint is missing the `clippy::version` attribute or version value - --> tests/ui-internal/check_clippy_version_attribute.rs:70:1 + --> tests/ui-internal/check_clippy_version_attribute.rs:69:1 | LL | / declare_tool_lint! { LL | | diff --git a/tests/ui-internal/check_formulation.rs b/tests/ui-internal/check_formulation.rs index bcbb0d783198..c1e8382dbe1f 100644 --- a/tests/ui-internal/check_formulation.rs +++ b/tests/ui-internal/check_formulation.rs @@ -5,7 +5,6 @@ #[macro_use] extern crate rustc_middle; #[macro_use] -extern crate rustc_session; extern crate rustc_lint; declare_tool_lint! { diff --git a/tests/ui-internal/check_formulation.stderr b/tests/ui-internal/check_formulation.stderr index 9aeb9e1f2d49..f498f04c5fe0 100644 --- a/tests/ui-internal/check_formulation.stderr +++ b/tests/ui-internal/check_formulation.stderr @@ -1,5 +1,5 @@ error: non-standard lint formulation - --> tests/ui-internal/check_formulation.rs:24:5 + --> tests/ui-internal/check_formulation.rs:23:5 | LL | /// Check for lint formulations that are correct | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -12,7 +12,7 @@ LL | #![deny(clippy::almost_standard_lint_formulation)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: non-standard lint formulation - --> tests/ui-internal/check_formulation.rs:35:5 + --> tests/ui-internal/check_formulation.rs:34:5 | LL | /// Detects uses of incorrect formulations | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/ui-internal/collapsible_span_lint_calls.fixed b/tests/ui-internal/collapsible_span_lint_calls.fixed index 2b646a38b534..dc9b9a12da93 100644 --- a/tests/ui-internal/collapsible_span_lint_calls.fixed +++ b/tests/ui-internal/collapsible_span_lint_calls.fixed @@ -6,14 +6,12 @@ extern crate clippy_utils; extern crate rustc_ast; extern crate rustc_errors; extern crate rustc_lint; -extern crate rustc_session; extern crate rustc_span; use clippy_utils::diagnostics::{span_lint_and_help, span_lint_and_note, span_lint_and_sugg, span_lint_and_then}; use rustc_ast::ast::Expr; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::{declare_lint_pass, declare_tool_lint}; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass, declare_tool_lint}; declare_tool_lint! { pub clippy::TEST_LINT, diff --git a/tests/ui-internal/collapsible_span_lint_calls.rs b/tests/ui-internal/collapsible_span_lint_calls.rs index 500552370053..83ea66652268 100644 --- a/tests/ui-internal/collapsible_span_lint_calls.rs +++ b/tests/ui-internal/collapsible_span_lint_calls.rs @@ -6,14 +6,12 @@ extern crate clippy_utils; extern crate rustc_ast; extern crate rustc_errors; extern crate rustc_lint; -extern crate rustc_session; extern crate rustc_span; use clippy_utils::diagnostics::{span_lint_and_help, span_lint_and_note, span_lint_and_sugg, span_lint_and_then}; use rustc_ast::ast::Expr; use rustc_errors::Applicability; -use rustc_lint::{EarlyContext, EarlyLintPass}; -use rustc_session::{declare_lint_pass, declare_tool_lint}; +use rustc_lint::{EarlyContext, EarlyLintPass, declare_lint_pass, declare_tool_lint}; declare_tool_lint! { pub clippy::TEST_LINT, diff --git a/tests/ui-internal/collapsible_span_lint_calls.stderr b/tests/ui-internal/collapsible_span_lint_calls.stderr index 76b453019270..380127902aa1 100644 --- a/tests/ui-internal/collapsible_span_lint_calls.stderr +++ b/tests/ui-internal/collapsible_span_lint_calls.stderr @@ -1,5 +1,5 @@ error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:35:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:33:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -14,7 +14,7 @@ LL | #![deny(clippy::collapsible_span_lint_calls)] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:39:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:37:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -23,7 +23,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_help(cx, TEST_LINT, expr.span, lint_msg, Some(expr.span), help_msg)` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:43:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:41:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -32,7 +32,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_help(cx, TEST_LINT, expr.span, lint_msg, None, help_msg)` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:47:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:45:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -41,7 +41,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_note(cx, TEST_LINT, expr.span, lint_msg, Some(expr.span), note_msg)` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:51:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:49:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -50,7 +50,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_note(cx, TEST_LINT, expr.span, lint_msg, None, note_msg)` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:72:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:70:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -62,7 +62,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_sugg(cx, TEST_LINT, expr.span, lint_msg, format!("try using {foo}"), format!("{foo}.use"), Applicability::MachineApplicable)` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:81:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:79:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -71,7 +71,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_help(cx, TEST_LINT, expr.span, lint_msg, Some(expr.span), format!("try using {foo}"))` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:85:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:83:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -80,7 +80,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_help(cx, TEST_LINT, expr.span, lint_msg, None, format!("try using {foo}"))` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:89:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:87:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | @@ -89,7 +89,7 @@ LL | | }); | |__________^ help: collapse into: `span_lint_and_note(cx, TEST_LINT, expr.span, lint_msg, Some(expr.span), format!("required because of {foo}"))` error: this call is collapsible - --> tests/ui-internal/collapsible_span_lint_calls.rs:93:9 + --> tests/ui-internal/collapsible_span_lint_calls.rs:91:9 | LL | / span_lint_and_then(cx, TEST_LINT, expr.span, lint_msg, |db| { LL | | diff --git a/tests/ui-internal/custom_ice_message.stderr b/tests/ui-internal/custom_ice_message.stderr index 884d3d035a29..2e4d53104fba 100644 --- a/tests/ui-internal/custom_ice_message.stderr +++ b/tests/ui-internal/custom_ice_message.stderr @@ -20,7 +20,7 @@ note: please make sure that you have updated to the latest nightly note: rustc running on -note: compiler flags: -Z ui-testing -Z deduplicate-diagnostics=no +note: compiler flags: -Z ui-testing -Z deduplicate-diagnostics=no -Z next-solver=coherence note: Clippy version: foo diff --git a/tests/ui-internal/default_lint.rs b/tests/ui-internal/default_lint.rs index 809f2c4d080d..eb7ef999a6f5 100644 --- a/tests/ui-internal/default_lint.rs +++ b/tests/ui-internal/default_lint.rs @@ -5,7 +5,6 @@ #[macro_use] extern crate rustc_middle; #[macro_use] -extern crate rustc_session; extern crate rustc_lint; declare_tool_lint! { diff --git a/tests/ui-internal/default_lint.stderr b/tests/ui-internal/default_lint.stderr index 2c700ec82dcd..62fa6bf6eaa3 100644 --- a/tests/ui-internal/default_lint.stderr +++ b/tests/ui-internal/default_lint.stderr @@ -1,5 +1,5 @@ error: the lint `TEST_LINT_DEFAULT` has the default lint description - --> tests/ui-internal/default_lint.rs:18:1 + --> tests/ui-internal/default_lint.rs:17:1 | LL | / declare_tool_lint! { LL | | diff --git a/tests/ui-internal/invalid_msrv_attr_impl.fixed b/tests/ui-internal/invalid_msrv_attr_impl.fixed index 238ef9ae6d0a..b1ee7dfe9158 100644 --- a/tests/ui-internal/invalid_msrv_attr_impl.fixed +++ b/tests/ui-internal/invalid_msrv_attr_impl.fixed @@ -4,10 +4,9 @@ extern crate rustc_ast; extern crate rustc_hir; +#[macro_use] extern crate rustc_lint; extern crate rustc_middle; -#[macro_use] -extern crate rustc_session; use clippy_utils::extract_msrv_attr; use clippy_utils::msrvs::MsrvStack; use rustc_hir::Expr; diff --git a/tests/ui-internal/invalid_msrv_attr_impl.rs b/tests/ui-internal/invalid_msrv_attr_impl.rs index 7753dcaad713..746478b4af4b 100644 --- a/tests/ui-internal/invalid_msrv_attr_impl.rs +++ b/tests/ui-internal/invalid_msrv_attr_impl.rs @@ -4,10 +4,9 @@ extern crate rustc_ast; extern crate rustc_hir; +#[macro_use] extern crate rustc_lint; extern crate rustc_middle; -#[macro_use] -extern crate rustc_session; use clippy_utils::extract_msrv_attr; use clippy_utils::msrvs::MsrvStack; use rustc_hir::Expr; diff --git a/tests/ui-internal/invalid_msrv_attr_impl.stderr b/tests/ui-internal/invalid_msrv_attr_impl.stderr index d5928d8c0c2d..d65d86f0fd5a 100644 --- a/tests/ui-internal/invalid_msrv_attr_impl.stderr +++ b/tests/ui-internal/invalid_msrv_attr_impl.stderr @@ -1,5 +1,5 @@ error: `extract_msrv_attr!` macro missing from `EarlyLintPass` implementation - --> tests/ui-internal/invalid_msrv_attr_impl.rs:28:1 + --> tests/ui-internal/invalid_msrv_attr_impl.rs:27:1 | LL | impl EarlyLintPass for Pass { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/tests/ui-internal/lint_without_lint_pass.rs b/tests/ui-internal/lint_without_lint_pass.rs index 6b649132aca3..c42e66c57622 100644 --- a/tests/ui-internal/lint_without_lint_pass.rs +++ b/tests/ui-internal/lint_without_lint_pass.rs @@ -5,7 +5,6 @@ #[macro_use] extern crate rustc_middle; #[macro_use] -extern crate rustc_session; extern crate rustc_lint; use rustc_lint::{LintPass, LintVec}; diff --git a/tests/ui-internal/lint_without_lint_pass.stderr b/tests/ui-internal/lint_without_lint_pass.stderr index 3798293f4c11..8069a1d69d08 100644 --- a/tests/ui-internal/lint_without_lint_pass.stderr +++ b/tests/ui-internal/lint_without_lint_pass.stderr @@ -1,5 +1,5 @@ error: the lint `TEST_LINT` is not added to any `LintPass` - --> tests/ui-internal/lint_without_lint_pass.rs:12:1 + --> tests/ui-internal/lint_without_lint_pass.rs:11:1 | LL | / declare_tool_lint! { LL | | diff --git a/tests/ui-internal/outer_expn_data.fixed b/tests/ui-internal/outer_expn_data.fixed index 900ca5b2ab9d..00cf76a2e41d 100644 --- a/tests/ui-internal/outer_expn_data.fixed +++ b/tests/ui-internal/outer_expn_data.fixed @@ -3,10 +3,9 @@ #![feature(rustc_private)] extern crate rustc_hir; +#[macro_use] extern crate rustc_lint; extern crate rustc_middle; -#[macro_use] -extern crate rustc_session; use rustc_hir::Expr; use rustc_lint::{LateContext, LateLintPass}; diff --git a/tests/ui-internal/outer_expn_data.rs b/tests/ui-internal/outer_expn_data.rs index bcfc42aa2ac7..148803f974ec 100644 --- a/tests/ui-internal/outer_expn_data.rs +++ b/tests/ui-internal/outer_expn_data.rs @@ -3,10 +3,9 @@ #![feature(rustc_private)] extern crate rustc_hir; +#[macro_use] extern crate rustc_lint; extern crate rustc_middle; -#[macro_use] -extern crate rustc_session; use rustc_hir::Expr; use rustc_lint::{LateContext, LateLintPass}; diff --git a/tests/ui-internal/outer_expn_data.stderr b/tests/ui-internal/outer_expn_data.stderr index b86138a5d45d..65b5d8e4d28e 100644 --- a/tests/ui-internal/outer_expn_data.stderr +++ b/tests/ui-internal/outer_expn_data.stderr @@ -1,5 +1,5 @@ error: usage of `outer_expn().expn_data()` - --> tests/ui-internal/outer_expn_data.rs:23:34 + --> tests/ui-internal/outer_expn_data.rs:22:34 | LL | let _ = expr.span.ctxt().outer_expn().expn_data(); | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `outer_expn_data()`