about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMatthew Jasper <mjjasper1@gmail.com>2018-07-29 18:02:13 +0100
committerMatthew Jasper <mjjasper1@gmail.com>2018-07-29 18:04:09 +0100
commit18d5f821480803811f3f7ef866ef0ef8ae9bf9c1 (patch)
tree318275b86f4dd8d0b0ef107c19cdd15eddf0fbd2 /src
parent503455bcc7dd3acd31964504237735f5ef238520 (diff)
downloadrust-18d5f821480803811f3f7ef866ef0ef8ae9bf9c1.tar.gz
rust-18d5f821480803811f3f7ef866ef0ef8ae9bf9c1.zip
Change order of copy and borrow to avoid conflict
Note that the first argument is `self as &mut dyn Delegate`, so this
isn't allowed with two-phase borrows.
Diffstat (limited to 'src')
-rw-r--r--src/librustc_passes/rvalue_promotion.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/librustc_passes/rvalue_promotion.rs b/src/librustc_passes/rvalue_promotion.rs
index d223dc2a353..114fd8754a2 100644
--- a/src/librustc_passes/rvalue_promotion.rs
+++ b/src/librustc_passes/rvalue_promotion.rs
@@ -248,7 +248,8 @@ impl<'a, 'tcx> CheckCrateVisitor<'a, 'tcx> {
         let tcx = self.tcx;
         let param_env = self.param_env;
         let region_scope_tree = self.tcx.region_scope_tree(item_def_id);
-        euv::ExprUseVisitor::new(self, tcx, param_env, &region_scope_tree, self.tables, None)
+        let tables = self.tables;
+        euv::ExprUseVisitor::new(self, tcx, param_env, &region_scope_tree, tables, None)
             .consume_body(body);
 
         let body_promotable = self.check_expr(&body.value);