Skip to content
Permalink
Browse files

Change `next_point` when `shrink_to_hi` is more appropriate

  • Loading branch information
estebank committed Jan 10, 2020
1 parent d558f6a commit b93ef68245807bac97cd17ea9eaa13169380d815
@@ -106,7 +106,7 @@ fn parse_assert<'a>(
let custom_message =
if let token::Literal(token::Lit { kind: token::Str, .. }) = parser.token.kind {
let mut err = cx.struct_span_warn(parser.token.span, "unexpected string literal");
let comma_span = cx.source_map().next_point(parser.prev_span);
let comma_span = parser.prev_span.shrink_to_hi();
err.span_suggestion_short(
comma_span,
"try adding a comma",
@@ -696,7 +696,7 @@ pub(super) fn parse(
if parser.token.span.is_dummy() {
parser.token.span
} else {
sess.source_map().next_point(parser.token.span)
parser.token.span.shrink_to_hi()
},
),
"missing tokens in macro arguments",
@@ -265,10 +265,7 @@ impl<'a> Parser<'a> {
};
(
format!("expected one of {}, found {}", expect, actual),
(
self.sess.source_map().next_point(self.prev_span),
format!("expected one of {}", short_expect),
),
(self.prev_span.shrink_to_hi(), format!("expected one of {}", short_expect)),
)
} else if expected.is_empty() {
(
@@ -278,7 +275,7 @@ impl<'a> Parser<'a> {
} else {
(
format!("expected {}, found {}", expect, actual),
(self.sess.source_map().next_point(self.prev_span), format!("expected {}", expect)),
(self.prev_span.shrink_to_hi(), format!("expected {}", expect)),
)
};
self.last_unexpected_token_span = Some(self.token.span);
@@ -809,7 +806,7 @@ impl<'a> Parser<'a> {
_ if self.prev_span == DUMMY_SP => (self.token.span, self.token.span),
// EOF, don't want to point at the following char, but rather the last token.
(token::Eof, None) => (self.prev_span, self.token.span),
_ => (self.sess.source_map().next_point(self.prev_span), self.token.span),
_ => (self.prev_span.shrink_to_hi(), self.token.span),
};
let msg = format!(
"expected `{}`, found {}",
@@ -1132,7 +1129,7 @@ impl<'a> Parser<'a> {
err.span_label(sp, "unclosed delimiter");
}
err.span_suggestion_short(
self.sess.source_map().next_point(self.prev_span),
self.prev_span.shrink_to_hi(),
&format!("{} may belong here", delim.to_string()),
delim.to_string(),
Applicability::MaybeIncorrect,
@@ -1646,7 +1646,7 @@ impl<'a> Parser<'a> {
// | |
// | parsed until here as `"y" & X`
err.span_suggestion_short(
cm.next_point(arm_start_span),
arm_start_span.shrink_to_hi(),
"missing a comma here to end this `match` arm",
",".to_owned(),
Applicability::MachineApplicable,
@@ -1628,7 +1628,7 @@ impl<'a> Parser<'a> {
// it's safe to peel off one character only when it has the close delim
self.prev_span.with_lo(self.prev_span.hi() - BytePos(1))
} else {
self.sess.source_map().next_point(self.prev_span)
self.prev_span.shrink_to_hi()
};

self.struct_span_err(
@@ -1644,7 +1644,7 @@ impl<'a> Parser<'a> {
Applicability::MaybeIncorrect,
)
.span_suggestion(
self.sess.source_map().next_point(self.prev_span),
self.prev_span.shrink_to_hi(),
"add a semicolon",
';'.to_string(),
Applicability::MaybeIncorrect,
@@ -765,7 +765,7 @@ impl<'a> Parser<'a> {
break;
}
Err(mut expect_err) => {
let sp = self.sess.source_map().next_point(self.prev_span);
let sp = self.prev_span.shrink_to_hi();
let token_str = pprust::token_kind_to_string(t);

// Attempt to keep parsing if it was a similar separator.
@@ -242,7 +242,7 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
) = (parent_node, callee_node)
{
let start = sp.shrink_to_lo();
let end = self.tcx.sess.source_map().next_point(callee_span);
let end = callee_span.shrink_to_hi();
err.multipart_suggestion(
"if you meant to create this closure and immediately call it, surround the \
closure with parenthesis",
@@ -319,9 +319,8 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
let call_is_multiline =
self.tcx.sess.source_map().is_multiline(call_expr.span);
if call_is_multiline {
let span = self.tcx.sess.source_map().next_point(callee.span);
err.span_suggestion(
span,
callee.span.shrink_to_hi(),
"try adding a semicolon",
";".to_owned(),
Applicability::MaybeIncorrect,
@@ -4953,9 +4953,8 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
| ExprKind::Loop(..)
| ExprKind::Match(..)
| ExprKind::Block(..) => {
let sp = self.tcx.sess.source_map().next_point(cause_span);
err.span_suggestion(
sp,
cause_span.shrink_to_hi(),
"try adding a semicolon",
";".to_string(),
Applicability::MachineApplicable,

0 comments on commit b93ef68

Please sign in to comment.
You can’t perform that action at this time.