From 96fd2181ba97c75789579881fc62b68c8b65b759 Mon Sep 17 00:00:00 2001 From: Clint Frederickson Date: Wed, 13 Feb 2019 08:48:37 -0700 Subject: [PATCH] check if `used_place` and `moved_place` are equal when determining if the move was partial --- src/librustc_mir/borrow_check/error_reporting.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/librustc_mir/borrow_check/error_reporting.rs b/src/librustc_mir/borrow_check/error_reporting.rs index e42c12125ee3..0fa427aea813 100644 --- a/src/librustc_mir/borrow_check/error_reporting.rs +++ b/src/librustc_mir/borrow_check/error_reporting.rs @@ -133,11 +133,9 @@ impl<'cx, 'gcx, 'tcx> MirBorrowckCtxt<'cx, 'gcx, 'tcx> { let is_partial_move = move_site_vec.iter().any(|move_site| { let move_out = self.move_data.moves[(*move_site).moi]; let moved_place = &self.move_data.move_paths[move_out.path].place; -// dbg!(moved_place); -// dbg!(used_place); -// if used_place != moved_place { + if used_place != moved_place { used_place.is_prefix_of(moved_place) -// } else { false } + } else { false } }); for move_site in &move_site_vec { let move_out = self.move_data.moves[(*move_site).moi];