diff options
| author | Brian Anderson <banderson@mozilla.com> | 2015-01-16 15:54:58 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2015-01-20 11:27:14 -0800 |
| commit | 953d6dfd7e1b1d5c5b17314b6e3bdec15d8e7a01 (patch) | |
| tree | 9484471680b6a961392df1120297ed868795f77b /src/librustc_driver | |
| parent | a0f86de49748b472d4d189d9688b0d856c000914 (diff) | |
| download | rust-953d6dfd7e1b1d5c5b17314b6e3bdec15d8e7a01.tar.gz rust-953d6dfd7e1b1d5c5b17314b6e3bdec15d8e7a01.zip | |
Make error code registration work again. #19624
Diffstat (limited to 'src/librustc_driver')
| -rw-r--r-- | src/librustc_driver/lib.rs | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/librustc_driver/lib.rs b/src/librustc_driver/lib.rs index 50ff4546c37..f8e889fc711 100644 --- a/src/librustc_driver/lib.rs +++ b/src/librustc_driver/lib.rs @@ -61,7 +61,6 @@ use rustc::lint::Lint; use rustc::lint; use rustc::metadata; use rustc::metadata::creader::CrateOrString::Str; -use rustc::DIAGNOSTICS; use rustc::util::common::time; use std::cmp::Ordering::Equal; @@ -98,7 +97,7 @@ fn run_compiler(args: &[String]) { None => return }; - let descriptions = diagnostics::registry::Registry::new(&DIAGNOSTICS); + let descriptions = diagnostics_registry(); match matches.opt_str("explain") { Some(ref code) => { match descriptions.find_description(&code[]) { @@ -659,8 +658,20 @@ pub fn monitor<F:FnOnce()+Send>(f: F) { } } +pub fn diagnostics_registry() -> diagnostics::registry::Registry { + use syntax::diagnostics::registry::Registry; + + let all_errors = Vec::new() + + rustc::diagnostics::DIAGNOSTICS.as_slice() + + rustc_typeck::diagnostics::DIAGNOSTICS.as_slice() + + rustc_resolve::diagnostics::DIAGNOSTICS.as_slice(); + + Registry::new(&*all_errors) +} + pub fn main() { let args = std::os::args(); let result = run(args); std::os::set_exit_status(result); } + |
