about summary refs log tree commit diff
path: root/compiler/rustc_parse/src
diff options
context:
space:
mode:
authorGimgim <93856041+gimbles@users.noreply.github.com>2022-07-29 19:21:30 +0530
committerGimgim <93856041+gimbles@users.noreply.github.com>2022-07-29 19:21:30 +0530
commitd0e881eefe871d807fd7527a1366154f1712ada1 (patch)
tree2b4bf3234a505bdfc5ee7efce2067c0fb9977303 /compiler/rustc_parse/src
parent7dfdd64433b07239fbac50b8227b6e03a0ba8f30 (diff)
downloadrust-d0e881eefe871d807fd7527a1366154f1712ada1.tar.gz
rust-d0e881eefe871d807fd7527a1366154f1712ada1.zip
Add diagnostic when using public instead of pub
Diffstat (limited to 'compiler/rustc_parse/src')
-rw-r--r--compiler/rustc_parse/src/parser/diagnostics.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/compiler/rustc_parse/src/parser/diagnostics.rs b/compiler/rustc_parse/src/parser/diagnostics.rs
index 63055c56c5c..09329f18c67 100644
--- a/compiler/rustc_parse/src/parser/diagnostics.rs
+++ b/compiler/rustc_parse/src/parser/diagnostics.rs
@@ -601,6 +601,17 @@ impl<'a> Parser<'a> {
         self.last_unexpected_token_span = Some(self.token.span);
         let mut err = self.struct_span_err(self.token.span, &msg_exp);
 
+        if let TokenKind::Ident(symbol, _) = &self.prev_token.kind {
+            if symbol.as_str() == "public" {
+                err.span_suggestion_short(
+                    self.prev_token.span,
+                    "write `pub` instead of `public` to make the item public",
+                    "pub",
+                    appl,
+                );
+            }
+        }
+
         // Add suggestion for a missing closing angle bracket if '>' is included in expected_tokens
         // there are unclosed angle brackets
         if self.unmatched_angle_bracket_count > 0