NFC don't convert types to identical types

This commit is contained in:
Matthias Krüger 2023-12-15 23:56:24 +01:00
parent a96d57bdb6
commit 8479945c08
24 changed files with 35 additions and 50 deletions

View File

@ -1260,9 +1260,7 @@ fn is_ordinary(lower_ctx: &mut LoweringContext<'_, '_>, lhs: &Expr) -> bool {
);
// `a = lhs1; b = lhs2;`.
let stmts = self
.arena
.alloc_from_iter(std::iter::once(destructure_let).chain(assignments.into_iter()));
let stmts = self.arena.alloc_from_iter(std::iter::once(destructure_let).chain(assignments));
// Wrap everything in a block.
hir::ExprKind::Block(self.block_all(whole_span, stmts, None), None)

View File

@ -607,7 +607,7 @@ fn alloc_new_file_metadata<'ll>(
if let Ok(rel_path) = abs_path.strip_prefix(working_directory) {
(
working_directory.to_string_lossy().into(),
working_directory.to_string_lossy(),
rel_path.to_string_lossy().into_owned(),
)
} else {

View File

@ -396,7 +396,7 @@ pub fn build_coroutine_variant_struct_type_di_node<'ll, 'tcx>(
})
.collect();
state_specific_fields.into_iter().chain(common_fields.into_iter()).collect()
state_specific_fields.into_iter().chain(common_fields).collect()
},
|cx| build_generic_type_param_di_nodes(cx, coroutine_type_and_layout.ty),
)

View File

@ -198,7 +198,7 @@ pub fn insert_presorted(&mut self, elements: Vec<(K, V)>) {
if index == self.data.len() || elements.last().unwrap().0 < self.data[index].0 {
// We can copy the whole range without having to mix with
// existing elements.
self.data.splice(index..index, elements.into_iter());
self.data.splice(index..index, elements);
return;
}

View File

@ -1560,7 +1560,7 @@ pub fn precedence(&self) -> ExprPrecedence {
ExprKind::Call(..) => ExprPrecedence::Call,
ExprKind::MethodCall(..) => ExprPrecedence::MethodCall,
ExprKind::Tup(_) => ExprPrecedence::Tup,
ExprKind::Binary(op, ..) => ExprPrecedence::Binary(op.node.into()),
ExprKind::Binary(op, ..) => ExprPrecedence::Binary(op.node),
ExprKind::Unary(..) => ExprPrecedence::Unary,
ExprKind::Lit(_) => ExprPrecedence::Lit,
ExprKind::Type(..) | ExprKind::Cast(..) => ExprPrecedence::Cast,
@ -1700,11 +1700,9 @@ pub fn can_have_side_effects(&self) -> bool {
// them being used only for its side-effects.
base.can_have_side_effects()
}
ExprKind::Struct(_, fields, init) => fields
.iter()
.map(|field| field.expr)
.chain(init.into_iter())
.any(|e| e.can_have_side_effects()),
ExprKind::Struct(_, fields, init) => {
fields.iter().map(|field| field.expr).chain(init).any(|e| e.can_have_side_effects())
}
ExprKind::Array(args)
| ExprKind::Tup(args)

View File

@ -350,7 +350,7 @@ fn poly_trait_ref_binder_info(&mut self) -> (Vec<ty::BoundVariableKind>, BinderS
// Nested poly trait refs have the binders concatenated
let mut full_binders =
self.map.late_bound_vars.entry(*hir_id).or_default().clone();
full_binders.extend(supertrait_bound_vars.into_iter());
full_binders.extend(supertrait_bound_vars);
break (full_binders, BinderScopeType::Concatenating);
}
}

View File

@ -573,13 +573,13 @@ fn add_to_diagnostic_with<F>(self, diag: &mut rustc_errors::Diagnostic, f: F)
{
match self {
CastUnknownPointerSub::To(span) => {
let msg = f(diag, crate::fluent_generated::hir_typeck_label_to.into());
let msg = f(diag, crate::fluent_generated::hir_typeck_label_to);
diag.span_label(span, msg);
let msg = f(diag, crate::fluent_generated::hir_typeck_note.into());
let msg = f(diag, crate::fluent_generated::hir_typeck_note);
diag.note(msg);
}
CastUnknownPointerSub::From(span) => {
let msg = f(diag, crate::fluent_generated::hir_typeck_label_from.into());
let msg = f(diag, crate::fluent_generated::hir_typeck_label_from);
diag.span_label(span, msg);
}
}

View File

@ -1548,9 +1548,9 @@ fn consider_probe(
);
let candidate_obligations = impl_obligations
.chain(norm_obligations.into_iter())
.chain(norm_obligations)
.chain(ref_obligations.iter().cloned())
.chain(normalization_obligations.into_iter());
.chain(normalization_obligations);
// Evaluate those obligations to see if they might possibly hold.
for o in candidate_obligations {

View File

@ -130,12 +130,7 @@ pub fn alias_bound(
// see the extensive comment in projection_must_outlive
let recursive_bound = {
let mut components = smallvec![];
compute_alias_components_recursive(
self.tcx,
alias_ty_as_ty.into(),
&mut components,
visited,
);
compute_alias_components_recursive(self.tcx, alias_ty_as_ty, &mut components, visited);
self.bound_from_components(&components, visited)
};

View File

@ -552,7 +552,7 @@ pub fn instantiate(
}
pub fn register_obligations(&mut self, obligations: PredicateObligations<'tcx>) {
self.obligations.extend(obligations.into_iter());
self.obligations.extend(obligations);
}
pub fn register_predicates(&mut self, obligations: impl IntoIterator<Item: ToPredicate<'tcx>>) {

View File

@ -956,11 +956,7 @@ fn for_each_aliasing_place(
// The local is not tracked at all, so it does not alias anything.
return;
};
let elems = place
.projection
.iter()
.map(|&elem| elem.try_into())
.chain(tail_elem.map(Ok).into_iter());
let elems = place.projection.iter().map(|&elem| elem.try_into()).chain(tail_elem.map(Ok));
for elem in elems {
// A field aliases the parent place.
if let Some(vi) = self.places[index].value_index {

View File

@ -496,7 +496,7 @@ fn eval_operand(
FlatSet::Elem(scalar) => {
let ty = op.ty(self.local_decls, self.tcx);
self.tcx.layout_of(self.param_env.and(ty)).map_or(FlatSet::Top, |layout| {
FlatSet::Elem(ImmTy::from_scalar(scalar.into(), layout))
FlatSet::Elem(ImmTy::from_scalar(scalar, layout))
})
}
FlatSet::Bottom => FlatSet::Bottom,

View File

@ -923,7 +923,7 @@ fn parse_type_alias(&mut self, defaultness: Defaultness) -> PResult<'a, ItemInfo
);
let where_predicates_split = before_where_clause.predicates.len();
let mut predicates = before_where_clause.predicates;
predicates.extend(after_where_clause.predicates.into_iter());
predicates.extend(after_where_clause.predicates);
let where_clause = WhereClause {
has_where_token: before_where_clause.has_where_token
|| after_where_clause.has_where_token,

View File

@ -215,7 +215,7 @@ fn emit_malformed_attribute(
} else {
"the following are the possible correct uses"
},
suggestions.into_iter(),
suggestions,
Applicability::HasPlaceholders,
)
.emit();

View File

@ -407,8 +407,7 @@ fn parse_links<'md>(doc: &'md str) -> Vec<Box<str>> {
doc,
main_body_opts(),
Some(&mut broken_link_callback),
)
.into_iter();
);
let mut links = Vec::new();
while let Some(event) = event_iter.next() {

View File

@ -1579,7 +1579,7 @@ macro_rules! ins {
pub fn build_configuration(sess: &Session, mut user_cfg: Cfg) -> Cfg {
// Combine the configuration requested by the session (command line) with
// some default and generated configuration items.
user_cfg.extend(default_configuration(sess).into_iter());
user_cfg.extend(default_configuration(sess));
user_cfg
}

View File

@ -158,7 +158,6 @@ fn find_crates(&self, name: &str) -> Vec<stable_mir::Crate> {
let crate_name = tables.tcx.crate_name(*crate_num).to_string();
(name == crate_name).then(|| smir_crate(tables.tcx, *crate_num))
})
.into_iter()
.flatten()
.collect();
crates

View File

@ -345,7 +345,7 @@ fn generics_require_sized_self(tcx: TyCtxt<'_>, def_id: DefId) -> bool {
// Search for a predicate like `Self : Sized` amongst the trait bounds.
let predicates = tcx.predicates_of(def_id);
let predicates = predicates.instantiate_identity(tcx).predicates;
elaborate(tcx, predicates.into_iter()).any(|pred| match pred.kind().skip_binder() {
elaborate(tcx, predicates).any(|pred| match pred.kind().skip_binder() {
ty::ClauseKind::Trait(ref trait_pred) => {
trait_pred.def_id() == sized_def_id && trait_pred.self_ty().is_param(0)
}

View File

@ -220,9 +220,8 @@ pub fn impl_subject_and_oblig<'a, 'tcx>(
selcx.infcx.at(&ObligationCause::dummy(), param_env).normalize(predicates);
let impl_obligations = super::predicates_for_generics(cause, param_env, predicates);
let impl_obligations = impl_obligations
.chain(normalization_obligations1.into_iter())
.chain(normalization_obligations2.into_iter());
let impl_obligations =
impl_obligations.chain(normalization_obligations1).chain(normalization_obligations2);
(subject, impl_obligations)
}

View File

@ -743,7 +743,7 @@ pub(crate) fn clean_generics<'tcx>(
.into_iter()
.map(|(lifetime, bounds)| WherePredicate::RegionPredicate { lifetime, bounds }),
)
.chain(eq_predicates.into_iter())
.chain(eq_predicates)
.collect(),
}
}

View File

@ -1383,7 +1383,7 @@ fn parse(
};
if custom_code_classes_in_docs {
call(&mut TagIterator::new(string, extra).into_iter())
call(&mut TagIterator::new(string, extra))
} else {
call(&mut tokens(string))
}

View File

@ -33,7 +33,7 @@ pub(crate) fn init_lints<F>(
let lints = || {
lint::builtin::HardwiredLints::get_lints()
.into_iter()
.chain(rustc_lint::SoftLints::get_lints().into_iter())
.chain(rustc_lint::SoftLints::get_lints())
};
let lint_opts = lints()
@ -46,7 +46,7 @@ pub(crate) fn init_lints<F>(
filter_call(lint)
}
})
.chain(lint_opts.into_iter())
.chain(lint_opts)
.collect::<Vec<_>>();
let lint_caps = lints()

View File

@ -48,7 +48,7 @@ struct TestsWithCustomClasses {
impl crate::doctest::Tester for TestsWithCustomClasses {
fn add_test(&mut self, _: String, config: LangString, _: usize) {
self.custom_classes_found.extend(config.added_classes.into_iter());
self.custom_classes_found.extend(config.added_classes);
}
}

View File

@ -168,10 +168,11 @@ pub(crate) fn visit(mut self) -> Module<'tcx> {
})
.collect::<Vec<_>>()
})
.chain(
[Cfg::Cfg(sym::test, None), Cfg::Cfg(sym::doc, None), Cfg::Cfg(sym::doctest, None)]
.into_iter(),
)
.chain([
Cfg::Cfg(sym::test, None),
Cfg::Cfg(sym::doc, None),
Cfg::Cfg(sym::doctest, None),
])
.collect();
self.cx.cache.exact_paths = self.exact_paths;