about summary refs log tree commit diff
path: root/src/libsyntax/parse
diff options
context:
space:
mode:
Diffstat (limited to 'src/libsyntax/parse')
-rw-r--r--src/libsyntax/parse/parser.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index f57fca2cfcf..a28157106ba 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -732,6 +732,12 @@ impl<'a> Parser<'a> {
                   format!("expected {} here", expect)))
             };
             let mut err = self.fatal(&msg_exp);
+            if self.token.is_ident_named("and") {
+                err.help("Use `&&` instead of `and` for the boolean operator");
+            }
+            if self.token.is_ident_named("or") {
+                err.help("Use `||` instead of `or` for the boolean operator");
+            }
             let sp = if self.token == token::Token::Eof {
                 // This is EOF, don't want to point at the following char, but rather the last token
                 self.prev_span
@@ -4751,6 +4757,13 @@ impl<'a> Parser<'a> {
                 e.span_label(sp, "expected `{`");
             }
 
+            if self.token.is_ident_named("and") {
+                e.help("Use `&&` instead of `and` for the boolean operator");
+            }
+            if self.token.is_ident_named("or") {
+                e.help("Use `||` instead of `or` for the boolean operator");
+            }
+
             // Check to see if the user has written something like
             //
             //    if (cond)