about summary refs log tree commit diff
path: root/compiler/rustc_parse/src
diff options
context:
space:
mode:
authorTakayuki Maeda <takoyaki0316@gmail.com>2022-08-15 16:10:31 +0900
committerTakayuki Maeda <takoyaki0316@gmail.com>2022-08-15 16:10:31 +0900
commit40dcf89a26bde41734f6c3eb71d9eb6420e45ef8 (patch)
treef86f103a9e63e36a013d6f8c5c2b7b90b7b417fa /compiler/rustc_parse/src
parent0068b8bf4b150b506ef0871be4e8652fd4308f84 (diff)
downloadrust-40dcf89a26bde41734f6c3eb71d9eb6420e45ef8.tar.gz
rust-40dcf89a26bde41734f6c3eb71d9eb6420e45ef8.zip
suggest adding a missing semicolon before an item
Diffstat (limited to 'compiler/rustc_parse/src')
-rw-r--r--compiler/rustc_parse/src/parser/diagnostics.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler/rustc_parse/src/parser/diagnostics.rs b/compiler/rustc_parse/src/parser/diagnostics.rs
index f4c6b33a529..d0fb768caa6 100644
--- a/compiler/rustc_parse/src/parser/diagnostics.rs
+++ b/compiler/rustc_parse/src/parser/diagnostics.rs
@@ -555,10 +555,12 @@ impl<'a> Parser<'a> {
                 return Ok(true);
             } else if self.look_ahead(0, |t| {
                 t == &token::CloseDelim(Delimiter::Brace)
-                    || (t.can_begin_expr() && t != &token::Semi && t != &token::Pound)
+                    || ((t.can_begin_expr() || t.can_begin_item())
+                        && t != &token::Semi
+                        && t != &token::Pound)
                     // Avoid triggering with too many trailing `#` in raw string.
                     || (sm.is_multiline(
-                        self.prev_token.span.shrink_to_hi().until(self.token.span.shrink_to_lo())
+                        self.prev_token.span.shrink_to_hi().until(self.token.span.shrink_to_lo()),
                     ) && t == &token::Pound)
             }) && !expected.contains(&TokenType::Token(token::Comma))
             {