about summary refs log tree commit diff
path: root/src/librustc_interface/interface.rs
diff options
context:
space:
mode:
authorMazdak Farrokhzad <twingoow@gmail.com>2019-11-06 03:28:11 +0100
committerGitHub <noreply@github.com>2019-11-06 03:28:11 +0100
commitf5c54896b9ff6bd62ffd3c8b9d2b2c4e7461d380 (patch)
tree54e565376f1c1353187e785851d01369c059e386 /src/librustc_interface/interface.rs
parente5da1a12e745e0d92cfae421673faac4fd5e4069 (diff)
parentd06a4ded13b948a6a5b546514ccc7009097f145a (diff)
downloadrust-f5c54896b9ff6bd62ffd3c8b9d2b2c4e7461d380.tar.gz
rust-f5c54896b9ff6bd62ffd3c8b9d2b2c4e7461d380.zip
Rollup merge of #66068 - euclio:null-emitter, r=estebank
use silent emitter for rustdoc highlighting pass

Partially addresses #63284.
Diffstat (limited to 'src/librustc_interface/interface.rs')
-rw-r--r--src/librustc_interface/interface.rs14
1 files changed, 2 insertions, 12 deletions
diff --git a/src/librustc_interface/interface.rs b/src/librustc_interface/interface.rs
index e014e4ed0fd..4e4d6d982fb 100644
--- a/src/librustc_interface/interface.rs
+++ b/src/librustc_interface/interface.rs
@@ -17,10 +17,9 @@ use std::sync::{Arc, Mutex};
 use syntax::{self, parse};
 use syntax::ast::{self, MetaItemKind};
 use syntax::parse::token;
-use syntax::source_map::{FileName, FilePathMapping, FileLoader, SourceMap};
+use syntax::source_map::{FileName, FileLoader, SourceMap};
 use syntax::sess::ParseSess;
 use syntax_pos::edition;
-use rustc_errors::{Diagnostic, emitter::Emitter, Handler, SourceMapperDyn};
 
 pub type Result<T> = result::Result<T, ErrorReported>;
 
@@ -63,18 +62,9 @@ impl Compiler {
 
 /// Converts strings provided as `--cfg [cfgspec]` into a `crate_cfg`.
 pub fn parse_cfgspecs(cfgspecs: Vec<String>) -> FxHashSet<(String, Option<String>)> {
-    struct NullEmitter;
-    impl Emitter for NullEmitter {
-        fn emit_diagnostic(&mut self, _: &Diagnostic) {}
-        fn source_map(&self) -> Option<&Lrc<SourceMapperDyn>> { None }
-    }
-
     syntax::with_default_globals(move || {
         let cfg = cfgspecs.into_iter().map(|s| {
-
-            let cm = Lrc::new(SourceMap::new(FilePathMapping::empty()));
-            let handler = Handler::with_emitter(false, None, Box::new(NullEmitter));
-            let sess = ParseSess::with_span_handler(handler, cm);
+            let sess = ParseSess::with_silent_emitter();
             let filename = FileName::cfg_spec_source_code(&s);
             let mut parser = parse::new_parser_from_source_str(&sess, filename, s.to_string());