Fix ICE of for-loop mut borrowck where no suggestions are available

This commit is contained in:
Deadbeef
2021-03-23 10:45:34 +08:00
parent 5d04957a4b
commit 09d71448b7
3 changed files with 54 additions and 7 deletions

View File

@@ -642,15 +642,18 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, 'tcx> {
.starts_with(&original_method_ident.name.to_string())
})
.map(|ident| format!("{}()", ident))
.peekable()
});
if let Some(suggestions) = opt_suggestions {
err.span_suggestions(
path_segment.ident.span,
&format!("use mutable method"),
suggestions,
Applicability::MaybeIncorrect,
);
if let Some(mut suggestions) = opt_suggestions {
if suggestions.peek().is_some() {
err.span_suggestions(
path_segment.ident.span,
&format!("use mutable method"),
suggestions,
Applicability::MaybeIncorrect,
);
}
}
}
};