diff options
| author | bors <bors@rust-lang.org> | 2019-09-23 06:38:23 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2019-09-23 06:38:23 +0000 |
| commit | 66bf391c3aabfc77f5f7139fc9e6944f995d574e (patch) | |
| tree | 196ef2334e2f7787737af02f2e78ed53c10fb5a8 /src/libsyntax/parse/diagnostics.rs | |
| parent | b6716a1cdd7ad8eab93c9e25e7832a3c0f744d64 (diff) | |
| parent | 4cc5aaada2f8ffd444a7fbb10394b83ba3156525 (diff) | |
| download | rust-66bf391c3aabfc77f5f7139fc9e6944f995d574e.tar.gz rust-66bf391c3aabfc77f5f7139fc9e6944f995d574e.zip | |
Auto merge of #64272 - Mark-Simulacrum:parallel-handler, r=estebank
Refactor librustc_errors::Handler API This should be reviewed by-commit. The last commit moves all fields into an inner struct behind a single lock; this is done to prevent possible deadlocks in a multi-threaded compiler, as well as inconsistent state observation.
Diffstat (limited to 'src/libsyntax/parse/diagnostics.rs')
| -rw-r--r-- | src/libsyntax/parse/diagnostics.rs | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/src/libsyntax/parse/diagnostics.rs b/src/libsyntax/parse/diagnostics.rs index 2d7f4f71ca4..59de5f14123 100644 --- a/src/libsyntax/parse/diagnostics.rs +++ b/src/libsyntax/parse/diagnostics.rs @@ -197,10 +197,6 @@ impl<'a> Parser<'a> { self.sess.span_diagnostic.span_bug(sp, m) } - crate fn cancel(&self, err: &mut DiagnosticBuilder<'_>) { - self.sess.span_diagnostic.cancel(err) - } - crate fn diagnostic(&self) -> &'a errors::Handler { &self.sess.span_diagnostic } @@ -426,15 +422,13 @@ impl<'a> Parser<'a> { /// Eats and discards tokens until one of `kets` is encountered. Respects token trees, /// passes through any errors encountered. Used for error recovery. crate fn eat_to_tokens(&mut self, kets: &[&TokenKind]) { - let handler = self.diagnostic(); - if let Err(ref mut err) = self.parse_seq_to_before_tokens( kets, SeqSep::none(), TokenExpectType::Expect, |p| Ok(p.parse_token_tree()), ) { - handler.cancel(err); + err.cancel(); } } |
