Skip to content

Commit 4e5eda3

Browse files
committed
compute is_partial_move outside of the move_site loop for clarity
1 parent d4c52bf commit 4e5eda3

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

src/librustc_mir/borrow_check/error_reporting.rs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,15 +130,22 @@ impl<'cx, 'gcx, 'tcx> MirBorrowckCtxt<'cx, 'gcx, 'tcx> {
130130
);
131131

132132
let mut is_loop_move = false;
133-
let mut is_partial_move = false;
133+
let is_partial_move = move_site_vec.iter().any(|move_site| {
134+
let move_out = self.move_data.moves[(*move_site).moi];
135+
let moved_place = &self.move_data.move_paths[move_out.path].place;
136+
// dbg!(moved_place);
137+
// dbg!(used_place);
138+
// if used_place != moved_place {
139+
used_place.is_prefix_of(moved_place)
140+
// } else { false }
141+
});
134142
for move_site in &move_site_vec {
135143
let move_out = self.move_data.moves[(*move_site).moi];
136144
let moved_place = &self.move_data.move_paths[move_out.path].place;
137145

138146
let move_spans = self.move_spans(moved_place, move_out.source);
139147
let move_span = move_spans.args_or_use();
140148

141-
is_partial_move = used_place.is_prefix_of(moved_place);
142149
let move_msg = if move_spans.for_closure() {
143150
" into closure"
144151
} else {

0 commit comments

Comments
 (0)