Skip to content

Commit 1eb0844

Browse files
committed
parse: move condition into guard
1 parent 32295ae commit 1eb0844

File tree

1 file changed

+28
-28
lines changed

1 file changed

+28
-28
lines changed

src/librustc_parse/parser/stmt.rs

+28-28
Original file line numberDiff line numberDiff line change
@@ -366,36 +366,36 @@ impl<'a> Parser<'a> {
366366

367367
let mut eat_semi = true;
368368
match stmt.kind {
369-
StmtKind::Expr(ref expr) if self.token != token::Eof => {
370-
// expression without semicolon
371-
if classify::expr_requires_semi_to_be_stmt(expr) {
372-
// Just check for errors and recover; do not eat semicolon yet.
373-
if let Err(mut e) =
374-
self.expect_one_of(&[], &[token::Semi, token::CloseDelim(token::Brace)])
375-
{
376-
if let TokenKind::DocComment(..) = self.token.kind {
377-
if let Ok(snippet) = self.span_to_snippet(self.token.span) {
378-
let sp = self.token.span;
379-
let marker = &snippet[..3];
380-
let (comment_marker, doc_comment_marker) = marker.split_at(2);
381-
382-
e.span_suggestion(
383-
sp.with_hi(sp.lo() + BytePos(marker.len() as u32)),
384-
&format!(
385-
"add a space before `{}` to use a regular comment",
386-
doc_comment_marker,
387-
),
388-
format!("{} {}", comment_marker, doc_comment_marker),
389-
Applicability::MaybeIncorrect,
390-
);
391-
}
369+
// Expression without semicolon.
370+
StmtKind::Expr(ref expr)
371+
if self.token != token::Eof && classify::expr_requires_semi_to_be_stmt(expr) =>
372+
{
373+
// Just check for errors and recover; do not eat semicolon yet.
374+
if let Err(mut e) =
375+
self.expect_one_of(&[], &[token::Semi, token::CloseDelim(token::Brace)])
376+
{
377+
if let TokenKind::DocComment(..) = self.token.kind {
378+
if let Ok(snippet) = self.span_to_snippet(self.token.span) {
379+
let sp = self.token.span;
380+
let marker = &snippet[..3];
381+
let (comment_marker, doc_comment_marker) = marker.split_at(2);
382+
383+
e.span_suggestion(
384+
sp.with_hi(sp.lo() + BytePos(marker.len() as u32)),
385+
&format!(
386+
"add a space before `{}` to use a regular comment",
387+
doc_comment_marker,
388+
),
389+
format!("{} {}", comment_marker, doc_comment_marker),
390+
Applicability::MaybeIncorrect,
391+
);
392392
}
393-
e.emit();
394-
self.recover_stmt();
395-
// Don't complain about type errors in body tail after parse error (#57383).
396-
let sp = expr.span.to(self.prev_span);
397-
stmt.kind = StmtKind::Expr(self.mk_expr_err(sp));
398393
}
394+
e.emit();
395+
self.recover_stmt();
396+
// Don't complain about type errors in body tail after parse error (#57383).
397+
let sp = expr.span.to(self.prev_span);
398+
stmt.kind = StmtKind::Expr(self.mk_expr_err(sp));
399399
}
400400
}
401401
StmtKind::Local(..) => {

0 commit comments

Comments
 (0)