]> git.lizzy.rs Git - rust.git/commitdiff
Avoid cloning Place in visit_rvalue
authorSantiago Pastorino <spastorino@gmail.com>
Fri, 19 Jul 2019 20:49:58 +0000 (22:49 +0200)
committerSantiago Pastorino <spastorino@gmail.com>
Sat, 20 Jul 2019 03:08:39 +0000 (05:08 +0200)
src/librustc_mir/transform/qualify_consts.rs

index a05ac89921de98f06d72ad97824e8af37959eab0..739e2172b03bc6f6892fc06f5724495d815aa0b3 100644 (file)
@@ -1199,10 +1199,10 @@ fn visit_rvalue(&mut self, rvalue: &Rvalue<'tcx>, location: Location) {
                         MutatingUseContext::Borrow,
                     ),
                 };
-                self.visit_place(&Place {
-                    base: place.base.clone(),
-                    projection: proj.clone(),
-                }, ctx, location);
+                self.visit_place_base(&place.base, ctx, location);
+                if let Some(proj) = proj {
+                    self.visit_projection(&place.base, proj, ctx, location);
+                }
             } else {
                 self.super_rvalue(rvalue, location);
             }