diff --git a/clippy_lints/src/methods.rs b/clippy_lints/src/methods.rs index 550b9f16e5a..04a5f157cf3 100644 --- a/clippy_lints/src/methods.rs +++ b/clippy_lints/src/methods.rs @@ -1167,7 +1167,8 @@ fn lint_unnecessary_fold(cx: &LateContext, expr: &hir::Expr, fold_args: &[hir::E then { // Span containing `.fold(...)` - let fold_span = fold_args[0].span.next_point().with_hi(fold_args[2].span.hi() + BytePos(1)); + let next_point = cx.sess().codemap().next_point(fold_args[0].span); + let fold_span = next_point.with_hi(fold_args[2].span.hi() + BytePos(1)); let sugg = if replacement_has_args { format!( diff --git a/clippy_lints/src/utils/sugg.rs b/clippy_lints/src/utils/sugg.rs index 2f651917bc1..e18c1274498 100644 --- a/clippy_lints/src/utils/sugg.rs +++ b/clippy_lints/src/utils/sugg.rs @@ -502,9 +502,8 @@ impl<'a, 'b, 'c, T: LintContext<'c>> DiagnosticBuilderExt<'c, T> for rustc_error fn suggest_remove_item(&mut self, cx: &T, item: Span, msg: &str) { let mut remove_span = item; - let fmpos = cx.sess() - .codemap() - .lookup_byte_offset(remove_span.next_point().hi()); + let hi = cx.sess().codemap().next_point(remove_span).hi(); + let fmpos = cx.sess().codemap().lookup_byte_offset(hi); if let Some(ref src) = fmpos.fm.src { let non_whitespace_offset = src[fmpos.pos.to_usize()..].find(|c| c != ' ' && c != '\t' && c != '\n');