We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 9d151a7 commit db8a9a9Copy full SHA for db8a9a9
src/libsyntax/errors/mod.rs
@@ -20,6 +20,7 @@ use errors::emitter::{Emitter, EmitterWriter};
20
use std::cell::{RefCell, Cell};
21
use std::{error, fmt};
22
use std::rc::Rc;
23
+use std::thread::panicking;
24
use term;
25
26
pub mod emitter;
@@ -352,7 +353,7 @@ impl<'a> fmt::Debug for DiagnosticBuilder<'a> {
352
353
/// we emit a bug.
354
impl<'a> Drop for DiagnosticBuilder<'a> {
355
fn drop(&mut self) {
- if !self.cancelled() {
356
+ if !panicking() && !self.cancelled() {
357
self.emitter.borrow_mut().emit(&MultiSpan::new(),
358
"Error constructed but not emitted",
359
None,
0 commit comments