Fixes fmt & SessionDiagnostic structs
This commit is contained in:
parent
dbe39d835e
commit
e7ded9246c
@ -550,11 +550,7 @@ fn handle_explain(registry: Registry, code: &str, output: ErrorOutputType) {
|
||||
|
||||
fn show_content_with_pager(content: &str) {
|
||||
let pager_name = env::var_os("PAGER").unwrap_or_else(|| {
|
||||
if cfg!(windows) {
|
||||
OsString::from("more.com")
|
||||
} else {
|
||||
OsString::from("less")
|
||||
}
|
||||
if cfg!(windows) { OsString::from("more.com") } else { OsString::from("less") }
|
||||
});
|
||||
|
||||
let mut fallback_to_println = false;
|
||||
@ -590,24 +586,18 @@ pub fn try_process_rlink(sess: &Session, compiler: &interface::Compiler) -> Comp
|
||||
sess.init_crate_types(collect_crate_types(sess, &[]));
|
||||
let outputs = compiler.build_output_filenames(sess, &[]);
|
||||
let rlink_data = fs::read(file).unwrap_or_else(|err| {
|
||||
sess.fatal(RlinkUnableToRead {
|
||||
span: Default::default(),
|
||||
error_message: err.to_string(),
|
||||
});
|
||||
sess.emit_fatal(RlinkUnableToRead { error_message: err.to_string() });
|
||||
});
|
||||
let codegen_results = match CodegenResults::deserialize_rlink(rlink_data) {
|
||||
Ok(codegen) => codegen,
|
||||
Err(error) => {
|
||||
sess.fatal(RlinkUnableToDeserialize {
|
||||
span: Default::default(),
|
||||
error_message: error.to_string(),
|
||||
});
|
||||
sess.emit_fatal(RlinkUnableToDeserialize { error_message: error.to_string() });
|
||||
}
|
||||
};
|
||||
let result = compiler.codegen_backend().link(sess, codegen_results, &outputs);
|
||||
abort_on_err(result, sess);
|
||||
} else {
|
||||
sess.fatal(RlinkNotAFile { span: Default::default() })
|
||||
sess.emit_fatal(RlinkNotAFile {})
|
||||
}
|
||||
Compilation::Stop
|
||||
} else {
|
||||
@ -1131,11 +1121,7 @@ fn extra_compiler_flags() -> Option<(Vec<String>, bool)> {
|
||||
}
|
||||
}
|
||||
|
||||
if !result.is_empty() {
|
||||
Some((result, excluded_cargo_defaults))
|
||||
} else {
|
||||
None
|
||||
}
|
||||
if !result.is_empty() { Some((result, excluded_cargo_defaults)) } else { None }
|
||||
}
|
||||
|
||||
/// Runs a closure and catches unwinds triggered by fatal errors.
|
||||
|
@ -1,25 +1,17 @@
|
||||
use rustc_macros::SessionDiagnostic;
|
||||
use rustc_span::Span;
|
||||
|
||||
#[derive(SessionDiagnostic)]
|
||||
#[error(driver::rlink_unable_to_read)]
|
||||
#[diag(driver::rlink_unable_to_read)]
|
||||
pub(crate) struct RlinkUnableToRead {
|
||||
#[primary_span]
|
||||
pub span: Span,
|
||||
pub error_message: String,
|
||||
}
|
||||
|
||||
#[derive(SessionDiagnostic)]
|
||||
#[error(driver::rlink_unable_to_deserialize)]
|
||||
#[diag(driver::rlink_unable_to_deserialize)]
|
||||
pub(crate) struct RlinkUnableToDeserialize {
|
||||
#[primary_span]
|
||||
pub span: Span,
|
||||
pub error_message: String,
|
||||
}
|
||||
|
||||
#[derive(SessionDiagnostic)]
|
||||
#[error(driver::rlink_no_a_file)]
|
||||
pub(crate) struct RlinkNotAFile {
|
||||
#[primary_span]
|
||||
pub span: Span,
|
||||
}
|
||||
#[diag(driver::rlink_no_a_file)]
|
||||
pub(crate) struct RlinkNotAFile {}
|
||||
|
Loading…
x
Reference in New Issue
Block a user