diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2020-03-07 17:27:34 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-03-07 17:27:34 +0100 |
| commit | f1f4864de3ecfa106d03f2172f2c80edf8eeb02c (patch) | |
| tree | 49faa3c7b1b796e528b03fb1af1258ae9d59cd81 /src | |
| parent | 10f999b72d24fa181a3ec54fd21807b6a664e615 (diff) | |
| parent | 0ed6e795fb3e8e70765576b929e3eb030c4f10d3 (diff) | |
| download | rust-f1f4864de3ecfa106d03f2172f2c80edf8eeb02c.tar.gz rust-f1f4864de3ecfa106d03f2172f2c80edf8eeb02c.zip | |
Rollup merge of #69787 - spastorino:use-local-directly-its-copy, r=oli-obk
mir::Local is Copy we can pass it by value in these cases r? @oli-obk
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc/mir/visit.rs | 10 | ||||
| -rw-r--r-- | src/librustc_codegen_ssa/mir/analyze.rs | 2 | ||||
| -rw-r--r-- | src/librustc_mir/transform/check_consts/validation.rs | 12 |
3 files changed, 12 insertions, 12 deletions
diff --git a/src/librustc/mir/visit.rs b/src/librustc/mir/visit.rs index 409c981801b..2aca6f684f4 100644 --- a/src/librustc/mir/visit.rs +++ b/src/librustc/mir/visit.rs @@ -888,7 +888,7 @@ macro_rules! visit_place_fns { () => ( fn visit_projection( &mut self, - local: &Local, + local: Local, projection: &[PlaceElem<'tcx>], context: PlaceContext, location: Location, @@ -898,7 +898,7 @@ macro_rules! visit_place_fns { fn visit_projection_elem( &mut self, - local: &Local, + local: Local, proj_base: &[PlaceElem<'tcx>], elem: &PlaceElem<'tcx>, context: PlaceContext, @@ -925,7 +925,7 @@ macro_rules! visit_place_fns { self.visit_place_base(&place.local, context, location); - self.visit_projection(&place.local, + self.visit_projection(place.local, &place.projection, context, location); @@ -933,7 +933,7 @@ macro_rules! visit_place_fns { fn super_projection( &mut self, - local: &Local, + local: Local, projection: &[PlaceElem<'tcx>], context: PlaceContext, location: Location, @@ -947,7 +947,7 @@ macro_rules! visit_place_fns { fn super_projection_elem( &mut self, - _local: &Local, + _local: Local, _proj_base: &[PlaceElem<'tcx>], elem: &PlaceElem<'tcx>, _context: PlaceContext, diff --git a/src/librustc_codegen_ssa/mir/analyze.rs b/src/librustc_codegen_ssa/mir/analyze.rs index 7bf222f4701..b8a7d7df487 100644 --- a/src/librustc_codegen_ssa/mir/analyze.rs +++ b/src/librustc_codegen_ssa/mir/analyze.rs @@ -203,7 +203,7 @@ impl<Bx: BuilderMethods<'a, 'tcx>> LocalAnalyzer<'mir, 'a, 'tcx, Bx> { } self.visit_place_base(&place_ref.local, context, location); - self.visit_projection(&place_ref.local, place_ref.projection, context, location); + self.visit_projection(place_ref.local, place_ref.projection, context, location); } } } diff --git a/src/librustc_mir/transform/check_consts/validation.rs b/src/librustc_mir/transform/check_consts/validation.rs index 1553f826c7e..133772407c5 100644 --- a/src/librustc_mir/transform/check_consts/validation.rs +++ b/src/librustc_mir/transform/check_consts/validation.rs @@ -276,7 +276,7 @@ impl Visitor<'tcx> for Validator<'_, 'mir, 'tcx> { } }; self.visit_place_base(&place.local, ctx, location); - self.visit_projection(&place.local, reborrowed_proj, ctx, location); + self.visit_projection(place.local, reborrowed_proj, ctx, location); return; } } @@ -289,7 +289,7 @@ impl Visitor<'tcx> for Validator<'_, 'mir, 'tcx> { Mutability::Mut => PlaceContext::MutatingUse(MutatingUseContext::AddressOf), }; self.visit_place_base(&place.local, ctx, location); - self.visit_projection(&place.local, reborrowed_proj, ctx, location); + self.visit_projection(place.local, reborrowed_proj, ctx, location); return; } } @@ -408,7 +408,7 @@ impl Visitor<'tcx> for Validator<'_, 'mir, 'tcx> { } fn visit_projection_elem( &mut self, - place_local: &Local, + place_local: Local, proj_base: &[PlaceElem<'tcx>], elem: &PlaceElem<'tcx>, context: PlaceContext, @@ -428,11 +428,11 @@ impl Visitor<'tcx> for Validator<'_, 'mir, 'tcx> { match elem { ProjectionElem::Deref => { - let base_ty = Place::ty_from(*place_local, proj_base, *self.body, self.tcx).ty; + let base_ty = Place::ty_from(place_local, proj_base, *self.body, self.tcx).ty; if let ty::RawPtr(_) = base_ty.kind { if proj_base.is_empty() { if let (local, []) = (place_local, proj_base) { - let decl = &self.body.local_decls[*local]; + let decl = &self.body.local_decls[local]; if let LocalInfo::StaticRef { def_id, .. } = decl.local_info { let span = decl.source_info.span; self.check_static(def_id, span); @@ -452,7 +452,7 @@ impl Visitor<'tcx> for Validator<'_, 'mir, 'tcx> { | ProjectionElem::Subslice { .. } | ProjectionElem::Field(..) | ProjectionElem::Index(_) => { - let base_ty = Place::ty_from(*place_local, proj_base, *self.body, self.tcx).ty; + let base_ty = Place::ty_from(place_local, proj_base, *self.body, self.tcx).ty; match base_ty.ty_adt_def() { Some(def) if def.is_union() => { self.check_op(ops::UnionAccess); |
