Rollup merge of #125582 - scottmcm:less-from-usize, r=jieyouxu · rust-lang/rust@4ff7869 (original) (raw)

File tree

2 files changed

lines changed

2 files changed

lines changed

Original file line number Diff line number Diff line change
@@ -142,10 +142,10 @@ impl<'tcx> ValueAnalysis<'tcx> for ConstAnalysis<'_, 'tcx> {
142 142 _ => return,
143 143 };
144 144 if let Some(variant_target_idx) = variant_target {
145 -for (field_index, operand) in operands.iter().enumerate() {
145 +for (field_index, operand) in operands.iter_enumerated() {
146 146 if let Some(field) = self.map().apply(
147 147 variant_target_idx,
148 -TrackElem::Field(FieldIdx::from_usize(field_index)),
148 +TrackElem::Field(field_index),
149 149 ) {
150 150 self.assign_operand(state, field, operand);
151 151 }
Original file line number Diff line number Diff line change
@@ -9,7 +9,6 @@ use rustc_middle::ty::layout::ValidityRequirement;
9 9 use rustc_middle::ty::{self, GenericArgsRef, ParamEnv, Ty, TyCtxt};
10 10 use rustc_span::sym;
11 11 use rustc_span::symbol::Symbol;
12 -use rustc_target::abi::FieldIdx;
13 12 use rustc_target::spec::abi::Abi;
14 13
15 14 pub struct InstSimplify;
@@ -217,11 +216,11 @@ impl<'tcx> InstSimplifyContext<'tcx, '_> {
217 216 && let Some(place) = operand.place()
218 217 {
219 218 let variant = adt_def.non_enum_variant();
220 -for (i, field) in variant.fields.iter().enumerate() {
219 +for (i, field) in variant.fields.iter_enumerated() {
221 220 let field_ty = field.ty(self.tcx, args);
222 221 if field_ty == *cast_ty {
223 222 let place = place.project_deeper(
224 -&[ProjectionElem::Field(FieldIdx::from_usize(i), *cast_ty)],
223 +&[ProjectionElem::Field(i, *cast_ty)],
225 224 self.tcx,
226 225 );
227 226 let operand = if operand.is_move() {