about summary refs log tree commit diff
path: root/src/libsyntax/parse/parser.rs
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2019-05-21 23:16:46 -0700
committerEsteban Küber <esteban@kuber.com.ar>2019-05-24 11:50:21 -0700
commitda57ac38a669573ab693546775eb3ee5dc5b3fc4 (patch)
treefb2a898b18982a059ac94502dcb3263c3345da9d /src/libsyntax/parse/parser.rs
parenta2f853a69108faab4d45a55cc4f6633a4a517c73 (diff)
downloadrust-da57ac38a669573ab693546775eb3ee5dc5b3fc4.tar.gz
rust-da57ac38a669573ab693546775eb3ee5dc5b3fc4.zip
Move diagnostic logic out of parser
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
-rw-r--r--src/libsyntax/parse/parser.rs20
1 files changed, 1 insertions, 19 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 77b41aaa117..56951ae0801 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -2601,25 +2601,7 @@ impl<'a> Parser<'a> {
                         }
                         Err(mut err) => {
                             self.cancel(&mut err);
-                            let (span, msg) = match (&self.token, self.subparser_name) {
-                                (&token::Token::Eof, Some(origin)) => {
-                                    let sp = self.sess.source_map().next_point(self.span);
-                                    (sp, format!( "expected expression, found end of {}", origin))
-                                }
-                                _ => (self.span, format!(
-                                    "expected expression, found {}",
-                                    self.this_token_descr(),
-                                )),
-                            };
-                            let mut err = self.struct_span_err(span, &msg);
-                            let sp = self.sess.source_map().start_point(self.span);
-                            if let Some(sp) = self.sess.ambiguous_block_expr_parse.borrow()
-                                .get(&sp)
-                            {
-                                self.sess.expr_parentheses_needed(&mut err, *sp, None);
-                            }
-                            err.span_label(span, "expected expression");
-                            return Err(err);
+                            return Err(self.expected_expression_found());
                         }
                     }
                 }