Skip to content

Commit 365e90b

Browse files
committed
Auto merge of rust-lang#3223 - rust-lang:rustup-2023-12-12, r=RalfJung
Automatic Rustup
2 parents 8c66f1b + 6f176ca commit 365e90b

22 files changed

+107
-267
lines changed

clippy_lints/src/crate_in_macro_def.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ fn contains_unhygienic_crate_reference(tts: &TokenStream) -> Option<Span> {
9292
{
9393
return Some(span);
9494
}
95-
if let TokenTree::Delimited(_, _, tts) = &curr {
95+
if let TokenTree::Delimited(.., tts) = &curr {
9696
let span = contains_unhygienic_crate_reference(tts);
9797
if span.is_some() {
9898
return span;

clippy_lints/src/declared_lints.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -684,7 +684,6 @@ pub(crate) static LINTS: &[&crate::LintInfo] = &[
684684
crate::unit_types::UNIT_ARG_INFO,
685685
crate::unit_types::UNIT_CMP_INFO,
686686
crate::unnamed_address::FN_ADDRESS_COMPARISONS_INFO,
687-
crate::unnamed_address::VTABLE_ADDRESS_COMPARISONS_INFO,
688687
crate::unnecessary_box_returns::UNNECESSARY_BOX_RETURNS_INFO,
689688
crate::unnecessary_map_on_constructor::UNNECESSARY_MAP_ON_CONSTRUCTOR_INFO,
690689
crate::unnecessary_owned_empty_strings::UNNECESSARY_OWNED_EMPTY_STRINGS_INFO,

clippy_lints/src/derive.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -450,12 +450,12 @@ fn check_partial_eq_without_eq<'tcx>(cx: &LateContext<'tcx>, span: Span, trait_r
450450
&& let Some(def_id) = trait_ref.trait_def_id()
451451
&& cx.tcx.is_diagnostic_item(sym::PartialEq, def_id)
452452
&& let param_env = param_env_for_derived_eq(cx.tcx, adt.did(), eq_trait_def_id)
453-
&& !implements_trait_with_env(cx.tcx, param_env, ty, eq_trait_def_id, &[])
453+
&& !implements_trait_with_env(cx.tcx, param_env, ty, eq_trait_def_id, adt.did(),&[])
454454
// If all of our fields implement `Eq`, we can implement `Eq` too
455455
&& adt
456456
.all_fields()
457457
.map(|f| f.ty(cx.tcx, args))
458-
.all(|ty| implements_trait_with_env(cx.tcx, param_env, ty, eq_trait_def_id, &[]))
458+
.all(|ty| implements_trait_with_env(cx.tcx, param_env, ty, eq_trait_def_id, adt.did(), &[]))
459459
{
460460
span_lint_and_sugg(
461461
cx,

clippy_lints/src/escape.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
use clippy_utils::diagnostics::span_lint_hir;
2-
use rustc_hir::{self, intravisit, AssocItemKind, Body, FnDecl, HirId, HirIdSet, Impl, ItemKind, Node, Pat, PatKind};
2+
use rustc_hir::{intravisit, AssocItemKind, Body, FnDecl, HirId, HirIdSet, Impl, ItemKind, Node, Pat, PatKind};
33
use rustc_hir_typeck::expr_use_visitor::{Delegate, ExprUseVisitor, PlaceBase, PlaceWithHirId};
44
use rustc_infer::infer::TyCtxtInferExt;
55
use rustc_lint::{LateContext, LateLintPass};

clippy_lints/src/implied_bounds_in_impls.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,10 @@ fn is_same_generics<'tcx>(
194194
.enumerate()
195195
.skip(1) // skip `Self` implicit arg
196196
.all(|(arg_index, arg)| {
197+
if [implied_by_generics.host_effect_index, implied_generics.host_effect_index].contains(&Some(arg_index)) {
198+
// skip host effect params in determining whether generics are same
199+
return true;
200+
}
197201
if let Some(ty) = arg.as_type() {
198202
if let &ty::Param(ty::ParamTy { index, .. }) = ty.kind()
199203
// `index == 0` means that it's referring to `Self`,

clippy_lints/src/loops/explicit_iter_loop.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ fn is_ref_iterable<'tcx>(
118118
.liberate_late_bound_regions(fn_id, cx.tcx.fn_sig(fn_id).skip_binder())
119119
&& let &[req_self_ty, req_res_ty] = &**sig.inputs_and_output
120120
&& let param_env = cx.tcx.param_env(fn_id)
121-
&& implements_trait_with_env(cx.tcx, param_env, req_self_ty, trait_id, &[])
121+
&& implements_trait_with_env(cx.tcx, param_env, req_self_ty, trait_id, fn_id, &[])
122122
&& let Some(into_iter_ty) =
123123
make_normalized_projection_with_regions(cx.tcx, param_env, trait_id, sym!(IntoIter), [req_self_ty])
124124
&& let req_res_ty = normalize_with_regions(cx.tcx, param_env, req_res_ty)

clippy_lints/src/loops/manual_memcpy.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ use rustc_lint::LateContext;
1212
use rustc_middle::ty::{self, Ty};
1313
use rustc_span::symbol::sym;
1414
use std::fmt::Display;
15-
use std::iter::Iterator;
1615

1716
/// Checks for `for` loops that sequentially copy items from one slice-like
1817
/// object to another.

clippy_lints/src/loops/needless_range_loop.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ use rustc_lint::LateContext;
1313
use rustc_middle::middle::region;
1414
use rustc_middle::ty::{self, Ty};
1515
use rustc_span::symbol::{sym, Symbol};
16-
use std::iter::{self, Iterator};
16+
use std::iter::{self};
1717
use std::mem;
1818

1919
/// Checks for looping over a range and then indexing a sequence with it.

clippy_lints/src/loops/never_loop.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use rustc_errors::Applicability;
88
use rustc_hir::{Block, Destination, Expr, ExprKind, HirId, InlineAsmOperand, Pat, Stmt, StmtKind};
99
use rustc_lint::LateContext;
1010
use rustc_span::{sym, Span};
11-
use std::iter::{once, Iterator};
11+
use std::iter::once;
1212

1313
pub(super) fn check<'tcx>(
1414
cx: &LateContext<'tcx>,

clippy_lints/src/loops/same_item_push.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ use rustc_hir::{BindingAnnotation, Block, Expr, ExprKind, HirId, Mutability, Nod
1111
use rustc_lint::LateContext;
1212
use rustc_span::symbol::sym;
1313
use rustc_span::SyntaxContext;
14-
use std::iter::Iterator;
1514

1615
/// Detects for loop pushing the same item into a Vec
1716
pub(super) fn check<'tcx>(

0 commit comments

Comments
 (0)