about summary refs log tree commit diff
path: root/src/libsyntax
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2019-03-03 14:11:41 -0800
committerEsteban Küber <esteban@kuber.com.ar>2019-03-06 18:46:11 -0800
commitf156d9220703d99709be32ea1be0be0d44535114 (patch)
tree487ecba2196dc1794a3d6936bf20b377f8568493 /src/libsyntax
parentac6cc2d6b0aad0b1cc97f1db6d8e9d4f117eca95 (diff)
downloadrust-f156d9220703d99709be32ea1be0be0d44535114.tar.gz
rust-f156d9220703d99709be32ea1be0be0d44535114.zip
Always emit mismatched delim errors, never panic
Diffstat (limited to 'src/libsyntax')
-rw-r--r--src/libsyntax/parse/parser.rs5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 348c26d2044..860964a736f 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -262,7 +262,8 @@ pub struct Parser<'a> {
 impl<'a> Drop for Parser<'a> {
     fn drop(&mut self) {
         if !self.unclosed_delims.is_empty() {
-            panic!("unclosed delimiter errors not emitted");
+            let diag = self.diagnostic();
+            emit_unclosed_delims(&mut self.unclosed_delims, diag);
         }
     }
 }
@@ -8567,8 +8568,6 @@ impl<'a> Parser<'a> {
             module: self.parse_mod_items(&token::Eof, lo)?,
             span: lo.to(self.span),
         });
-        let diag = self.diagnostic();
-        emit_unclosed_delims(&mut self.unclosed_delims, diag);
         krate
     }